narrow: pass the bundle to bundle2.widen_bundle() instead of generating there
authorPulkit Goyal <7895pulkit@gmail.com>
Thu, 23 May 2019 03:03:36 +0530
changeset 42417 a97b12f726e4
parent 42416 8381b7067f17
child 42418 9803323048b6
narrow: pass the bundle to bundle2.widen_bundle() instead of generating there This will make the code in narrowwirepeer.py more better for further refactoring. Differential Revision: https://phab.mercurial-scm.org/D6438
hgext/narrow/narrowwirepeer.py
mercurial/bundle2.py
--- a/hgext/narrow/narrowwirepeer.py	Thu May 23 02:48:25 2019 +0530
+++ b/hgext/narrow/narrowwirepeer.py	Thu May 23 03:03:36 2019 +0530
@@ -80,15 +80,15 @@
             ellipses = bool(ellipses)
         cgversion = cgversion
 
+        bundler = bundle2.bundle20(repo.ui)
         if not ellipses:
             newmatch = narrowspec.match(repo.root, include=newincludes,
                                         exclude=newexcludes)
             oldmatch = narrowspec.match(repo.root, include=oldincludes,
                                         exclude=oldexcludes)
-            bundler = bundle2.widen_bundle(repo, oldmatch, newmatch, common,
-                                           known, cgversion, ellipses)
+            bundle2.widen_bundle(bundler, repo, oldmatch, newmatch, common,
+                                 known, cgversion, ellipses)
         else:
-            bundler = bundle2.bundle20(repo.ui)
             narrowbundle2.generateellipsesbundle2(bundler, repo, oldincludes,
                     oldexcludes, newincludes, newexcludes, cgversion, common,
                     list(common), known, None)
--- a/mercurial/bundle2.py	Thu May 23 02:48:25 2019 +0530
+++ b/mercurial/bundle2.py	Thu May 23 03:03:36 2019 +0530
@@ -2298,10 +2298,11 @@
     streamclone.applybundlev2(repo, part, filecount, bytecount,
                               requirements)
 
-def widen_bundle(repo, oldmatcher, newmatcher, common, known, cgversion,
-                 ellipses):
+def widen_bundle(bundler, repo, oldmatcher, newmatcher, common,
+                 known, cgversion, ellipses):
     """generates bundle2 for widening a narrow clone
 
+    bundler is the bundle to which data should be added
     repo is the localrepository instance
     oldmatcher matches what the client already has
     newmatcher matches what the client needs (including what it already has)
@@ -2312,7 +2313,6 @@
 
     returns bundle2 of the data required for extending
     """
-    bundler = bundle20(repo.ui)
     commonnodes = set()
     cl = repo.changelog
     for r in repo.revs("::%ln", common):