# HG changeset patch # User Gregory Szorc # Date 1533762933 25200 # Node ID fcdab6629dde81bf75375b9b61b41e854bef9081 # Parent 9e8eb2b444e5ea815ffe18838e84710f83f5cc4d changegroup: emit delta group close chunk outside of deltagroup() I want to make deltagroup() emit data structures rather than serialized deltas. Upcoming commits will demonstrate why. Differential Revision: https://phab.mercurial-scm.org/D4207 diff -r 9e8eb2b444e5 -r fcdab6629dde mercurial/changegroup.py --- a/mercurial/changegroup.py Wed Aug 08 14:19:02 2018 -0700 +++ b/mercurial/changegroup.py Wed Aug 08 14:15:33 2018 -0700 @@ -700,7 +700,6 @@ """ # if we don't have any revisions touched by these changesets, bail if len(revs) == 0: - yield closechunk() return cl = repo.changelog @@ -753,8 +752,6 @@ if progress: progress.complete() - yield closechunk() - class cgpacker(object): def __init__(self, repo, filematcher, version, allowreorder, deltaparentfn, builddeltaheader, manifestsend, @@ -839,6 +836,10 @@ size += len(chunk) yield chunk + close = closechunk() + size += len(close) + yield closechunk() + self._verbosenote(_('%8.i (changelog)\n') % size) clrevorder = clstate['clrevorder'] @@ -1067,6 +1068,10 @@ size += len(chunk) yield chunk + close = closechunk() + size += len(close) + yield close + self._verbosenote(_('%8.i (manifests)\n') % size) yield self._manifestsend @@ -1165,6 +1170,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()