# HG changeset patch # User Boris Feld <boris.f...@octobus.net> # Date 1536333454 14400 # Fri Sep 07 11:17:34 2018 -0400 # Node ID 4c849d34990166b1246426533efa517733d8a7fe # Parent f79dc24022976ab6ba0a8f7183651e0e4d9877d5 # EXP-Topic sparse-snapshot # Available At https://bitbucket.org/octobus/mercurial-devel/ # hg pull https://bitbucket.org/octobus/mercurial-devel/ -r 4c849d349901 snapshot: turn _refinedgroups into a coroutine
We are now almost ready to start adding refining logic. diff --git a/mercurial/revlogutils/deltas.py b/mercurial/revlogutils/deltas.py --- a/mercurial/revlogutils/deltas.py +++ b/mercurial/revlogutils/deltas.py @@ -589,7 +589,7 @@ def _candidategroups(revlog, textlen, p1 tested = set([nullrev]) candidates = _refinedgroups(revlog, p1, p2, cachedelta) while True: - temptative = next(candidates) + temptative = candidates.send(good) if temptative is None: break group = [] @@ -618,8 +618,6 @@ def _candidategroups(revlog, textlen, p1 # impacting performances. Some bounding or slicing mecanism # would help to reduce this impact. good = yield tuple(group) - if good is not None: - break yield None def _findsnapshots(revlog, cache, start_rev): _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel