equal
deleted
inserted
replaced
656 previous = good |
656 previous = good |
657 base = revlog.deltaparent(good) |
657 base = revlog.deltaparent(good) |
658 if base == nullrev: |
658 if base == nullrev: |
659 break |
659 break |
660 good = yield (base,) |
660 good = yield (base,) |
|
661 # refine snapshot up |
|
662 # |
|
663 # XXX the _findsnapshots call can be expensive and is "duplicated" with |
|
664 # the one done in `_rawgroups`. Once we start working on performance, |
|
665 # we should make the two logics share this computation. |
|
666 snapshots = collections.defaultdict(list) |
|
667 _findsnapshots(revlog, snapshots, good + 1) |
|
668 previous = None |
|
669 while good != previous: |
|
670 previous = good |
|
671 children = tuple(sorted(c for c in snapshots[good])) |
|
672 good = yield children |
|
673 |
661 # we have found nothing |
674 # we have found nothing |
662 yield None |
675 yield None |
663 |
676 |
664 def _rawgroups(revlog, p1, p2, cachedelta): |
677 def _rawgroups(revlog, p1, p2, cachedelta): |
665 """Provides group of revision to be tested as delta base |
678 """Provides group of revision to be tested as delta base |