bundle2: add a way to add parts during a `getbundle` request
authorPierre-Yves David <pierre-yves.david@fb.com>
Thu, 17 Apr 2014 17:32:34 -0400
changeset 21158 8f6530b62177
parent 21157 60ad2ea5b106
child 21159 024f38f6d5f6
bundle2: add a way to add parts during a `getbundle` request We add a hook function to let extensions add parts to the bundle.
mercurial/exchange.py
--- a/mercurial/exchange.py	Thu Apr 17 17:25:50 2014 -0400
+++ b/mercurial/exchange.py	Thu Apr 17 17:32:34 2014 -0400
@@ -691,8 +691,15 @@
     bundler = bundle2.bundle20(repo.ui, b2caps)
     part = bundle2.bundlepart('b2x:changegroup', data=cg.getchunks())
     bundler.addpart(part)
+    _getbundleextrapart(bundler, repo, source, heads=None, common=None,
+                        bundlecaps=None, **kwargs)
     return util.chunkbuffer(bundler.getchunks())
 
+def _getbundleextrapart(bundler, repo, source, heads=None, common=None,
+                        bundlecaps=None, **kwargs):
+    """hook function to let extensions add parts to the requested bundle"""
+    pass
+
 class PushRaced(RuntimeError):
     """An exception raised during unbundling that indicate a push race"""