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

login
register
mail settings
Submitter Pierre-Yves David
Date Nov. 4, 2014, 12:41 p.m.
Message ID <5aaadfe0a8d2f8d5f563.1415104917@marginatus.alto.octopoid.net>
Download mbox | patch
Permalink /patch/6554/
State Accepted
Headers show

Comments

Pierre-Yves David - Nov. 4, 2014, 12:41 p.m.
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david@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.

Patch

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")