tests/test-obsolete-divergent.t
author Anton Shestakov <av6@dwimlabs.net>
Mon, 26 Mar 2018 17:00:12 +0800
changeset 37685 76cd5816268e
parent 37024 7c18798fc24d
child 37686 b1b1b0626f59
permissions -rw-r--r--
templates: add whyunstable template keyword
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     1
Test file dedicated to testing the divergent troubles from obsolete changeset.
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     2
18644
3e92772d5383 spelling: fix some minor issues found by spell checker
Mads Kiilerich <mads@kiilerich.com>
parents: 18382
diff changeset
     3
This is the most complex troubles from far so we isolate it in a dedicated
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     4
file.
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     5
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     6
Enable obsolete
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     7
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     8
  $ cat >> $HGRCPATH << EOF
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     9
  > [ui]
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34286
diff changeset
    10
  > logtemplate = {rev}:{node|short} {desc}{if(obsfate, " [{join(obsfate, "; ")}]")}\n
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 21789
diff changeset
    11
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34851
diff changeset
    12
  > evolution.createmarkers=True
33330
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
    13
  > [extensions]
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
    14
  > drawdag=$TESTDIR/drawdag.py
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    15
  > [alias]
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    16
  > debugobsolete = debugobsolete -d '0 0'
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    17
  > [phases]
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    18
  > publish=False
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    19
  > EOF
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    20
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    21
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    22
  $ mkcommit() {
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    23
  >    echo "$1" > "$1"
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    24
  >    hg add "$1"
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    25
  >    hg ci -m "$1"
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    26
  > }
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    27
  $ getid() {
21789
15baed3f24ee branchmap: don't use ui.warn for debug message
Matt Mackall <mpm@selenic.com>
parents: 21024
diff changeset
    28
  >    hg log --hidden -r "desc('$1')" -T '{node}\n'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    29
  > }
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    30
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    31
setup repo
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    32
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    33
  $ hg init reference
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    34
  $ cd reference
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    35
  $ mkcommit base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    36
  $ mkcommit A_0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    37
  $ hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    38
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    39
  $ mkcommit A_1
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    40
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    41
  $ hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    42
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    43
  $ mkcommit A_2
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    44
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    45
  $ hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    46
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    47
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    48
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    49
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    50
  $ newcase() {
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    51
  >    hg clone -u 0 -q reference $1
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    52
  >    cd $1
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    53
  > }
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    54
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    55
direct divergence
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    56
-----------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    57
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    58
A_1 have two direct and divergent successors A_1 and A_1
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    59
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    60
  $ newcase direct
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    61
  $ hg debugobsolete `getid A_0` `getid A_1`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
    62
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    63
  $ hg debugobsolete `getid A_0` `getid A_2`
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
    64
  2 new content-divergent changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    65
  $ hg log -G --hidden
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
    66
  *  3:392fd25390da A_2
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    67
  |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
    68
  | *  2:82623d38b9ba A_1
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    69
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
    70
  | x  1:007dc284c1f8 A_0 [rewritten as 2:82623d38b9ba; rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    71
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    72
  @  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    73
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
    74
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    75
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    76
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    77
  007dc284c1f8
18365
4148414da120 obsolete: process markers in a stable order
Mads Kiilerich <mads@kiilerich.com>
parents: 18267
diff changeset
    78
      82623d38b9ba
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
    79
      392fd25390da
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    80
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    81
      82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    82
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    83
      392fd25390da
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
    84
  $ hg log -r 'contentdivergent()'
18071
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
    85
  2:82623d38b9ba A_1
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
    86
  3:392fd25390da A_2
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    87
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    88
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    89
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    90
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    91
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    92
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    93
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    94
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    95
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    96
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    97
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    98
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
    99
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   100
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   101
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   102
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   103
      392fd25390da
18073
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   104
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   105
check that mercurial refuse to push
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   106
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   107
  $ hg init ../other
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   108
  $ hg push ../other
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   109
  pushing to ../other
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   110
  searching for changes
33688
2194a8723138 evolution: rename divergent to content-divergent
Boris Feld <boris.feld@octobus.net>
parents: 33542
diff changeset
   111
  abort: push includes content-divergent changeset: 392fd25390da!
18073
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   112
  [255]
e411fd79ca69 obsolete: refuse to push divergent changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18071
diff changeset
   113
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   114
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   115
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   116
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   117
indirect divergence with known changeset
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   118
-------------------------------------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   119
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   120
  $ newcase indirect_known
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   121
  $ hg debugobsolete `getid A_0` `getid A_1`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   122
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   123
  $ hg debugobsolete `getid A_0` `getid A_2`
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
   124
  2 new content-divergent changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   125
  $ mkcommit A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   126
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   127
  $ hg debugobsolete `getid A_2` `getid A_3`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   128
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   129
  $ hg log -G --hidden
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   130
  @  4:01f36c5a8fda A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   131
  |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   132
  | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   133
  |/
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   134
  | *  2:82623d38b9ba A_1
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   135
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   136
  | x  1:007dc284c1f8 A_0 [rewritten as 2:82623d38b9ba; rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   137
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   138
  o  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   139
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   140
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   141
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   142
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   143
  007dc284c1f8
18365
4148414da120 obsolete: process markers in a stable order
Mads Kiilerich <mads@kiilerich.com>
parents: 18267
diff changeset
   144
      82623d38b9ba
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   145
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   146
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   147
      82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   148
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   149
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   150
  01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   151
      01f36c5a8fda
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   152
  $ hg log -r 'contentdivergent()'
18071
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   153
  2:82623d38b9ba A_1
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   154
  4:01f36c5a8fda A_3
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   155
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   156
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   157
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   158
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   159
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   160
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   161
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   162
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   163
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   164
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   165
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   166
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   167
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   168
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   169
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   170
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   171
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   172
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   173
      01f36c5a8fda
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   174
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   175
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   176
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   177
indirect divergence with known changeset
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   178
-------------------------------------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   179
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   180
  $ newcase indirect_unknown
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   181
  $ hg debugobsolete `getid A_0` aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   182
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   183
  $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid A_1`
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   184
  $ hg debugobsolete `getid A_0` `getid A_2`
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
   185
  2 new content-divergent changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   186
  $ hg log -G --hidden
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   187
  *  3:392fd25390da A_2
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   188
  |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   189
  | *  2:82623d38b9ba A_1
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   190
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   191
  | x  1:007dc284c1f8 A_0 [rewritten as 2:82623d38b9ba; rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   192
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   193
  @  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   194
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   195
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   196
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   197
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   198
  007dc284c1f8
18365
4148414da120 obsolete: process markers in a stable order
Mads Kiilerich <mads@kiilerich.com>
parents: 18267
diff changeset
   199
      82623d38b9ba
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   200
      392fd25390da
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   201
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   202
      82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   203
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   204
      392fd25390da
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   205
  $ hg log -r 'contentdivergent()'
18071
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   206
  2:82623d38b9ba A_1
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   207
  3:392fd25390da A_2
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   208
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   209
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   210
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   211
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   212
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   213
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   214
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   215
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   216
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   217
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   218
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   219
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   220
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   221
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   222
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   223
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   224
      392fd25390da
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   225
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   226
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   227
do not take unknown node in account if they are final
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   228
-----------------------------------------------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   229
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   230
  $ newcase final-unknown
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   231
  $ hg debugobsolete `getid A_0` `getid A_1`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   232
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   233
  $ hg debugobsolete `getid A_1` `getid A_2`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   234
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   235
  $ hg debugobsolete `getid A_0` bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   236
  $ hg debugobsolete bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   237
  $ hg debugobsolete `getid A_1` dddddddddddddddddddddddddddddddddddddddd
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   238
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   239
  $ hg debugsuccessorssets --hidden 'desc('A_0')'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   240
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   241
      392fd25390da
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   242
  $ hg debugsuccessorssets 'desc('A_0')' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   243
  $ hg debugsuccessorssets 'desc('A_0')' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   244
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   245
      82623d38b9ba
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   246
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   247
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   248
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   249
divergence that converge again is not divergence anymore
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   250
-----------------------------------------------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   251
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   252
  $ newcase converged_divergence
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   253
  $ hg debugobsolete `getid A_0` `getid A_1`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   254
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   255
  $ hg debugobsolete `getid A_0` `getid A_2`
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
   256
  2 new content-divergent changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   257
  $ mkcommit A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   258
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   259
  $ hg debugobsolete `getid A_1` `getid A_3`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   260
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   261
  $ hg debugobsolete `getid A_2` `getid A_3`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   262
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   263
  $ hg log -G --hidden
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   264
  @  4:01f36c5a8fda A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   265
  |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   266
  | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   267
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   268
  | x  2:82623d38b9ba A_1 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   269
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   270
  | x  1:007dc284c1f8 A_0 [rewritten as 2:82623d38b9ba; rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   271
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   272
  o  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   273
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   274
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   275
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   276
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   277
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   278
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   279
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   280
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   281
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   282
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   283
  01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   284
      01f36c5a8fda
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   285
  $ hg log -r 'contentdivergent()'
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   286
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   287
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   288
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   289
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   290
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   291
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   292
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   293
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   294
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   295
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   296
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   297
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   298
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   299
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   300
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   301
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   302
      01f36c5a8fda
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   303
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   304
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   305
split is not divergences
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   306
-----------------------------
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   307
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   308
  $ newcase split
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   309
  $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   310
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   311
  $ hg log -G --hidden
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   312
  o  3:392fd25390da A_2
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   313
  |
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   314
  | o  2:82623d38b9ba A_1
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   315
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   316
  | x  1:007dc284c1f8 A_0 [split as 2:82623d38b9ba, 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   317
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   318
  @  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   319
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   320
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   321
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   322
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   323
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   324
      82623d38b9ba 392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   325
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   326
      82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   327
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   328
      392fd25390da
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   329
  $ hg log -r 'contentdivergent()'
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   330
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   331
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   332
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   333
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   334
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   335
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   336
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   337
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   338
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   339
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   340
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   341
      82623d38b9ba 392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   342
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   343
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   344
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   345
      392fd25390da
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   346
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 18644
diff changeset
   347
Even when subsequent rewriting happen
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   348
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   349
  $ mkcommit A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   350
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   351
  $ hg debugobsolete `getid A_1` `getid A_3`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   352
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   353
  $ hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   354
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   355
  $ mkcommit A_4
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   356
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   357
  $ hg debugobsolete `getid A_2` `getid A_4`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   358
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   359
  $ hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   360
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   361
  $ mkcommit A_5
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   362
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   363
  $ hg debugobsolete `getid A_4` `getid A_5`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   364
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   365
  $ hg log -G --hidden
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   366
  @  6:e442cfc57690 A_5
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   367
  |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   368
  | x  5:6a411f0d7a0a A_4 [rewritten as 6:e442cfc57690]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   369
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   370
  | o  4:01f36c5a8fda A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   371
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   372
  | x  3:392fd25390da A_2 [rewritten as 5:6a411f0d7a0a]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   373
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   374
  | x  2:82623d38b9ba A_1 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   375
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   376
  | x  1:007dc284c1f8 A_0 [split as 2:82623d38b9ba, 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   377
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   378
  o  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   379
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   380
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   381
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   382
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   383
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   384
      01f36c5a8fda e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   385
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   386
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   387
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   388
      e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   389
  01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   390
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   391
  6a411f0d7a0a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   392
      e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   393
  e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   394
      e442cfc57690
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   395
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   396
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   397
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   398
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   399
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   400
  e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   401
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   402
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   403
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   404
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   405
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   406
      82623d38b9ba 392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   407
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   408
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   409
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   410
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   411
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   412
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   413
  6a411f0d7a0a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   414
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   415
  e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   416
      e442cfc57690
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   417
  $ hg log -r 'contentdivergent()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   418
18644
3e92772d5383 spelling: fix some minor issues found by spell checker
Mads Kiilerich <mads@kiilerich.com>
parents: 18382
diff changeset
   419
Check more complex obsolescence graft (with divergence)
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   420
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   421
  $ mkcommit B_0; hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   422
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   423
  $ hg debugobsolete `getid B_0` `getid A_2`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   424
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   425
  $ mkcommit A_7; hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   426
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   427
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   428
  $ mkcommit A_8; hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   429
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   430
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   431
  $ hg debugobsolete `getid A_5` `getid A_7` `getid A_8`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   432
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   433
  $ mkcommit A_9; hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   434
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   435
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   436
  $ hg debugobsolete `getid A_5` `getid A_9`
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
   437
  4 new content-divergent changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   438
  $ hg log -G --hidden
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   439
  *  10:bed64f5d2f5a A_9
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   440
  |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   441
  | *  9:14608b260df8 A_8
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   442
  |/
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   443
  | *  8:7ae126973a96 A_7
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   444
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   445
  | x  7:3750ebee865d B_0 [rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   446
  | |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   447
  | x  6:e442cfc57690 A_5 [rewritten as 10:bed64f5d2f5a; split as 8:7ae126973a96, 9:14608b260df8]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   448
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   449
  | x  5:6a411f0d7a0a A_4 [rewritten as 6:e442cfc57690]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   450
  |/
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   451
  | *  4:01f36c5a8fda A_3
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   452
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   453
  | x  3:392fd25390da A_2 [rewritten as 5:6a411f0d7a0a]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   454
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   455
  | x  2:82623d38b9ba A_1 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   456
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   457
  | x  1:007dc284c1f8 A_0 [split as 2:82623d38b9ba, 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   458
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   459
  @  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   460
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   461
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   462
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   463
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   464
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   465
      01f36c5a8fda bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   466
      01f36c5a8fda 7ae126973a96 14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   467
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   468
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   469
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   470
      bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   471
      7ae126973a96 14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   472
  01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   473
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   474
  6a411f0d7a0a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   475
      bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   476
      7ae126973a96 14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   477
  e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   478
      bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   479
      7ae126973a96 14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   480
  3750ebee865d
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   481
      bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   482
      7ae126973a96 14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   483
  7ae126973a96
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   484
      7ae126973a96
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   485
  14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   486
      14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   487
  bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   488
      bed64f5d2f5a
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   489
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   490
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   491
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   492
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   493
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   494
  7ae126973a96
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   495
      7ae126973a96
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   496
  14608b260df8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   497
      14608b260df8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   498
  bed64f5d2f5a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   499
      bed64f5d2f5a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   500
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   501
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   502
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   503
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   504
      82623d38b9ba 392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   505
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   506
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   507
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   508
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   509
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   510
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   511
  6a411f0d7a0a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   512
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   513
  e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   514
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   515
  3750ebee865d
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   516
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   517
  7ae126973a96
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   518
      7ae126973a96
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   519
  14608b260df8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   520
      14608b260df8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   521
  bed64f5d2f5a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   522
      bed64f5d2f5a
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   523
  $ hg log -r 'contentdivergent()'
18071
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   524
  4:01f36c5a8fda A_3
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   525
  8:7ae126973a96 A_7
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   526
  9:14608b260df8 A_8
bea754715961 obsolete: add revset and test for divergent changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18069
diff changeset
   527
  10:bed64f5d2f5a A_9
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   528
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   529
fix the divergence
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   530
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   531
  $ mkcommit A_A; hg up 0
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   532
  created new head
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   533
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   534
  $ hg debugobsolete `getid A_9` `getid A_A`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   535
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   536
  $ hg debugobsolete `getid A_7` `getid A_A`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   537
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   538
  $ hg debugobsolete `getid A_8` `getid A_A`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   539
  obsoleted 1 changesets
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   540
  $ hg log -G --hidden
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   541
  o  11:a139f71be9da A_A
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   542
  |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   543
  | x  10:bed64f5d2f5a A_9 [rewritten as 11:a139f71be9da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   544
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   545
  | x  9:14608b260df8 A_8 [rewritten as 11:a139f71be9da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   546
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   547
  | x  8:7ae126973a96 A_7 [rewritten as 11:a139f71be9da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   548
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   549
  | x  7:3750ebee865d B_0 [rewritten as 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   550
  | |
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   551
  | x  6:e442cfc57690 A_5 [rewritten as 10:bed64f5d2f5a; split as 8:7ae126973a96, 9:14608b260df8]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   552
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   553
  | x  5:6a411f0d7a0a A_4 [rewritten as 6:e442cfc57690]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   554
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   555
  | o  4:01f36c5a8fda A_3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   556
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   557
  | x  3:392fd25390da A_2 [rewritten as 5:6a411f0d7a0a]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   558
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   559
  | x  2:82623d38b9ba A_1 [rewritten as 4:01f36c5a8fda]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   560
  |/
34851
6f53a53245a2 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
   561
  | x  1:007dc284c1f8 A_0 [split as 2:82623d38b9ba, 3:392fd25390da]
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   562
  |/
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   563
  @  0:d20a80d4def3 base
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   564
  
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   565
  $ hg debugsuccessorssets --hidden 'all()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   566
  d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   567
      d20a80d4def3
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   568
  007dc284c1f8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   569
      01f36c5a8fda a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   570
  82623d38b9ba
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   571
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   572
  392fd25390da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   573
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   574
  01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   575
      01f36c5a8fda
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   576
  6a411f0d7a0a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   577
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   578
  e442cfc57690
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   579
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   580
  3750ebee865d
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   581
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   582
  7ae126973a96
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   583
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   584
  14608b260df8
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   585
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   586
  bed64f5d2f5a
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   587
      a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   588
  a139f71be9da
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   589
      a139f71be9da
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   590
  $ hg debugsuccessorssets 'all()' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   591
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   592
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   593
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   594
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   595
  a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   596
      a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   597
  $ hg debugsuccessorssets 'all()' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   598
  d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   599
      d20a80d4def3
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   600
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   601
      82623d38b9ba 392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   602
  82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   603
      82623d38b9ba
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   604
  392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   605
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   606
  01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   607
      01f36c5a8fda
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   608
  6a411f0d7a0a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   609
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   610
  e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   611
      e442cfc57690
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   612
  3750ebee865d
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   613
      392fd25390da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   614
  7ae126973a96
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   615
      a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   616
  14608b260df8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   617
      a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   618
  bed64f5d2f5a
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   619
      a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   620
  a139f71be9da
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   621
      a139f71be9da
33775
f078d7358e90 revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   622
  $ hg log -r 'contentdivergent()'
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   623
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   624
#if serve
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   625
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   626
  $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid --config web.view=all \
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   627
  >   -A access.log -E errors.log
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   628
  $ cat hg.pid >> $DAEMON_PIDS
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   629
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   630
check an obsolete changeset that was rewritten and also split
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   631
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   632
  $ get-with-headers.py localhost:$HGPORT 'rev/e442cfc57690?style=paper' | egrep 'rewritten|split'
36322
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   633
   <td>rewritten as <a href="/rev/bed64f5d2f5a?style=paper">bed64f5d2f5a</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span><br>
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   634
  split as <a href="/rev/7ae126973a96?style=paper">7ae126973a96</a> <a href="/rev/14608b260df8?style=paper">14608b260df8</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   635
  $ get-with-headers.py localhost:$HGPORT 'rev/e442cfc57690?style=coal' | egrep 'rewritten|split'
36322
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   636
   <td>rewritten as <a href="/rev/bed64f5d2f5a?style=coal">bed64f5d2f5a</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span><br>
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   637
  split as <a href="/rev/7ae126973a96?style=coal">7ae126973a96</a> <a href="/rev/14608b260df8?style=coal">14608b260df8</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   638
  $ get-with-headers.py localhost:$HGPORT 'rev/e442cfc57690?style=gitweb' | egrep 'rewritten|split'
36322
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   639
  <td>rewritten as <a class="list" href="/rev/bed64f5d2f5a?style=gitweb">bed64f5d2f5a</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   640
  <td>split as <a class="list" href="/rev/7ae126973a96?style=gitweb">7ae126973a96</a> <a class="list" href="/rev/14608b260df8?style=gitweb">14608b260df8</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   641
  $ get-with-headers.py localhost:$HGPORT 'rev/e442cfc57690?style=monoblue' | egrep 'rewritten|split'
36322
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   642
  <dd>rewritten as <a href="/rev/bed64f5d2f5a?style=monoblue">bed64f5d2f5a</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></dd>
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   643
  <dd>split as <a href="/rev/7ae126973a96?style=monoblue">7ae126973a96</a> <a href="/rev/14608b260df8?style=monoblue">14608b260df8</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></dd>
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   644
  $ get-with-headers.py localhost:$HGPORT 'rev/e442cfc57690?style=spartan' | egrep 'rewritten|split'
36322
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   645
  <td class="obsolete">rewritten as <a href="/rev/bed64f5d2f5a?style=spartan">bed64f5d2f5a</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
f3fd4fe0506f hgweb: show each obsfateentry on its own line
Anton Shestakov <av6@dwimlabs.net>
parents: 36321
diff changeset
   646
  <td class="obsolete">split as <a href="/rev/7ae126973a96?style=spartan">7ae126973a96</a> <a href="/rev/14608b260df8?style=spartan">14608b260df8</a>  by &#116;&#101;&#115;&#116; <span class="age">Thu, 01 Jan 1970 00:00:00 +0000</span></td>
36321
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   647
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   648
  $ killdaemons.py
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   649
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   650
#endif
ef7b48e6388d tests: check obsolete changeset with two obsfate entries
Anton Shestakov <av6@dwimlabs.net>
parents: 35709
diff changeset
   651
18068
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   652
  $ cd ..
4bec77e62c00 obsolete: compute successors set
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   653
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   654
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   655
Subset does not diverge
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   656
------------------------------
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   657
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   658
Do not report divergent successors-set if it is a subset of another
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   659
successors-set. (report [A,B] not [A] + [A,B])
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   660
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   661
  $ newcase subset
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   662
  $ hg debugobsolete `getid A_0` `getid A_2`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33330
diff changeset
   663
  obsoleted 1 changesets
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   664
  $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18234
diff changeset
   665
  $ hg debugsuccessorssets --hidden 'desc('A_0')'
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   666
  007dc284c1f8
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   667
      82623d38b9ba 392fd25390da
33274
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   668
  $ hg debugsuccessorssets 'desc('A_0')' --closest
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   669
  $ hg debugsuccessorssets 'desc('A_0')' --closest --hidden
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   670
  007dc284c1f8
68f3e819d41d obsolete: closest divergent support
Boris Feld <boris.feld@octobus.net>
parents: 22955
diff changeset
   671
      82623d38b9ba 392fd25390da
18069
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   672
f84e731cbd20 obsolete: drop successors sets which are subset of another one
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18068
diff changeset
   673
  $ cd ..
33330
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   674
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   675
Use scmutil.cleanupnodes API to create divergence
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   676
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   677
  $ hg init cleanupnodes
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   678
  $ cd cleanupnodes
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   679
  $ hg debugdrawdag <<'EOS'
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   680
  >   B1  B3 B4
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   681
  >   |     \|
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   682
  >   A      Z
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   683
  > EOS
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   684
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   685
  $ hg update -q B1
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   686
  $ echo 3 >> B
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   687
  $ hg commit --amend -m B2
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   688
  $ cat > $TESTTMP/scmutilcleanup.py <<EOF
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   689
  > from mercurial import registrar, scmutil
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   690
  > cmdtable = {}
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   691
  > command = registrar.command(cmdtable)
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   692
  > @command('cleanup')
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   693
  > def cleanup(ui, repo):
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   694
  >     def node(expr):
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   695
  >         unfi = repo.unfiltered()
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   696
  >         rev = unfi.revs(expr).first()
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   697
  >         return unfi.changelog.node(rev)
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   698
  >     with repo.wlock(), repo.lock(), repo.transaction('delayedstrip'):
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   699
  >         mapping = {node('desc(B1)'): [node('desc(B3)')],
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   700
  >                    node('desc(B3)'): [node('desc(B4)')]}
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   701
  >         scmutil.cleanupnodes(repo, mapping, 'test')
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   702
  > EOF
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   703
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   704
  $ rm .hg/localtags
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   705
  $ hg cleanup --config extensions.t=$TESTTMP/scmutilcleanup.py
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
   706
  2 new content-divergent changesets
33709
511d6ae462f3 template: rename troubles templatekw into instabilities
Boris Feld <boris.feld@octobus.net>
parents: 33688
diff changeset
   707
  $ hg log -G -T '{rev}:{node|short} {desc} {instabilities}' -r 'sort(all(), topo)'
33688
2194a8723138 evolution: rename divergent to content-divergent
Boris Feld <boris.feld@octobus.net>
parents: 33542
diff changeset
   708
  @  5:1a2a9b5b0030 B2 content-divergent
33330
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   709
  |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34961
diff changeset
   710
  | *  4:70d5a63ca112 B4 content-divergent
33330
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   711
  | |
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   712
  | o  1:48b9aae0607f Z
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   713
  |
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   714
  o  0:426bada5c675 A
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   715
  
ba43e5ee9c6d scmutil: make cleanupnodes handle filtered node
Jun Wu <quark@fb.com>
parents: 33274
diff changeset
   716
  $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
   717
  a178212c3433c4e77b573f6011e29affb8aefa33 1a2a9b5b0030632400aa78e00388c20f99d3ec44 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'test'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
   718
  a178212c3433c4e77b573f6011e29affb8aefa33 ad6478fb94ecec98b86daae98722865d494ac561 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '13', 'operation': 'test', 'user': 'test'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
   719
  ad6478fb94ecec98b86daae98722865d494ac561 70d5a63ca112acb3764bc1d7320ca90ea688d671 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '9', 'operation': 'test', 'user': 'test'}
36954
efc4fb344c05 debug: add debugwhyunstable that explains instabilities
Anton Shestakov <av6@dwimlabs.net>
parents: 36322
diff changeset
   720
efc4fb344c05 debug: add debugwhyunstable that explains instabilities
Anton Shestakov <av6@dwimlabs.net>
parents: 36322
diff changeset
   721
  $ hg debugwhyunstable 1a2a9b5b0030
efc4fb344c05 debug: add debugwhyunstable that explains instabilities
Anton Shestakov <av6@dwimlabs.net>
parents: 36322
diff changeset
   722
  content-divergent: 70d5a63ca112acb3764bc1d7320ca90ea688d671 (draft) predecessor a178212c3433c4e77b573f6011e29affb8aefa33
36955
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   723
37685
76cd5816268e templates: add whyunstable template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 37024
diff changeset
   724
  $ hg log -r 1a2a9b5b0030 --hidden -T '{whyunstable}\n'
76cd5816268e templates: add whyunstable template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 37024
diff changeset
   725
  content-divergent: 4:70d5a63ca112 (draft) predecessor a178212c3433
76cd5816268e templates: add whyunstable template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 37024
diff changeset
   726
  $ hg log -r 1a2a9b5b0030 --hidden -T '{whyunstable%"{instability}:{divergentnodes} {reason} {node}\n"}'
76cd5816268e templates: add whyunstable template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 37024
diff changeset
   727
  content-divergent: 4:70d5a63ca112 (draft) predecessor a178212c3433c4e77b573f6011e29affb8aefa33
76cd5816268e templates: add whyunstable template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 37024
diff changeset
   728
36955
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   729
#if serve
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   730
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   731
  $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   732
  $ cat hg.pid >> $DAEMON_PIDS
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   733
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   734
check explanation for a content-divergent changeset
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   735
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   736
  $ get-with-headers.py localhost:$HGPORT 'rev/1a2a9b5b0030?style=paper' | grep divergent:
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   737
   <td>content-divergent: <a href="/rev/70d5a63ca112?style=paper">70d5a63ca112</a> (draft) predecessor <a href="/rev/a178212c3433?style=paper">a178212c3433</a></td>
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   738
  $ get-with-headers.py localhost:$HGPORT 'rev/1a2a9b5b0030?style=coal' | grep divergent:
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   739
   <td>content-divergent: <a href="/rev/70d5a63ca112?style=coal">70d5a63ca112</a> (draft) predecessor <a href="/rev/a178212c3433?style=coal">a178212c3433</a></td>
37024
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   740
  $ get-with-headers.py localhost:$HGPORT 'rev/1a2a9b5b0030?style=gitweb' | grep divergent:
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   741
  <td>content-divergent: <a class="list" href="/rev/70d5a63ca112?style=gitweb">70d5a63ca112</a> (draft) predecessor <a class="list" href="/rev/a178212c3433?style=gitweb">a178212c3433</a></td>
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   742
  $ get-with-headers.py localhost:$HGPORT 'rev/1a2a9b5b0030?style=monoblue' | grep divergent:
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   743
  <dd>content-divergent: <a href="/rev/70d5a63ca112?style=monoblue">70d5a63ca112</a> (draft) predecessor <a href="/rev/a178212c3433?style=monoblue">a178212c3433</a></dd>
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   744
  $ get-with-headers.py localhost:$HGPORT 'rev/1a2a9b5b0030?style=spartan' | grep divergent:
7c18798fc24d hgweb: explain instabilities of unstable changesets (the rest of the themes)
Anton Shestakov <av6@dwimlabs.net>
parents: 36955
diff changeset
   745
  <td class="unstable">content-divergent: <a href="/rev/70d5a63ca112?style=spartan">70d5a63ca112</a> (draft) predecessor <a href="/rev/a178212c3433?style=spartan">a178212c3433</a></td>
36955
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   746
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   747
  $ killdaemons.py
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   748
f21798a6bc20 hgweb: explain instabilities of unstable changesets
Anton Shestakov <av6@dwimlabs.net>
parents: 36954
diff changeset
   749
#endif