wireproto: extract capabilities list in outside the wireproto function
Before that it was over complicated to add capabilities from an extension.
This mimic was is done for capabilities in localrepo.
--- a/mercurial/wireproto.py Tue Mar 18 14:25:28 2014 -0500
+++ b/mercurial/wireproto.py Tue Mar 11 01:38:02 2014 -0700
@@ -414,9 +414,12 @@
r.append(encodelist(b) + "\n")
return "".join(r)
+
+wireprotocaps = ['lookup', 'changegroupsubset', 'branchmap', 'pushkey',
+ 'known', 'getbundle', 'unbundlehash', 'batch']
def capabilities(repo, proto):
- caps = ('lookup changegroupsubset branchmap pushkey known getbundle '
- 'unbundlehash batch').split()
+ # copy to prevent modification of the global list
+ caps = list(wireprotocaps)
if _allowstream(repo.ui):
if repo.ui.configbool('server', 'preferuncompressed', False):
caps.append('stream-preferred')