tests/test-stablerange.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Thu, 23 Mar 2017 10:07:21 +0100
changeset 2203 8a2e1f6e5443
parent 2083 778afb036245
child 2207 f82a398162f5
permissions -rw-r--r--
findmissingrange: properly queue new subrange for slicing The previous code was buggy and used the wrong variable leading to no extra slicing being performed to file the sample at the requested size.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     1
Test for stable ordering capabilities
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     2
=====================================
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     3
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     4
  $ . $TESTDIR/testlib/pythonpath.sh
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     5
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     6
  $ cat << EOF >> $HGRCPATH
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     7
  > [extensions]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     8
  > hgext3rd.evolve =
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     9
  > [ui]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    10
  > logtemplate = "{rev} {node|short} {desc} {tags}\n"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    11
  > EOF
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    12
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    13
Simple linear test
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    14
==================
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    15
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    16
  $ hg init repo_linear
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    17
  $ cd repo_linear
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    18
  $ hg debugbuilddag '.+6'
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    19
  $ hg debugstablerange --rev 1
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    20
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    21
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    22
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    23
    1 66f7d451a68b     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    24
  $ hg debugstablerange --rev 1 > 1.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    25
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    26
bigger subset reuse most of the previous one
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    27
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    28
  $ hg debugstablerange --rev 4
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    29
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    30
    4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    31
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    32
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    33
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    34
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    35
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    36
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    37
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    38
    4 bebd167eb94d     4    1     5 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    39
  $ hg debugstablerange --rev 4 > 4.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    40
  $ diff -u 1.range 4.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    41
  --- 1.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    42
  +++ 4.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    43
  @@ -1,4 +1,10 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    44
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    45
  +  4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    46
  +  3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    47
  +  3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    48
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    49
  +  2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    50
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    51
  +  3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    52
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    53
  +  4 bebd167eb94d     4    1     5 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    54
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    55
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    56
Using a range not ending on 2**N boundary
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    57
we fall back on 2**N as much as possible
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    58
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    59
  $ hg debugstablerange --rev 5
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    60
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    61
    5 c8d03c1b5e94     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    62
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    63
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    64
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    65
    5 c8d03c1b5e94     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    66
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    67
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    68
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    69
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    70
    4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    71
    5 c8d03c1b5e94     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    72
  $ hg debugstablerange --rev 5 > 5.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    73
  $ diff -u 4.range 5.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    74
  --- 4.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    75
  +++ 5.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    76
  @@ -1,10 +1,12 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    77
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    78
  -  4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    79
  +  5 c8d03c1b5e94     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    80
     3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    81
     3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    82
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    83
  +  5 c8d03c1b5e94     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    84
     2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    85
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    86
     3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    87
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    88
     4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    89
  +  5 c8d03c1b5e94     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    90
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    91
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    92
Even two unperfect range overlap a lot
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    93
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    94
  $ hg debugstablerange --rev tip
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    95
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    96
    6 f69452c5b1af     0    7     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    97
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    98
    6 f69452c5b1af     4    3     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
    99
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   100
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   101
    5 c8d03c1b5e94     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   102
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   103
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   104
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   105
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   106
    4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   107
    5 c8d03c1b5e94     5    1     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   108
    6 f69452c5b1af     6    1     7 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   109
  $ hg debugstablerange --rev tip > tip.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   110
  $ diff -u 5.range tip.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   111
  --- 5.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   112
  +++ tip.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   113
  @@ -1,6 +1,7 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   114
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   115
  -  5 c8d03c1b5e94     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   116
  +  6 f69452c5b1af     0    7     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   117
     3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   118
  +  6 f69452c5b1af     4    3     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   119
     3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   120
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   121
     5 c8d03c1b5e94     4    2     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   122
  @@ -10,3 +11,4 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   123
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   124
     4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   125
     5 c8d03c1b5e94     5    1     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   126
  +  6 f69452c5b1af     6    1     7 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   127
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   128
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   129
  $ cd ..
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   130
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   131
Case with merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   132
===============
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   133
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   134
Simple case: branching is on a boundary
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   135
--------------------------------------------
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   136
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   137
  $ hg init repo_merge_split_on_boundary
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   138
  $ cd repo_merge_split_on_boundary
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   139
  $ hg debugbuilddag '.:base
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   140
  > +3:left
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   141
  > <base+3:right
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   142
  > <left/right:merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   143
  > +2:head
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   144
  > '
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   145
  $ hg log -G
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   146
  o  9 0338daf18215 r9 head tip
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   147
  |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   148
  o  8 71b32fcf3f71 r8
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   149
  |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   150
  o    7 5f18015f9110 r7 merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   151
  |\
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   152
  | o  6 a2f58e9c1e56 r6 right
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   153
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   154
  | o  5 3a367db1fabc r5
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   155
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   156
  | o  4 e7bd5218ca15 r4
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   157
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   158
  o |  3 2dc09a01254d r3 left
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   159
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   160
  o |  2 01241442b3c2 r2
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   161
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   162
  o |  1 66f7d451a68b r1
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   163
  |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   164
  o  0 1ea73414a91b r0 base
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   165
  
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   166
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   167
Each of the linear branch reuse range internally
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   168
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   169
(left branch)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   170
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   171
  $ hg debugstablerange --rev 'left~2'
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   172
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   173
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   174
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   175
    1 66f7d451a68b     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   176
  $ hg debugstablerange --rev 'left~2' > left-2.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   177
  $ hg debugstablerange --rev left
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   178
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   179
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   180
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   181
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   182
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   183
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   184
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   185
    1 66f7d451a68b     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   186
  $ hg debugstablerange --rev 'left' > left.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   187
  $ diff -u left-2.range left.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   188
  --- left-2.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   189
  +++ left.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   190
  @@ -1,4 +1,8 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   191
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   192
  +  3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   193
  +  3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   194
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   195
  +  2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   196
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   197
  +  3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   198
     1 66f7d451a68b     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   199
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   200
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   201
(right branch)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   202
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   203
  $ hg debugstablerange --rev right~2
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   204
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   205
    4 e7bd5218ca15     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   206
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   207
    4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   208
  $ hg debugstablerange --rev 'right~2' > right-2.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   209
  $ hg debugstablerange --rev right
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   210
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   211
    6 a2f58e9c1e56     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   212
    6 a2f58e9c1e56     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   213
    4 e7bd5218ca15     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   214
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   215
    5 3a367db1fabc     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   216
    6 a2f58e9c1e56     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   217
    4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   218
  $ hg debugstablerange --rev 'right' > right.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   219
  $ diff -u right-2.range right.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   220
  --- right-2.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   221
  +++ right.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   222
  @@ -1,4 +1,8 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   223
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   224
  +  6 a2f58e9c1e56     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   225
  +  6 a2f58e9c1e56     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   226
     4 e7bd5218ca15     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   227
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   228
  +  5 3a367db1fabc     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   229
  +  6 a2f58e9c1e56     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   230
     4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   231
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   232
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   233
The merge reuse as much of the slicing created for one of the branch
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   234
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   235
  $ hg debugstablerange --rev merge
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   236
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   237
    7 5f18015f9110     0    8     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   238
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   239
    7 5f18015f9110     4    4     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   240
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   241
    5 3a367db1fabc     1    2     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   242
    7 5f18015f9110     6    2     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   243
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   244
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   245
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   246
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   247
    5 3a367db1fabc     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   248
    7 5f18015f9110     7    1     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   249
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   250
    6 a2f58e9c1e56     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   251
    4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   252
  $ hg debugstablerange --rev 'merge' > merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   253
  $ diff -u left.range merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   254
  --- left.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   255
  +++ merge.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   256
  @@ -1,8 +1,16 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   257
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   258
  +  7 5f18015f9110     0    8     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   259
     3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   260
  +  7 5f18015f9110     4    4     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   261
     3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   262
  +  5 3a367db1fabc     1    2     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   263
  +  7 5f18015f9110     6    2     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   264
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   265
     2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   266
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   267
     3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   268
  +  5 3a367db1fabc     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   269
  +  7 5f18015f9110     7    1     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   270
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   271
  +  6 a2f58e9c1e56     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   272
  +  4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   273
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   274
  $ diff -u right.range merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   275
  --- right.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   276
  +++ merge.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   277
  @@ -1,8 +1,16 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   278
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   279
  -  6 a2f58e9c1e56     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   280
  -  6 a2f58e9c1e56     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   281
  -  4 e7bd5218ca15     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   282
  +  7 5f18015f9110     0    8     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   283
  +  3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   284
  +  7 5f18015f9110     4    4     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   285
  +  3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   286
  +  5 3a367db1fabc     1    2     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   287
  +  7 5f18015f9110     6    2     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   288
  +  1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   289
  +  2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   290
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   291
  +  3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   292
     5 3a367db1fabc     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   293
  +  7 5f18015f9110     7    1     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   294
  +  1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   295
     6 a2f58e9c1e56     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   296
     4 e7bd5218ca15     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   297
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   298
  $ cd ..
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   299
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   300
slice create multiple heads
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   301
---------------------------
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   302
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   303
  $ hg init repo_merge_split_heads
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   304
  $ cd repo_merge_split_heads
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   305
  $ hg debugbuilddag '.:base
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   306
  > +4:left
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   307
  > <base+5:right
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   308
  > <left/right:merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   309
  > +2:head
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   310
  > '
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   311
  $ hg debugbuilddag '.:base
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   312
  > +3:left
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   313
  > <base+3:right
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   314
  > <left/right:merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   315
  > +2:head
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   316
  > '
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   317
  abort: repository is not empty
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   318
  [255]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   319
  $ hg log -G
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   320
  o  12 e6b8d5b46647 r12 head tip
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   321
  |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   322
  o  11 485383494a89 r11
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   323
  |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   324
  o    10 8aca7f8c9bd2 r10 merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   325
  |\
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   326
  | o  9 f4b7da68b467 r9 right
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   327
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   328
  | o  8 857477a9aebb r8
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   329
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   330
  | o  7 42b07e8da27d r7
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   331
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   332
  | o  6 b9bc20507e0b r6
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   333
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   334
  | o  5 de561312eff4 r5
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   335
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   336
  o |  4 bebd167eb94d r4 left
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   337
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   338
  o |  3 2dc09a01254d r3
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   339
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   340
  o |  2 01241442b3c2 r2
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   341
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   342
  o |  1 66f7d451a68b r1
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   343
  |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   344
  o  0 1ea73414a91b r0 base
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   345
  
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   346
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   347
Each of the linear branch reuse range internally
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   348
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   349
(left branch)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   350
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   351
  $ hg debugstablerange --rev 'left~2'
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   352
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   353
    2 01241442b3c2     0    3     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   354
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   355
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   356
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   357
    1 66f7d451a68b     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   358
  $ hg debugstablerange --rev 'left~2' > left-2.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   359
  $ hg debugstablerange --rev left
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   360
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   361
    4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   362
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   363
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   364
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   365
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   366
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   367
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   368
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   369
    4 bebd167eb94d     4    1     5 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   370
  $ hg debugstablerange --rev 'left' > left.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   371
  $ diff -u left-2.range left.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   372
  --- left-2.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   373
  +++ left.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   374
  @@ -1,6 +1,10 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   375
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   376
  -  2 01241442b3c2     0    3     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   377
  +  4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   378
  +  3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   379
  +  3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   380
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   381
     2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   382
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   383
  +  3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   384
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   385
  +  4 bebd167eb94d     4    1     5 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   386
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   387
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   388
(right branch)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   389
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   390
  $ hg debugstablerange --rev right~2
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   391
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   392
    7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   393
    7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   394
    5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   395
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   396
    7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   397
    6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   398
    5 de561312eff4     1    1     2 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   399
  $ hg debugstablerange --rev 'right~2' > right-2.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   400
  $ hg debugstablerange --rev right
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   401
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   402
    9 f4b7da68b467     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   403
    7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   404
    7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   405
    5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   406
    9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   407
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   408
    7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   409
    8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   410
    6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   411
    5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   412
    9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   413
  $ hg debugstablerange --rev 'right' > right.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   414
  $ diff -u right-2.range right.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   415
  --- right-2.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   416
  +++ right.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   417
  @@ -1,8 +1,12 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   418
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   419
  +  9 f4b7da68b467     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   420
     7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   421
     7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   422
     5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   423
  +  9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   424
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   425
     7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   426
  +  8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   427
     6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   428
     5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   429
  +  9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   430
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   431
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   432
In this case, the bottom of the split will have multiple heads,
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   433
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   434
So we'll create more than 1 subrange out of it.
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   435
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   436
We are still able to reuse one of the branch however
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   437
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   438
  $ hg debugstablerange --rev merge
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   439
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   440
   10 8aca7f8c9bd2     0   11    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   441
    4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   442
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   443
    7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   444
   10 8aca7f8c9bd2     8    3    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   445
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   446
    7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   447
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   448
    5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   449
    9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   450
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   451
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   452
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   453
    7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   454
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   455
    8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   456
   10 8aca7f8c9bd2    10    1    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   457
    6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   458
    4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   459
    5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   460
    9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   461
  $ hg debugstablerange --rev 'merge' > merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   462
  $ diff -u left.range merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   463
  --- left.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   464
  +++ merge.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   465
  @@ -1,10 +1,22 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   466
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   467
  + 10 8aca7f8c9bd2     0   11    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   468
     4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   469
     3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   470
  +  7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   471
  + 10 8aca7f8c9bd2     8    3    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   472
     3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   473
  +  7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   474
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   475
  +  5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   476
  +  9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   477
     2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   478
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   479
     3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   480
  +  7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   481
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   482
  +  8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   483
  + 10 8aca7f8c9bd2    10    1    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   484
  +  6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   485
     4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   486
  +  5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   487
  +  9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   488
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   489
  $ diff -u right.range merge.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   490
  --- right.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   491
  +++ merge.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   492
  @@ -1,12 +1,22 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   493
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   494
  -  9 f4b7da68b467     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   495
  + 10 8aca7f8c9bd2     0   11    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   496
  +  4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   497
  +  3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   498
     7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   499
  + 10 8aca7f8c9bd2     8    3    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   500
  +  3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   501
     7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   502
  +  1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   503
     5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   504
     9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   505
  +  2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   506
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   507
  +  3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   508
     7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   509
  +  1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   510
     8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   511
  + 10 8aca7f8c9bd2    10    1    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   512
     6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   513
  +  4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   514
     5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   515
     9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   516
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   517
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   518
Range above the merge, reuse subrange from the merge
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   519
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   520
  $ hg debugstablerange --rev tip
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   521
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   522
   12 e6b8d5b46647     0   13    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   523
    4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   524
   12 e6b8d5b46647     8    5    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   525
    3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   526
    7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   527
   11 485383494a89     8    4    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   528
    3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   529
    7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   530
   11 485383494a89    10    2    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   531
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   532
    5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   533
    9 f4b7da68b467     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   534
    2 01241442b3c2     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   535
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   536
    3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   537
    7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   538
   11 485383494a89    11    1    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   539
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   540
    8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   541
   10 8aca7f8c9bd2    10    1    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   542
    6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   543
    4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   544
    5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   545
   12 e6b8d5b46647    12    1    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   546
    9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   547
  $ hg debugstablerange --rev 'tip' > tip.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   548
  $ diff -u merge.range tip.range
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   549
  --- merge.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   550
  +++ tip.range	* (glob)
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   551
  @@ -1,11 +1,13 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   552
   rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   553
  - 10 8aca7f8c9bd2     0   11    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   554
  + 12 e6b8d5b46647     0   13    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   555
     4 bebd167eb94d     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   556
  + 12 e6b8d5b46647     8    5    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   557
     3 2dc09a01254d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   558
     7 42b07e8da27d     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   559
  - 10 8aca7f8c9bd2     8    3    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   560
  + 11 485383494a89     8    4    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   561
     3 2dc09a01254d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   562
     7 42b07e8da27d     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   563
  + 11 485383494a89    10    2    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   564
     1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   565
     5 de561312eff4     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   566
     9 f4b7da68b467     4    2     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   567
  @@ -13,10 +15,12 @@
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   568
     0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   569
     3 2dc09a01254d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   570
     7 42b07e8da27d     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   571
  + 11 485383494a89    11    1    12 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   572
     1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   573
     8 857477a9aebb     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   574
    10 8aca7f8c9bd2    10    1    11 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   575
     6 b9bc20507e0b     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   576
     4 bebd167eb94d     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   577
     5 de561312eff4     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   578
  + 12 e6b8d5b46647    12    1    13 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   579
     9 f4b7da68b467     5    1     6 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   580
  [1]
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   581
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   582
  $ cd ..
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   583
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   584
Tests range with criss cross merge in the graph
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   585
===============================================
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   586
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   587
  $ hg init repo_criss_cross
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   588
  $ cd repo_criss_cross
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   589
  $ hg debugbuilddag '
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   590
  > ..:g   # 2 nodes, tagged "g"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   591
  > <2.:h   # another node base one -2 -> 0, tagged "h"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   592
  > *1/2:m # merge -1 and -2 (1, 2), tagged "m"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   593
  > <2+2:i # 2 nodes based on -2, tag head as "i"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   594
  > .:c    # 1 node tagged "c"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   595
  > <m+3:a # 3 nodes base on the "m" tag
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   596
  > <2.:b  # 1 node based on -2; tagged "b"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   597
  > <m+2:d # 2 nodes from "m" tagged "d"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   598
  > <2.:e  # 1 node based on -2, tagged "e"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   599
  > <m+1:f # 1 node based on "m" tagged "f"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   600
  > <i/f   # merge "i" and "f"
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   601
  > '
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   602
  $ hg log -G
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   603
  o    15 1d8d22637c2d r15 tip
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   604
  |\
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   605
  | o  14 43227190fef8 r14 f
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   606
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   607
  | | o  13 b4594d867745 r13 e
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   608
  | | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   609
  | | | o  12 e46a4836065c r12 d
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   610
  | | |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   611
  | | o  11 bab5d5bf48bd r11
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   612
  | |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   613
  | | o  10 ff43616e5d0f r10 b
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   614
  | | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   615
  | | | o  9 dcbb326fdec2 r9 a
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   616
  | | |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   617
  | | o  8 d62d843c9a01 r8
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   618
  | | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   619
  | | o  7 e7d9710d9fc6 r7
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   620
  | |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   621
  +---o  6 2702dd0c91e7 r6 c
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   622
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   623
  o |  5 f0f3ef9a6cd5 r5 i
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   624
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   625
  o |  4 4c748ffd1a46 r4
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   626
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   627
  | o  3 2b6d669947cd r3 m
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   628
  |/|
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   629
  o |  2 fa942426a6fd r2 h
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   630
  | |
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   631
  | o  1 66f7d451a68b r1 g
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   632
  |/
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   633
  o  0 1ea73414a91b r0
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   634
  
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   635
  $ hg debugstablerange --rev 'head()'
2083
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   636
  rev         node index size depth      obshash
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   637
   15 1d8d22637c2d     0    8     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   638
    9 dcbb326fdec2     0    7     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   639
   10 ff43616e5d0f     0    7     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   640
   13 b4594d867745     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   641
   12 e46a4836065c     0    6     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   642
    6 2702dd0c91e7     0    5     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   643
   15 1d8d22637c2d     4    4     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   644
    3 2b6d669947cd     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   645
    5 f0f3ef9a6cd5     0    4     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   646
    9 dcbb326fdec2     4    3     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   647
   10 ff43616e5d0f     4    3     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   648
   15 1d8d22637c2d     6    2     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   649
    3 2b6d669947cd     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   650
    1 66f7d451a68b     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   651
   13 b4594d867745     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   652
    8 d62d843c9a01     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   653
   12 e46a4836065c     4    2     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   654
    5 f0f3ef9a6cd5     2    2     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   655
    2 fa942426a6fd     0    2     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   656
   15 1d8d22637c2d     7    1     8 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   657
    0 1ea73414a91b     0    1     1 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   658
    6 2702dd0c91e7     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   659
    3 2b6d669947cd     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   660
   14 43227190fef8     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   661
    4 4c748ffd1a46     2    1     3 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   662
    1 66f7d451a68b     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   663
   13 b4594d867745     5    1     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   664
   11 bab5d5bf48bd     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   665
    8 d62d843c9a01     5    1     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   666
    9 dcbb326fdec2     6    1     7 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   667
   12 e46a4836065c     5    1     6 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   668
    7 e7d9710d9fc6     4    1     5 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   669
    5 f0f3ef9a6cd5     3    1     4 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   670
    2 fa942426a6fd     1    1     2 000000000000
778afb036245 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2082
diff changeset
   671
   10 ff43616e5d0f     6    1     7 000000000000
2082
3f787182509f discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   672
  $ cd ..