Revive commands.dispatch as a simple way to call hg from other pythons scripts.
This was already used by hg-ssh and others and is really convenient if you
just want a native equivalent of calling the command line version.
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2997,11 +2997,13 @@ norepo = ("clone init version help debug
" debugindex debugindexdot debugdate debuginstall")
optionalrepo = ("paths serve showconfig")
-def run():
+def dispatch(args):
try:
- u = ui.ui(traceback='--traceback' in sys.argv[1:])
+ u = ui.ui(traceback='--traceback' in args)
except util.Abort, inst:
sys.stderr.write(_("abort: %s\n") % inst)
return -1
- sys.exit(cmdutil.runcatch(u, sys.argv[1:]))
-
+ return cmdutil.runcatch(u, args)
+
+def run():
+ sys.exit(dispatch(sys.argv[1:]))