D4092: changegroup: inline _packellipsischangegroup
This revision was automatically updated to reflect the committed changes. Closed by commit rHG245c58952298: changegroup: inline _packellipsischangegroup (authored by indygreg, committed by ). REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D4092?vs=9854=9968 REVISION DETAIL https://phab.mercurial-scm.org/D4092 AFFECTED FILES hgext/narrow/narrowbundle2.py mercurial/changegroup.py CHANGE DETAILS diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py --- a/mercurial/changegroup.py +++ b/mercurial/changegroup.py @@ -1418,18 +1418,3 @@ (f, hex(n))) return revisions, files - -def _packellipsischangegroup(repo, common, match, relevant_nodes, - ellipsisroots, visitnodes, depth, source, version): -# We wrap cg1packer.revchunk, using a side channel to pass -# relevant_nodes into that area. Then if linknode isn't in the -# set, we know we have an ellipsis node and we should defer -# sending that node's data. We override close() to detect -# pending ellipsis nodes and flush them. -packer = getbundler(version, repo, filematcher=match, -ellipses=True, -shallow=depth is not None, -ellipsisroots=ellipsisroots, -fullnodes=relevant_nodes) - -return packer.generate(common, visitnodes, False, source) diff --git a/hgext/narrow/narrowbundle2.py b/hgext/narrow/narrowbundle2.py --- a/hgext/narrow/narrowbundle2.py +++ b/hgext/narrow/narrowbundle2.py @@ -116,10 +116,15 @@ newvisit, newfull, newellipsis = exchange._computeellipsis( repo, set(), common, known, newmatch) if newvisit: -cg = changegroup._packellipsischangegroup( -repo, common, newmatch, newfull, newellipsis, -newvisit, depth, source, version) -part = bundler.newpart('changegroup', data=cg) +packer = changegroup.getbundler(version, repo, +filematcher=newmatch, +ellipses=True, +shallow=depth is not None, +ellipsisroots=newellipsis, +fullnodes=newfull) +cgdata = packer.generate(common, newvisit, False, source) + +part = bundler.newpart('changegroup', data=cgdata) part.addparam('version', version) if 'treemanifest' in repo.requirements: part.addparam('treemanifest', '1') @@ -129,10 +134,15 @@ repo.ui.debug('Found %d relevant revs\n' % len(relevant_nodes)) if visitnodes: -cg = changegroup._packellipsischangegroup( -repo, common, newmatch, relevant_nodes, ellipsisroots, -visitnodes, depth, source, version) -part = bundler.newpart('changegroup', data=cg) +packer = changegroup.getbundler(version, repo, +filematcher=newmatch, +ellipses=True, +shallow=depth is not None, +ellipsisroots=ellipsisroots, +fullnodes=relevant_nodes) +cgdata = packer.generate(common, visitnodes, False, source) + +part = bundler.newpart('changegroup', data=cgdata) part.addparam('version', version) if 'treemanifest' in repo.requirements: part.addparam('treemanifest', '1') To: indygreg, durin42, #hg-reviewers Cc: mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
D4092: changegroup: inline _packellipsischangegroup
indygreg created this revision. Herald added a reviewer: durin42. Herald added a subscriber: mercurial-devel. Herald added a reviewer: hg-reviewers. REVISION SUMMARY It now does nothing special. The logic is simple enough to inline in the 2 callers in narrow that need it. The changegroup generation APIs could probably be a bit simpler. But that's for another time. REPOSITORY rHG Mercurial REVISION DETAIL https://phab.mercurial-scm.org/D4092 AFFECTED FILES hgext/narrow/narrowbundle2.py mercurial/changegroup.py CHANGE DETAILS diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py --- a/mercurial/changegroup.py +++ b/mercurial/changegroup.py @@ -1421,18 +1421,3 @@ (f, hex(n))) return revisions, files - -def _packellipsischangegroup(repo, common, match, relevant_nodes, - ellipsisroots, visitnodes, depth, source, version): -# We wrap cg1packer.revchunk, using a side channel to pass -# relevant_nodes into that area. Then if linknode isn't in the -# set, we know we have an ellipsis node and we should defer -# sending that node's data. We override close() to detect -# pending ellipsis nodes and flush them. -packer = getbundler(version, repo, filematcher=match, -ellipses=True, -shallow=depth is not None, -ellipsisroots=ellipsisroots, -fullnodes=relevant_nodes) - -return packer.generate(common, visitnodes, False, source) diff --git a/hgext/narrow/narrowbundle2.py b/hgext/narrow/narrowbundle2.py --- a/hgext/narrow/narrowbundle2.py +++ b/hgext/narrow/narrowbundle2.py @@ -115,10 +115,15 @@ newvisit, newfull, newellipsis = exchange._computeellipsis( repo, set(), common, known, newmatch) if newvisit: -cg = changegroup._packellipsischangegroup( -repo, common, newmatch, newfull, newellipsis, -newvisit, depth, source, version) -part = bundler.newpart('changegroup', data=cg) +packer = changegroup.getbundler(version, repo, +filematcher=newmatch, +ellipses=True, +shallow=depth is not None, +ellipsisroots=newellipsis, +fullnodes=newfull) +cgdata = packer.generate(common, newvisit, False, source) + +part = bundler.newpart('changegroup', data=cgdata) part.addparam('version', version) if 'treemanifest' in repo.requirements: part.addparam('treemanifest', '1') @@ -128,10 +133,15 @@ repo.ui.debug('Found %d relevant revs\n' % len(relevant_nodes)) if visitnodes: -cg = changegroup._packellipsischangegroup( -repo, common, newmatch, relevant_nodes, ellipsisroots, -visitnodes, depth, source, version) -part = bundler.newpart('changegroup', data=cg) +packer = changegroup.getbundler(version, repo, +filematcher=newmatch, +ellipses=True, +shallow=depth is not None, +ellipsisroots=ellipsisroots, +fullnodes=relevant_nodes) +cgdata = packer.generate(common, visitnodes, False, source) + +part = bundler.newpart('changegroup', data=cgdata) part.addparam('version', version) if 'treemanifest' in repo.requirements: part.addparam('treemanifest', '1') To: indygreg, durin42, #hg-reviewers Cc: mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel