evolve: store the obsmarkers to be deleted in evolvestate
Sometimes, we don't create a new node and obsolete one of the old node in favour
of an existing node. When user calls, `hg evolve --abort`, we need to strip that
obsmarker to go back in the same old state. The obsmarker created for new node
are stripped when the new nodes are stripped.
This patch start storing such obsmarkers in the evolvestate so that we can delete
them later if required. Right now we just store successsor and predecessor
information, we might need a better obsmarker serialization techinque in future
to make it more robust.
+ − Test for stable ordering capabilities
+ − =====================================
+ −
+ − $ . $ TESTDIR / testlib / pythonpath . sh
+ −
+ − $ cat << EOF >> $ HGRCPATH
+ − > [ extensions ]
+ − > hgext3rd . evolve =
+ − > [ ui ]
+ − > logtemplate = " {rev} {node|short} {desc} {tags} \n "
+ − > [ alias ]
+ − > showsort = debugstablesort -- template = " {node|short} \n " -- method branchpoint
+ − > EOF
+ −
+ − $ checktopo () {
+ − > seen = 'null' ;
+ − > for node in ` hg showsort -- rev "$1" ` ; do
+ − > echo "=== checking $node ===" ;
+ − > hg log -- rev "($seen) and $node::" ;
+ − > seen = "$ {seen} +$ {node} " ;
+ − > done ;
+ − > }
+ −
+ − $ cat << EOF >> random_rev . py
+ − > import random
+ − > import sys
+ − >
+ − > loop = int ( sys . argv [ 1 ])
+ − > var = int ( sys . argv [ 2 ])
+ − > for x in range ( loop ):
+ − > print ( x + random . randint ( 0 , var ))
+ − > EOF
+ −
+ − Check criss cross merge
+ − =======================
+ −
+ − $ hg init crisscross_A
+ − $ cd crisscross_A
+ − $ hg debugbuilddag '
+ − > ...:base # create some base
+ − > # criss cross #1: simple
+ − > +3:AbaseA # "A" branch for CC "A"
+ − > <base+2:AbaseB # "B" branch for CC "B"
+ − > <AbaseA/AbaseB:AmergeA
+ − > <AbaseB/AbaseA:AmergeB
+ − > <AmergeA/AmergeB:Afinal
+ − > # criss cross #2:multiple closes ones
+ − > .:BbaseA
+ − > <AmergeB:BbaseB
+ − > <BbaseA/BbaseB:BmergeA
+ − > <BbaseB/BbaseA:BmergeB
+ − > <BmergeA/BmergeB:BmergeC
+ − > <BmergeB/BmergeA:BmergeD
+ − > <BmergeC/BmergeD:Bfinal
+ − > # criss cross #2:many branches
+ − > <Bfinal.:CbaseA
+ − > <Bfinal+2:CbaseB
+ − > <Bfinal.:CbaseC
+ − > <Bfinal+5:CbaseD
+ − > <Bfinal.:CbaseE
+ − > <CbaseA/CbaseB+7:CmergeA
+ − > <CbaseA/CbaseC:CmergeB
+ − > <CbaseA/CbaseD.:CmergeC
+ − > <CbaseA/CbaseE:CmergeD
+ − > <CbaseB/CbaseA+2:CmergeE
+ − > <CbaseB/CbaseC:CmergeF
+ − > <CbaseB/CbaseD.:CmergeG
+ − > <CbaseB/CbaseE:CmergeH
+ − > <CbaseC/CbaseA.:CmergeI
+ − > <CbaseC/CbaseB:CmergeJ
+ − > <CbaseC/CbaseD+5:CmergeK
+ − > <CbaseC/CbaseE+2:CmergeL
+ − > <CbaseD/CbaseA:CmergeM
+ − > <CbaseD/CbaseB...:CmergeN
+ − > <CbaseD/CbaseC:CmergeO
+ − > <CbaseD/CbaseE:CmergeP
+ − > <CbaseE/CbaseA:CmergeQ
+ − > <CbaseE/CbaseB..:CmergeR
+ − > <CbaseE/CbaseC.:CmergeS
+ − > <CbaseE/CbaseD:CmergeT
+ − > <CmergeA/CmergeG:CmergeWA
+ − > <CmergeB/CmergeF:CmergeWB
+ − > <CmergeC/CmergeE:CmergeWC
+ − > <CmergeD/CmergeH:CmergeWD
+ − > <CmergeT/CmergeI:CmergeWE
+ − > <CmergeS/CmergeJ:CmergeWF
+ − > <CmergeR/CmergeK:CmergeWG
+ − > <CmergeQ/CmergeL:CmergeWH
+ − > <CmergeP/CmergeM:CmergeWI
+ − > <CmergeO/CmergeN:CmergeWJ
+ − > <CmergeO/CmergeN:CmergeWK
+ − > <CmergeWA/CmergeWG:CmergeXA
+ − > <CmergeWB/CmergeWH:CmergeXB
+ − > <CmergeWC/CmergeWI:CmergeXC
+ − > <CmergeWD/CmergeWJ:CmergeXD
+ − > <CmergeWE/CmergeWK:CmergeXE
+ − > <CmergeWF/CmergeWA:CmergeXF
+ − > <CmergeXA/CmergeXF:CmergeYA
+ − > <CmergeXB/CmergeXE:CmergeYB
+ − > <CmergeXC/CmergeXD:CmergeYC
+ − > <CmergeYA/CmergeYB:CmergeZA
+ − > <CmergeYC/CmergeYB:CmergeZB
+ − > <CmergeZA/CmergeZB:Cfinal
+ − > '
+ − $ hg log - G
+ − o 94 01 f771406cab r94 Cfinal tip
+ − | \
+ − | o 93 84 d6ec6a8e21 r93 CmergeZB
+ − | | \
+ − o | | 92 721 ba7c5f4ff r92 CmergeZA
+ − | \| |
+ − | | o 91 8 ae32c3ed670 r91 CmergeYC
+ − | | | \
+ − | o \ \ 90 8 b79544bb56d r90 CmergeYB
+ − | | \ \ \
+ − o \ \ \ \ 89 041e1188 f5f1 r89 CmergeYA
+ − | \ \ \ \ \
+ − | o \ \ \ \ 88 2472 d042ec95 r88 CmergeXF
+ − | | \ \ \ \ \
+ − | | | | o \ \ 87 c7d3029bf731 r87 CmergeXE
+ − | | | | | \ \ \
+ − | | | | | | | o 86 469 c700e9ed8 r86 CmergeXD
+ − | | | | | | | | \
+ − | | | | | | o \ \ 85 28 be96b80dc1 r85 CmergeXC
+ − | | | | | | | \ \ \
+ − | | | o \ \ \ \ \ \ 84 dbde319d43a3 r84 CmergeXB
+ − | | | | \ \ \ \ \ \ \
+ − o | | | | | | | | | | 83 b3cf98c3d587 r83 CmergeXA
+ − | \| | | | | | | | | |
+ − | | | | | | o | | | | 82 1 da228afcf06 r82 CmergeWK
+ − | | | | | | | \ \ \ \ \
+ − | | | | | | +-+------- o 81 0 bab31f71a21 r81 CmergeWJ
+ − | | | | | | | | | | |
+ − | | | | | | | | | o | 80 cd345198cf12 r80 CmergeWI
+ − | | | | | | | | | | \ \
+ − | | | | o \ \ \ \ \ \ \ 79 82238 c0bc950 r79 CmergeWH
+ − | | | | | \ \ \ \ \ \ \ \
+ − o \ \ \ \ \ \ \ \ \ \ \ \ 78 89 a0fe204177 r78 CmergeWG
+ − | \ \ \ \ \ \ \ \ \ \ \ \ \
+ − | | | o \ \ \ \ \ \ \ \ \ \ 77 97 d19fc5236f r77 CmergeWF
+ − | | | | \ \ \ \ \ \ \ \ \ \ \
+ − | | | | | | | | o \ \ \ \ \ \ 76 37 ad3ab0cddf r76 CmergeWE
+ − | | | | | | | | | \ \ \ \ \ \ \
+ − | | | | | | | | | | | | | | | o 75 790 cdfecd168 r75 CmergeWD
+ − | | | | | | | | | | | | | | | | \
+ − | | | | | | | | | | | | o \ \ \ \ 74 698970 a2480b r74 CmergeWC
+ − | | | | | | | | | | | | | \ \ \ \ \
+ − | | | | | o \ \ \ \ \ \ \ \ \ \ \ \ 73 31 d7b43cc321 r73 CmergeWB
+ − | | | | | | \ \ \ \ \ \ \ \ \ \ \ \ \
+ − | | o \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 72 eed373b0090d r72 CmergeWA
+ − | | | \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
+ − | | | | | | | | | | | o \ \ \ \ \ \ \ \ 71 4 f3b41956174 r71 CmergeT
+ − | | | | | | | | | | | | \ \ \ \ \ \ \ \ \
+ − | | | | | o | | | | | | | | | | | | | | | 70 c3c7fa726f88 r70 CmergeS
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | | | | | o -------------+ | | | | | | | | 69 d917f77a6439 r69
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | o | | | | | | | | | | | | | | | | | | | 68 fac9e582edd1 r68 CmergeR
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | o | | | | | | | | | | | | | | | | | | | 67 e4cfd6264623 r67
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | o ---------------------+ | | | | | | | | 66 d99e0f7dad5b r66
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | | | | | | | | | o -----+ | | | | | | | | 65 c713eae2d31f r65 CmergeQ
+ − | | | | | | | | | | | | | | | | | | | | |
+ − | | | | | | | | | | | +-+----------- o | | 64 b33fd5ad4c0c r64 CmergeP
+ − | | | | | | | | | | | | | | | | | | / /
+ − | | | | | +-----------+----- o | | | / / 63 bf6593f7e073 r63 CmergeO
+ − | | | | | | | | | | | | | | / / / / /
+ − | | | | | | | | | | | | | o | | | | | 62 3871506 da61e r62 CmergeN
+ − | | | | | | | | | | | | | | | | | | |
+ − | | | | | | | | | | | | | o | | | | | 61 c84da74cf586 r61
+ − | | | | | | | | | | | | | | | | | | |
+ − | | | | | | | | | | | | | o | | | | | 60 5 eec91b12a58 r60
+ − | | | | | | | | | | | | | | | | | | |
+ − | +-------------------+--- o | | | | | 59 04 84 d39906c8 r59
+ − | | | | | | | | | | | | | / / / / /
+ − | | | | | | | | | +---+------- o / / 58 29141354 a762 r58 CmergeM
+ − | | | | | | | | | | | | | | | / /
+ − | | | | | | | | o | | | | | | | | 57 e7135b665740 r57 CmergeL
+ − | | | | | | | | | | | | | | | | |
+ − | | | | | | | | o | | | | | | | | 56 c7c1497fc270 r56
+ − | | | | | | | | | | | | | | | | |
+ − | | | | | +----- o -------+ | | | | 55 76151e8066 e1 r55
+ − | | | | | | | | / / / / / / / /
+ − o | | | | | | | | | | | | | | | 54 9 a67238ad1c4 r54 CmergeK
+ − | | | | | | | | | | | | | | | |
+ − o | | | | | | | | | | | | | | | 53 c37e7cd9f2bd r53
+ − | | | | | | | | | | | | | | | |
+ − o | | | | | | | | | | | | | | | 52 0 d153e3ad632 r52
+ − | | | | | | | | | | | | | | | |
+ − o | | | | | | | | | | | | | | | 51 97 ac964e34b7 r51
+ − | | | | | | | | | | | | | | | |
+ − o | | | | | | | | | | | | | | | 50 900 dd066a072 r50
+ − | | | | | | | | | | | | | | | |
+ − o ---------+---------+ | | | | | 49 673 f5499c8c2 r49
+ − / / / / / / / / / / / / / / /
+ − +----- o / / / / / / / / / / / 48 8 ecb28746ec4 r48 CmergeJ
+ − | | | |/ / / / / / / / / / /
+ − | | | | | | | o | | | | | | 47 d6c9e2d27f14 r47 CmergeI
+ − | | | | | | | | | | | | | |
+ − | | | +------- o | | | | | | 46 bfcfd9a61e84 r46
+ − | | | | | | |/ / / / / / /
+ − +---------------+------- o 45 40553 f55397e r45 CmergeH
+ − | | | | | | | | | | | |
+ − | | o | | | | | | | | | 44 d94da36be176 r44 CmergeG
+ − | | | | | | | | | | | |
+ − +--- o ---------+ | | | | 43 4 b39f229a0ce r43
+ − | | / / / / / / / / /
+ − +---+--- o / / / / / / 42 43 fc0b77ff07 r42 CmergeF
+ − | | | | / / / / / /
+ − | | | | | | | | o | 41 88 eace5ce682 r41 CmergeE
+ − | | | | | | | | | |
+ − | | | | | | | | o | 40 d928b4e8a515 r40
+ − | | | | | | | | | |
+ − +-------+------- o | 39 88714 f4125cb r39
+ − | | | | | | | | /
+ − | | | | +---+--- o 38 e3e6738c56ce r38 CmergeD
+ − | | | | | | | |
+ − | | | | | | | o 37 32 b41ca704e1 r37 CmergeC
+ − | | | | | | | |
+ − | | | | +-+--- o 36 01e29 e20ea3f r36
+ − | | | | | | |
+ − | | | o | | | 35 1 f4a19f83a29 r35 CmergeB
+ − | | |/|/ / /
+ − | o | | | | 34 722 d1b8b8942 r34 CmergeA
+ − | | | | | |
+ − | o | | | | 33 47 c836a1f13e r33
+ − | | | | | |
+ − | o | | | | 32 2 ea3fbf151b5 r32
+ − | | | | | |
+ − | o | | | | 31 0 c3f2ba59eb7 r31
+ − | | | | | |
+ − | o | | | | 30 f3441cd3e664 r30
+ − | | | | | |
+ − | o | | | | 29 b9c3aa92fba5 r29
+ − | | | | | |
+ − | o | | | | 28 3 bdb00d5c818 r28
+ − | | | | | |
+ − | o ---+ | | 27 2 bd677d0f13a r27
+ − |/ / / / /
+ − | | | | o 26 de05b9c29ec7 r26 CbaseE
+ − | | | | |
+ − | | | o | 25 ad46a4a0fc10 r25 CbaseD
+ − | | | | |
+ − | | | o | 24 a457569c5306 r24
+ − | | | | |
+ − | | | o | 23 f2bdd828a3aa r23
+ − | | | | |
+ − | | | o | 22 5 ce588c2b7c5 r22
+ − | | | | |
+ − | | | o | 21 17 b6e6bac221 r21
+ − | | | |/
+ − | o ---+ 20 b115c694654e r20 CbaseC
+ − | / /
+ − o | | 19 884936 b34999 r19 CbaseB
+ − | | |
+ − o ---+ 18 9729470 d9329 r18
+ − / /
+ − o / 17 4 f5078f7da8a r17 CbaseA
+ − |/
+ − o 16 3e1560705803 r16 Bfinal
+ − | \
+ − | o 15 55 bf3fdb634f r15 BmergeD
+ − | | \
+ − o ---+ 14 39 bab1cb1cbe r14 BmergeC
+ − |/ /
+ − | o 13 f7c6e7bfbcd0 r13 BmergeB
+ − | | \
+ − o ---+ 12 26 f59ee8b1d7 r12 BmergeA
+ − |/ /
+ − | o 11 3e2 da24aee59 r11 BbaseA
+ − | |
+ − | o 10 5 ba9a53052ed r10 Afinal
+ − |/|
+ − o | 9 07 c648efceeb r9 AmergeB BbaseB
+ − | \ \
+ − +--- o 8 c81423bf5a24 r8 AmergeA
+ − | |/
+ − | o 7 65 eb34ffc3a8 r7 AbaseB
+ − | |
+ − | o 6 0 c1445abb33d r6
+ − | |
+ − o | 5 c8d03c1b5e94 r5 AbaseA
+ − | |
+ − o | 4 bebd167eb94d r4
+ − | |
+ − o | 3 2 dc09a01254d r3
+ − |/
+ − o 2 01241442 b3c2 r2 base
+ − |
+ − o 1 66 f7d451a68b r1
+ − |
+ − o 0 1 ea73414a91b r0
+ −
+ − $ hg debugdepth - r 'all()'
+ − 1 ea73414a91b 1
+ − 66 f7d451a68b 2
+ − 01241442 b3c2 3
+ − 2 dc09a01254d 4
+ − bebd167eb94d 5
+ − c8d03c1b5e94 6
+ − 0 c1445abb33d 4
+ − 65 eb34ffc3a8 5
+ − c81423bf5a24 9
+ − 07 c648efceeb 9
+ − 5 ba9a53052ed 11
+ − 3e2 da24aee59 12
+ − 26 f59ee8b1d7 13
+ − f7c6e7bfbcd0 13
+ − 39 bab1cb1cbe 15
+ − 55 bf3fdb634f 15
+ − 3e1560705803 17
+ − 4 f5078f7da8a 18
+ − 9729470 d9329 18
+ − 884936 b34999 19
+ − b115c694654e 18
+ − 17 b6e6bac221 18
+ − 5 ce588c2b7c5 19
+ − f2bdd828a3aa 20
+ − a457569c5306 21
+ − ad46a4a0fc10 22
+ − de05b9c29ec7 18
+ − 2 bd677d0f13a 21
+ − 3 bdb00d5c818 22
+ − b9c3aa92fba5 23
+ − f3441cd3e664 24
+ − 0 c3f2ba59eb7 25
+ − 2 ea3fbf151b5 26
+ − 47 c836a1f13e 27
+ − 722 d1b8b8942 28
+ − 1 f4a19f83a29 20
+ − 01e29 e20ea3f 24
+ − 32 b41ca704e1 25
+ − e3e6738c56ce 20
+ − 88714 f4125cb 21
+ − d928b4e8a515 22
+ − 88 eace5ce682 23
+ − 43 fc0b77ff07 21
+ − 4 b39f229a0ce 25
+ − d94da36be176 26
+ − 40553 f55397e 21
+ − bfcfd9a61e84 20
+ − d6c9e2d27f14 21
+ − 8 ecb28746ec4 21
+ − 673 f5499c8c2 24
+ − 900 dd066a072 25
+ − 97 ac964e34b7 26
+ − 0 d153e3ad632 27
+ − c37e7cd9f2bd 28
+ − 9 a67238ad1c4 29
+ − 76151e8066 e1 20
+ − c7c1497fc270 21
+ − e7135b665740 22
+ − 29141354 a762 24
+ − 04 84 d39906c8 25
+ − 5 eec91b12a58 26
+ − c84da74cf586 27
+ − 3871506 da61e 28
+ − bf6593f7e073 24
+ − b33fd5ad4c0c 24
+ − c713eae2d31f 20
+ − d99e0f7dad5b 21
+ − e4cfd6264623 22
+ − fac9e582edd1 23
+ − d917f77a6439 20
+ − c3c7fa726f88 21
+ − 4 f3b41956174 24
+ − eed373b0090d 36
+ − 31 d7b43cc321 24
+ − 698970 a2480b 31
+ − 790 cdfecd168 24
+ − 37 ad3ab0cddf 29
+ − 97 d19fc5236f 25
+ − 89 a0fe204177 36
+ − 82238 c0bc950 25
+ − cd345198cf12 27
+ − 0 bab31f71a21 31
+ − 1 da228afcf06 31
+ − b3cf98c3d587 49
+ − dbde319d43a3 31
+ − 28 be96b80dc1 36
+ − 469 c700e9ed8 37
+ − c7d3029bf731 38
+ − 2472 d042ec95 43
+ − 041e1188 f5f1 55
+ − 8 b79544bb56d 48
+ − 8 ae32c3ed670 48
+ − 721 ba7c5f4ff 77
+ − 84 d6ec6a8e21 65
+ − 01 f771406cab 95
+ −
+ − Basic check
+ − -----------
+ −
+ − $ hg showsort -- rev 'Afinal'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − 07 c648efceeb
+ − c81423bf5a24
+ − 5 ba9a53052ed
+ − $ checktopo Afinal
+ − === checking 1 ea73414a91b = ==
+ − === checking 66 f7d451a68b = ==
+ − === checking 01241442 b3c2 = ==
+ − === checking 0 c1445abb33d = ==
+ − === checking 65 eb34ffc3a8 = ==
+ − === checking 2 dc09a01254d = ==
+ − === checking bebd167eb94d = ==
+ − === checking c8d03c1b5e94 = ==
+ − === checking 07 c648efceeb = ==
+ − === checking c81423bf5a24 = ==
+ − === checking 5 ba9a53052ed = ==
+ − $ hg showsort -- rev 'AmergeA'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − c81423bf5a24
+ − $ checktopo AmergeA
+ − === checking 1 ea73414a91b = ==
+ − === checking 66 f7d451a68b = ==
+ − === checking 01241442 b3c2 = ==
+ − === checking 0 c1445abb33d = ==
+ − === checking 65 eb34ffc3a8 = ==
+ − === checking 2 dc09a01254d = ==
+ − === checking bebd167eb94d = ==
+ − === checking c8d03c1b5e94 = ==
+ − === checking c81423bf5a24 = ==
+ − $ hg showsort -- rev 'AmergeB'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − 07 c648efceeb
+ − $ checktopo AmergeB
+ − === checking 1 ea73414a91b = ==
+ − === checking 66 f7d451a68b = ==
+ − === checking 01241442 b3c2 = ==
+ − === checking 0 c1445abb33d = ==
+ − === checking 65 eb34ffc3a8 = ==
+ − === checking 2 dc09a01254d = ==
+ − === checking bebd167eb94d = ==
+ − === checking c8d03c1b5e94 = ==
+ − === checking 07 c648efceeb = ==
+ −
+ − close criss cross
+ − $ hg showsort -- rev 'Bfinal'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − 07 c648efceeb
+ − c81423bf5a24
+ − 5 ba9a53052ed
+ − 3e2 da24aee59
+ − 26 f59ee8b1d7
+ − f7c6e7bfbcd0
+ − 39 bab1cb1cbe
+ − 55 bf3fdb634f
+ − 3e1560705803
+ − $ checktopo Bfinal
+ − === checking 1 ea73414a91b = ==
+ − === checking 66 f7d451a68b = ==
+ − === checking 01241442 b3c2 = ==
+ − === checking 0 c1445abb33d = ==
+ − === checking 65 eb34ffc3a8 = ==
+ − === checking 2 dc09a01254d = ==
+ − === checking bebd167eb94d = ==
+ − === checking c8d03c1b5e94 = ==
+ − === checking 07 c648efceeb = ==
+ − === checking c81423bf5a24 = ==
+ − === checking 5 ba9a53052ed = ==
+ − === checking 3e2 da24aee59 = ==
+ − === checking 26 f59ee8b1d7 = ==
+ − === checking f7c6e7bfbcd0 = ==
+ − === checking 39 bab1cb1cbe = ==
+ − === checking 55 bf3fdb634f = ==
+ − === checking 3e1560705803 ===
+ −
+ − many branches criss cross
+ −
+ − $ hg showsort -- rev 'Cfinal'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − 07 c648efceeb
+ − c81423bf5a24
+ − 5 ba9a53052ed
+ − 3e2 da24aee59
+ − 26 f59ee8b1d7
+ − f7c6e7bfbcd0
+ − 39 bab1cb1cbe
+ − 55 bf3fdb634f
+ − 3e1560705803
+ − 17 b6e6bac221
+ − 5 ce588c2b7c5
+ − f2bdd828a3aa
+ − a457569c5306
+ − ad46a4a0fc10
+ − 4 f5078f7da8a
+ − 01e29 e20ea3f
+ − 32 b41ca704e1
+ − 29141354 a762
+ − 9729470 d9329
+ − 884936 b34999
+ − 04 84 d39906c8
+ − 5 eec91b12a58
+ − c84da74cf586
+ − 3871506 da61e
+ − 2 bd677d0f13a
+ − 3 bdb00d5c818
+ − b9c3aa92fba5
+ − f3441cd3e664
+ − 0 c3f2ba59eb7
+ − 2 ea3fbf151b5
+ − 47 c836a1f13e
+ − 722 d1b8b8942
+ − 4 b39f229a0ce
+ − d94da36be176
+ − eed373b0090d
+ − 88714 f4125cb
+ − d928b4e8a515
+ − 88 eace5ce682
+ − 698970 a2480b
+ − b115c694654e
+ − 1 f4a19f83a29
+ − 43 fc0b77ff07
+ − 31 d7b43cc321
+ − 673 f5499c8c2
+ − 900 dd066a072
+ − 97 ac964e34b7
+ − 0 d153e3ad632
+ − c37e7cd9f2bd
+ − 9 a67238ad1c4
+ − 8 ecb28746ec4
+ − bf6593f7e073
+ − 0 bab31f71a21
+ − 1 da228afcf06
+ − bfcfd9a61e84
+ − d6c9e2d27f14
+ − de05b9c29ec7
+ − 40553 f55397e
+ − 4 f3b41956174
+ − 37 ad3ab0cddf
+ − c7d3029bf731
+ − 76151e8066 e1
+ − c7c1497fc270
+ − e7135b665740
+ − b33fd5ad4c0c
+ − cd345198cf12
+ − 28 be96b80dc1
+ − c713eae2d31f
+ − 82238 c0bc950
+ − dbde319d43a3
+ − 8 b79544bb56d
+ − d917f77a6439
+ − c3c7fa726f88
+ − 97 d19fc5236f
+ − 2472 d042ec95
+ − d99e0f7dad5b
+ − e4cfd6264623
+ − fac9e582edd1
+ − 89 a0fe204177
+ − b3cf98c3d587
+ − 041e1188 f5f1
+ − 721 ba7c5f4ff
+ − e3e6738c56ce
+ − 790 cdfecd168
+ − 469 c700e9ed8
+ − 8 ae32c3ed670
+ − 84 d6ec6a8e21
+ − 01 f771406cab
+ − $ checktopo Cfinal
+ − === checking 1 ea73414a91b = ==
+ − === checking 66 f7d451a68b = ==
+ − === checking 01241442 b3c2 = ==
+ − === checking 0 c1445abb33d = ==
+ − === checking 65 eb34ffc3a8 = ==
+ − === checking 2 dc09a01254d = ==
+ − === checking bebd167eb94d = ==
+ − === checking c8d03c1b5e94 = ==
+ − === checking 07 c648efceeb = ==
+ − === checking c81423bf5a24 = ==
+ − === checking 5 ba9a53052ed = ==
+ − === checking 3e2 da24aee59 = ==
+ − === checking 26 f59ee8b1d7 = ==
+ − === checking f7c6e7bfbcd0 = ==
+ − === checking 39 bab1cb1cbe = ==
+ − === checking 55 bf3fdb634f = ==
+ − === checking 3e1560705803 ===
+ − === checking 17 b6e6bac221 = ==
+ − === checking 5 ce588c2b7c5 = ==
+ − === checking f2bdd828a3aa = ==
+ − === checking a457569c5306 = ==
+ − === checking ad46a4a0fc10 = ==
+ − === checking 4 f5078f7da8a = ==
+ − === checking 01e29 e20ea3f = ==
+ − === checking 32 b41ca704e1 = ==
+ − === checking 29141354 a762 = ==
+ − === checking 9729470 d9329 = ==
+ − === checking 884936 b34999 = ==
+ − === checking 04 84 d39906c8 = ==
+ − === checking 5 eec91b12a58 = ==
+ − === checking c84da74cf586 = ==
+ − === checking 3871506 da61e = ==
+ − === checking 2 bd677d0f13a = ==
+ − === checking 3 bdb00d5c818 = ==
+ − === checking b9c3aa92fba5 = ==
+ − === checking f3441cd3e664 = ==
+ − === checking 0 c3f2ba59eb7 = ==
+ − === checking 2 ea3fbf151b5 = ==
+ − === checking 47 c836a1f13e = ==
+ − === checking 722 d1b8b8942 = ==
+ − === checking 4 b39f229a0ce = ==
+ − === checking d94da36be176 = ==
+ − === checking eed373b0090d = ==
+ − === checking 88714 f4125cb = ==
+ − === checking d928b4e8a515 = ==
+ − === checking 88 eace5ce682 = ==
+ − === checking 698970 a2480b = ==
+ − === checking b115c694654e = ==
+ − === checking 1 f4a19f83a29 = ==
+ − === checking 43 fc0b77ff07 = ==
+ − === checking 31 d7b43cc321 = ==
+ − === checking 673 f5499c8c2 = ==
+ − === checking 900 dd066a072 = ==
+ − === checking 97 ac964e34b7 = ==
+ − === checking 0 d153e3ad632 = ==
+ − === checking c37e7cd9f2bd = ==
+ − === checking 9 a67238ad1c4 = ==
+ − === checking 8 ecb28746ec4 = ==
+ − === checking bf6593f7e073 = ==
+ − === checking 0 bab31f71a21 = ==
+ − === checking 1 da228afcf06 = ==
+ − === checking bfcfd9a61e84 = ==
+ − === checking d6c9e2d27f14 = ==
+ − === checking de05b9c29ec7 = ==
+ − === checking 40553 f55397e = ==
+ − === checking 4 f3b41956174 = ==
+ − === checking 37 ad3ab0cddf = ==
+ − === checking c7d3029bf731 = ==
+ − === checking 76151e8066 e1 = ==
+ − === checking c7c1497fc270 = ==
+ − === checking e7135b665740 = ==
+ − === checking b33fd5ad4c0c = ==
+ − === checking cd345198cf12 = ==
+ − === checking 28 be96b80dc1 = ==
+ − === checking c713eae2d31f = ==
+ − === checking 82238 c0bc950 = ==
+ − === checking dbde319d43a3 = ==
+ − === checking 8 b79544bb56d = ==
+ − === checking d917f77a6439 = ==
+ − === checking c3c7fa726f88 = ==
+ − === checking 97 d19fc5236f = ==
+ − === checking 2472 d042ec95 = ==
+ − === checking d99e0f7dad5b = ==
+ − === checking e4cfd6264623 = ==
+ − === checking fac9e582edd1 = ==
+ − === checking 89 a0fe204177 = ==
+ − === checking b3cf98c3d587 = ==
+ − === checking 041e1188 f5f1 = ==
+ − === checking 721 ba7c5f4ff = ==
+ − === checking e3e6738c56ce = ==
+ − === checking 790 cdfecd168 = ==
+ − === checking 469 c700e9ed8 = ==
+ − === checking 8 ae32c3ed670 = ==
+ − === checking 84 d6ec6a8e21 = ==
+ − === checking 01 f771406cab = ==
+ −
+ − Test stability of this mess
+ − ---------------------------
+ −
+ − $ hg log - r tip
+ − 94 01 f771406cab r94 Cfinal tip
+ − $ hg showsort -- rev 'all()' > ../ crisscross . source . order
+ − $ cd ..
+ −
+ − $ hg clone crisscross_A crisscross_random -- rev 0
+ − adding changesets
+ − adding manifests
+ − adding file changes
+ − added 1 changesets with 0 changes to 0 files
+ − new changesets 1 ea73414a91b
+ − updating to branch default
+ − 0 files updated , 0 files merged , 0 files removed , 0 files unresolved
+ − $ cd crisscross_random
+ − $ for x in ` python .. / random_rev . py 50 44 ` ; do
+ − > # using python to benefit from the random seed
+ − > hg pull - r $ x -- quiet
+ − > done ;
+ − $ hg pull -- quiet
+ −
+ − $ hg showsort -- rev 'all()' > .. / crisscross . random . order
+ − $ python "$RUNTESTDIR/md5sum.py" .. / crisscross . * . order
+ − d9aab0d1907d5cf64d205a8b9036e959 .. / crisscross . random . order
+ − d9aab0d1907d5cf64d205a8b9036e959 .. / crisscross . source . order
+ − $ diff - u .. / crisscross . * . order
+ − $ hg showsort -- rev 'all()'
+ − 1 ea73414a91b
+ − 66 f7d451a68b
+ − 01241442 b3c2
+ − 0 c1445abb33d
+ − 65 eb34ffc3a8
+ − 2 dc09a01254d
+ − bebd167eb94d
+ − c8d03c1b5e94
+ − 07 c648efceeb
+ − c81423bf5a24
+ − 5 ba9a53052ed
+ − 3e2 da24aee59
+ − 26 f59ee8b1d7
+ − f7c6e7bfbcd0
+ − 39 bab1cb1cbe
+ − 55 bf3fdb634f
+ − 3e1560705803
+ − 17 b6e6bac221
+ − 5 ce588c2b7c5
+ − f2bdd828a3aa
+ − a457569c5306
+ − ad46a4a0fc10
+ − 4 f5078f7da8a
+ − 01e29 e20ea3f
+ − 32 b41ca704e1
+ − 29141354 a762
+ − 9729470 d9329
+ − 884936 b34999
+ − 04 84 d39906c8
+ − 5 eec91b12a58
+ − c84da74cf586
+ − 3871506 da61e
+ − 2 bd677d0f13a
+ − 3 bdb00d5c818
+ − b9c3aa92fba5
+ − f3441cd3e664
+ − 0 c3f2ba59eb7
+ − 2 ea3fbf151b5
+ − 47 c836a1f13e
+ − 722 d1b8b8942
+ − 4 b39f229a0ce
+ − d94da36be176
+ − eed373b0090d
+ − 88714 f4125cb
+ − d928b4e8a515
+ − 88 eace5ce682
+ − 698970 a2480b
+ − b115c694654e
+ − 1 f4a19f83a29
+ − 43 fc0b77ff07
+ − 31 d7b43cc321
+ − 673 f5499c8c2
+ − 900 dd066a072
+ − 97 ac964e34b7
+ − 0 d153e3ad632
+ − c37e7cd9f2bd
+ − 9 a67238ad1c4
+ − 8 ecb28746ec4
+ − bf6593f7e073
+ − 0 bab31f71a21
+ − 1 da228afcf06
+ − bfcfd9a61e84
+ − d6c9e2d27f14
+ − de05b9c29ec7
+ − 40553 f55397e
+ − 4 f3b41956174
+ − 37 ad3ab0cddf
+ − c7d3029bf731
+ − 76151e8066 e1
+ − c7c1497fc270
+ − e7135b665740
+ − b33fd5ad4c0c
+ − cd345198cf12
+ − 28 be96b80dc1
+ − c713eae2d31f
+ − 82238 c0bc950
+ − dbde319d43a3
+ − 8 b79544bb56d
+ − d917f77a6439
+ − c3c7fa726f88
+ − 97 d19fc5236f
+ − 2472 d042ec95
+ − d99e0f7dad5b
+ − e4cfd6264623
+ − fac9e582edd1
+ − 89 a0fe204177
+ − b3cf98c3d587
+ − 041e1188 f5f1
+ − 721 ba7c5f4ff
+ − e3e6738c56ce
+ − 790 cdfecd168
+ − 469 c700e9ed8
+ − 8 ae32c3ed670
+ − 84 d6ec6a8e21
+ − 01 f771406cab