Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/debugcommands.py @ 39192:5b32b3c618b2
setdiscovery: don't use dagutil for rev -> node conversions
We don't need to use dagutil to perform a simple rev -> node
conversion.
I haven't measured, but the new code is likely faster, as we
avoid extra function calls and avoid some attribute lookups.
Differential Revision: https://phab.mercurial-scm.org/D4304
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 16 Aug 2018 19:39:47 +0000 |
parents | 9d6fab487c13 |
children | 858a12846f4f |
comparison
equal
deleted
inserted
replaced
39191:b0c73866c9fb | 39192:5b32b3c618b2 |
---|---|
789 force=True) | 789 force=True) |
790 common = set(common) | 790 common = set(common) |
791 if not opts.get('nonheads'): | 791 if not opts.get('nonheads'): |
792 ui.write(("unpruned common: %s\n") % | 792 ui.write(("unpruned common: %s\n") % |
793 " ".join(sorted(short(n) for n in common))) | 793 " ".join(sorted(short(n) for n in common))) |
794 dag = dagutil.revlogdag(repo.changelog) | 794 cl = repo.changelog |
795 clnode = cl.node | |
796 dag = dagutil.revlogdag(cl) | |
795 all = dag.ancestorset(dag.internalizeall(common)) | 797 all = dag.ancestorset(dag.internalizeall(common)) |
796 common = dag.externalizeall(dag.headsetofconnecteds(all)) | 798 common = {clnode(r) for r in dag.headsetofconnecteds(all)} |
797 else: | 799 else: |
798 nodes = None | 800 nodes = None |
799 if pushedrevs: | 801 if pushedrevs: |
800 revs = scmutil.revrange(repo, pushedrevs) | 802 revs = scmutil.revrange(repo, pushedrevs) |
801 nodes = [repo[r].node() for r in revs] | 803 nodes = [repo[r].node() for r in revs] |