mercurial/wireproto.py
changeset 36612 e89959970a08
parent 36611 6906547c8476
child 36613 6e585bca962e
--- a/mercurial/wireproto.py	Tue Feb 27 15:06:10 2018 -0800
+++ b/mercurial/wireproto.py	Tue Feb 27 15:23:04 2018 -0800
@@ -783,7 +783,7 @@
     """
     return bytesresponse(repo.vfs.tryread('clonebundles.manifest'))
 
-wireprotocaps = ['lookup', 'changegroupsubset', 'branchmap', 'pushkey',
+wireprotocaps = ['lookup', 'branchmap', 'pushkey',
                  'known', 'getbundle', 'unbundlehash', 'batch']
 
 def _capabilities(repo, proto):
@@ -798,6 +798,12 @@
     """
     # copy to prevent modification of the global list
     caps = list(wireprotocaps)
+
+    # Command of same name as capability isn't exposed to version 1 of
+    # transports. So conditionally add it.
+    if commands.commandavailable('changegroupsubset', proto):
+        caps.append('changegroupsubset')
+
     if streamclone.allowservergeneration(repo):
         if repo.ui.configbool('server', 'preferuncompressed'):
             caps.append('stream-preferred')