diff -r 167047ba3cfa -r 7a634b34fc91 mercurial/wireproto.py --- a/mercurial/wireproto.py Fri Mar 28 14:24:13 2014 -0700 +++ b/mercurial/wireproto.py Fri Mar 28 14:30:11 2014 -0700 @@ -471,6 +471,16 @@ % (cmd, ",".join(others))) return opts +# list of commands +commands = {} + +def wireprotocommand(name, args=''): + """decorator for wireprotocol command""" + def register(func): + commands[name] = (func, args) + return func + return register + def batch(repo, proto, cmds, others): repo = repo.filtered("served") res = [] @@ -770,7 +780,7 @@ fp.close() os.unlink(tempname) -commands = { +commands.update({ 'batch': (batch, 'cmds *'), 'between': (between, 'pairs'), 'branchmap': (branchmap, ''), @@ -788,4 +798,4 @@ 'pushkey': (pushkey, 'namespace key old new'), 'stream_out': (stream, ''), 'unbundle': (unbundle, 'heads'), -} +})