Mercurial > hg
comparison mercurial/changegroup.py @ 39181:0a934ee94f09
dagop: port revlogdag.linearize() to standalone function
The code should functionally be identical.
We also port the one consumer in changegroup to use the new
standalone function.
After this commit, dagutil is no longer used!
Differential Revision: https://phab.mercurial-scm.org/D4329
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Fri, 17 Aug 2018 21:21:50 +0000 |
parents | 0b5f534df82a |
children | 2646b8d66b7b |
comparison
equal
deleted
inserted
replaced
39180:8de526995844 | 39181:0a934ee94f09 |
---|---|
22 from .thirdparty import ( | 22 from .thirdparty import ( |
23 attr, | 23 attr, |
24 ) | 24 ) |
25 | 25 |
26 from . import ( | 26 from . import ( |
27 dagutil, | 27 dagop, |
28 error, | 28 error, |
29 match as matchmod, | 29 match as matchmod, |
30 mdiff, | 30 mdiff, |
31 phases, | 31 phases, |
32 pycompat, | 32 pycompat, |
585 def _sortnodesnormal(store, nodes, reorder): | 585 def _sortnodesnormal(store, nodes, reorder): |
586 """Sort nodes for changegroup generation and turn into revnums.""" | 586 """Sort nodes for changegroup generation and turn into revnums.""" |
587 # for generaldelta revlogs, we linearize the revs; this will both be | 587 # for generaldelta revlogs, we linearize the revs; this will both be |
588 # much quicker and generate a much smaller bundle | 588 # much quicker and generate a much smaller bundle |
589 if (store._generaldelta and reorder is None) or reorder: | 589 if (store._generaldelta and reorder is None) or reorder: |
590 dag = dagutil.revlogdag(store) | 590 revs = set(store.rev(n) for n in nodes) |
591 return dag.linearize(set(store.rev(n) for n in nodes)) | 591 return dagop.linearize(revs, store.parentrevs) |
592 else: | 592 else: |
593 return sorted([store.rev(n) for n in nodes]) | 593 return sorted([store.rev(n) for n in nodes]) |
594 | 594 |
595 def _sortnodesellipsis(store, nodes, cl, lookup): | 595 def _sortnodesellipsis(store, nodes, cl, lookup): |
596 """Sort nodes for changegroup generation and turn into revnums.""" | 596 """Sort nodes for changegroup generation and turn into revnums.""" |