--- a/mercurial/cmdutil.py Sun May 04 22:16:56 2014 -0700
+++ b/mercurial/cmdutil.py Sun May 04 22:20:00 2014 -0700
@@ -2496,8 +2496,14 @@
The optionalrepo argument defines whether the command optionally requires
a local repository.
+
+ The inferrepo argument defines whether to try to find a repository from the
+ command line arguments. If True, arguments will be examined for potential
+ repository locations. See ``findrepo()``. If a repository is found, it
+ will be used.
"""
- def cmd(name, options=(), synopsis=None, norepo=False, optionalrepo=False):
+ def cmd(name, options=(), synopsis=None, norepo=False, optionalrepo=False,
+ inferrepo=False):
def decorator(func):
if synopsis:
table[name] = func, list(options), synopsis
@@ -2513,6 +2519,10 @@
import commands
commands.optionalrepo += ' %s' % ' '.join(parsealiases(name))
+ if inferrepo:
+ import commands
+ commands.inferrepo += ' %s' % ' '.join(parsealiases(name))
+
return func
return decorator