--- a/mercurial/wireproto.py Tue May 27 21:12:24 2014 -0700
+++ b/mercurial/wireproto.py Thu May 29 15:41:16 2014 -0700
@@ -619,9 +619,15 @@
opts = options('debugwireargs', ['three', 'four'], others)
return repo.debugwireargs(one, two, **opts)
+# List of options accepted by getbundle.
+#
+# Meant to be extended by extensions. It is the extension's responsibility to
+# ensure such options are properly processed in exchange.getbundle.
+gboptslist = ['heads', 'common', 'bundlecaps']
+
@wireprotocommand('getbundle', '*')
def getbundle(repo, proto, others):
- opts = options('getbundle', ['heads', 'common', 'bundlecaps'], others)
+ opts = options('getbundle', gboptslist, others)
for k, v in opts.iteritems():
if k in ('heads', 'common'):
opts[k] = decodelist(v)