diff mercurial/exchange.py @ 27751:a40e2f7fe49d

changegroup: hide packermap behind methods This is to prepare for hiding changegroup3 behind a config option.
author Martin von Zweigbergk <martinvonz@google.com>
date Tue, 12 Jan 2016 21:01:06 -0800
parents a0e783d26e81
children 4f4b80b3f2bf
line wrap: on
line diff
--- 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)