annotate mercurial/__main__.py @ 51578:718f28ea3af4

branchcache: add a "pure topological head" fast path In a narrow but actually quick common case, all topological heads are all on the same branch and all open. In this case, computing the branch map is very simple. We can quickly detect situation where this situation will not change. So we update the V3 format to be able to express this situation and upgrade the update code to detect we remains in that mode. The branch cache is populated with the actual value when the branch map is accessed, but the update_disk method can do the update without needing to populate it.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 07 Mar 2024 04:15:23 +0100
parents e7ef11b75fdc
children 1c5810ce737e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
50697
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
1 def run():
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
2 from . import demandimport
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
3
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
4 with demandimport.tracing.log('hg script'):
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
5 demandimport.enable()
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
6 from . import dispatch
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
7
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
8 dispatch.run()
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
9
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
10
50696
eb01d3a65ad8 library: enable runpy invocation on mercurial package
Jason R. Coombs <jaraco@jaraco.com>
parents:
diff changeset
11 if __name__ == '__main__':
50697
e7ef11b75fdc library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com>
parents: 50696
diff changeset
12 run()