mercurial/exchange.py
changeset 27751 a40e2f7fe49d
parent 27738 a0e783d26e81
child 27883 4f4b80b3f2bf
--- a/mercurial/exchange.py	Wed Jan 13 15:47:37 2016 -0600
+++ b/mercurial/exchange.py	Tue Jan 12 21:01:06 2016 -0800
@@ -653,7 +653,8 @@
         cg = changegroup.getlocalchangegroupraw(pushop.repo, 'push',
                                                 pushop.outgoing)
     else:
-        cgversions = [v for v in cgversions if v in changegroup.packermap]
+        cgversions = [v for v in cgversions
+                      if v in changegroup.supportedversions(pushop.repo)]
         if not cgversions:
             raise ValueError(_('no common changegroup version'))
         version = max(cgversions)
@@ -1505,7 +1506,8 @@
         cgversions = b2caps.get('changegroup')
         getcgkwargs = {}
         if cgversions:  # 3.1 and 3.2 ship with an empty value
-            cgversions = [v for v in cgversions if v in changegroup.packermap]
+            cgversions = [v for v in cgversions
+                          if v in changegroup.supportedversions(repo)]
             if not cgversions:
                 raise ValueError(_('no common changegroup version'))
             version = getcgkwargs['version'] = max(cgversions)