D4207: changegroup: emit delta group close chunk outside of deltagroup()
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Thu Aug 9 20:52:55 UTC 2018
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
I want to make deltagroup() emit data structures rather than
serialized deltas. Upcoming commits will demonstrate why.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D4207
AFFECTED FILES
mercurial/changegroup.py
CHANGE DETAILS
diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py
--- a/mercurial/changegroup.py
+++ b/mercurial/changegroup.py
@@ -701,7 +701,6 @@
"""
# if we don't have any revisions touched by these changesets, bail
if len(revs) == 0:
- yield closechunk()
return
cl = repo.changelog
@@ -754,8 +753,6 @@
if progress:
progress.complete()
- yield closechunk()
-
class cgpacker(object):
def __init__(self, repo, filematcher, version, allowreorder,
deltaparentfn, builddeltaheader, manifestsend,
@@ -840,6 +837,10 @@
size += len(chunk)
yield chunk
+ close = closechunk()
+ size += len(close)
+ yield closechunk()
+
self._verbosenote(_('%8.i (changelog)\n') % size)
clrevorder = clstate['clrevorder']
@@ -1068,6 +1069,10 @@
size += len(chunk)
yield chunk
+ close = closechunk()
+ size += len(close)
+ yield close
+
self._verbosenote(_('%8.i (manifests)\n') % size)
yield self._manifestsend
@@ -1166,6 +1171,11 @@
for chunk in it:
size += len(chunk)
yield chunk
+
+ close = closechunk()
+ size += len(close)
+ yield close
+
self._verbosenote(_('%8.i %s\n') % (size, fname))
progress.complete()
To: indygreg, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list