Comments
Patch
@@ -1432,9 +1432,9 @@
if self._isgooddelta(candidatedelta, textlen):
delta = candidatedelta
if delta is None and self._generaldelta:
- parents = [p1r, p2r]
# exclude already lazy tested base if any
- parents = [p for p in parents if p not in tested]
+ parents = [p for p in (p1r, p2r)
+ if p != nullrev and p not in tested]
if parents and not self._aggressivemergedeltas:
# Pick whichever parent is closer to us (to minimize the
# chance of having to build a fulltext).
@@ -266,13 +266,13 @@
packed1 is produced properly
$ hg -R test debugcreatestreamclonebundle packed.hg
- writing 2667 bytes for 6 files
+ writing 2663 bytes for 6 files
bundle requirements: generaldelta, revlogv1
$ f -B 64 --size --sha1 --hexdump packed.hg
- packed.hg: size=2830, sha1=c28255110a88ffa52ddc44985cad295b1ab349bc
+ packed.hg: size=2826, sha1=e139f97692a142b19cdcff64a69697d5307ce6d4
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 06 00 00 |HGS1UN..........|
- 0010: 00 00 00 00 0a 6b 00 16 67 65 6e 65 72 61 6c 64 |.....k..generald|
+ 0010: 00 00 00 00 0a 67 00 16 67 65 6e 65 72 61 6c 64 |.....g..generald|
0020: 65 6c 74 61 2c 72 65 76 6c 6f 67 76 31 00 64 61 |elta,revlogv1.da|
0030: 74 61 2f 61 64 69 66 66 65 72 65 6e 74 66 69 6c |ta/adifferentfil|
@@ -133,8 +133,8 @@
$ hg debugindex -m
rev offset length delta linkrev nodeid p1 p2
0 0 59 -1 0 8dde941edb6e 000000000000 000000000000
- 1 59 59 -1 1 315c023f341d 000000000000 000000000000
- 2 118 65 1 2 2ab389a983eb 315c023f341d 8dde941edb6e
+ 1 59 61 0 1 315c023f341d 000000000000 000000000000
+ 2 120 65 1 2 2ab389a983eb 315c023f341d 8dde941edb6e
$ hg strip -q -r . --config extensions.strip=
@@ -145,8 +145,8 @@
$ hg debugindex -m
rev offset length delta linkrev nodeid p1 p2
0 0 59 -1 0 8dde941edb6e 000000000000 000000000000
- 1 59 59 -1 1 315c023f341d 000000000000 000000000000
- 2 118 62 0 2 2ab389a983eb 315c023f341d 8dde941edb6e
+ 1 59 61 0 1 315c023f341d 000000000000 000000000000
+ 2 120 62 0 2 2ab389a983eb 315c023f341d 8dde941edb6e
Test that strip bundle use bundle2
$ hg --config extensions.strip= strip .
@@ -276,14 +276,14 @@
$ hg debugindex .hg/store/meta/dir1/00manifest.i
rev offset length delta linkrev nodeid p1 p2
0 0 125 -1 4 63c9c0557d24 000000000000 000000000000
- 1 125 131 -1 5 23d12a1f6e0e 000000000000 000000000000
+ 1 125 109 0 5 23d12a1f6e0e 000000000000 000000000000
$ echo 2 > dir1/a
$ hg --config experimental.treemanifest=False ci -qm 'modify dir1/a'
$ hg debugindex .hg/store/meta/dir1/00manifest.i
rev offset length delta linkrev nodeid p1 p2
0 0 125 -1 4 63c9c0557d24 000000000000 000000000000
- 1 125 131 -1 5 23d12a1f6e0e 000000000000 000000000000
- 2 256 55 1 6 3cb2d87b4250 23d12a1f6e0e 000000000000
+ 1 125 109 0 5 23d12a1f6e0e 000000000000 000000000000
+ 2 234 55 1 6 3cb2d87b4250 23d12a1f6e0e 000000000000
Create deeper repo with tree manifests.