[PATCH 1 of 3] changegroup: add a "packermap" dictionary to track different packer version

Pierre-Yves David pierre-yves.david at ens-lyon.org
Tue Nov 4 06:41:57 CST 2014


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1411619046 25200
#      Wed Sep 24 21:24:06 2014 -0700
# Node ID 5aaadfe0a8d2f8d5f563565388785ef968245440
# Parent  30e0dcd7c5ffd99fb9c2474e9d73ca01a7d292fa
changegroup: add a "packermap" dictionary to track different packer version

We only have one right now "01" but we should get general delta in soon.
Bundle2 is expected to make use of this to advertise and select the right packer
to use on both side.

diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py
--- a/mercurial/changegroup.py
+++ b/mercurial/changegroup.py
@@ -431,10 +431,12 @@ class cg1packer(object):
         yield delta
     def builddeltaheader(self, node, p1n, p2n, basenode, linknode):
         # do nothing with basenode, it is implicitly the previous one in HG10
         return struct.pack(self.deltaheader, node, p1n, p2n, linknode)
 
+packermap = {'01': (cg1packer, cg1unpacker)}
+
 def _changegroupinfo(repo, nodes, source):
     if repo.ui.verbose or source == 'bundle':
         repo.ui.status(_("%d changesets found\n") % len(nodes))
     if repo.ui.debugflag:
         repo.ui.debug("list of changesets:\n")


More information about the Mercurial-devel mailing list