Mercurial > hg
annotate mercurial/cext/bdiff.pyi @ 50317:af776c3d5c3e stable
debugdeltachain: stop summing the same chain over and over
Before this patch, delta chain size was computed from scratch for each chain,
disregarding the fact very likely already computed the same of length-1 prefix
for another revisions.
We not cache delta chain size and shortcut the computation when we see them.
Just for my mercurial-devel clone, this move the computation from about 17.5
second to about 4.8 seconds.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 21 Mar 2023 15:44:38 +0000 |
parents | b8389533ba3a |
children |
rev | line source |
---|---|
46038
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 from typing import ( |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 List, |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 Tuple, |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 ) |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
5 |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
6 version: int |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 |
49596
b8389533ba3a
typing: fix a syntax error in mercurial/cext/bdiff.pyi
Matt Harbison <matt_harbison@yahoo.com>
parents:
46038
diff
changeset
|
8 def bdiff(a: bytes, b: bytes) -> bytes: ... |
46038
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
9 def blocks(a: bytes, b: bytes) -> List[Tuple[int, int, int, int]]: ... |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 def fixws(s: bytes, allws: bool) -> bytes: ... |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
11 def splitnewlines(text: bytes) -> List[bytes]: ... |
8dca9051a859
cext: add .pyi files for C extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 def xdiffblocks(a: bytes, b: bytes) -> List[Tuple[int, int, int, int]]: ... |