D6438: narrow: pass the bundle to bundle2.widen_bundle() instead of generating there

pulkit (Pulkit Goyal) phabricator at mercurial-scm.org
Wed May 22 21:48:14 UTC 2019


pulkit created this revision.
Herald added a reviewer: durin42.
Herald added a reviewer: martinvonz.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  This will make the code in narrowwirepeer.py more better for further
  refactoring.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D6438

AFFECTED FILES
  hgext/narrow/narrowwirepeer.py
  mercurial/bundle2.py

CHANGE DETAILS

diff --git a/mercurial/bundle2.py b/mercurial/bundle2.py
--- a/mercurial/bundle2.py
+++ b/mercurial/bundle2.py
@@ -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):
diff --git a/hgext/narrow/narrowwirepeer.py b/hgext/narrow/narrowwirepeer.py
--- a/hgext/narrow/narrowwirepeer.py
+++ b/hgext/narrow/narrowwirepeer.py
@@ -78,15 +78,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,
                     known, None, list(common))



To: pulkit, durin42, martinvonz, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list