tests/test-phases.t
author Gregory Szorc <gregory.szorc@gmail.com>
Mon, 04 Feb 2019 09:00:52 -0800
changeset 41535 7a90ff8cd14c
parent 40919 a0886a4d6dce
child 42893 34a46d48d24e
permissions -rw-r--r--
crecord: use raw string for regular expression \s emits a SyntaxWarning in Python 3.8. Use a raw string to avoid escaping the \. Differential Revision: https://phab.mercurial-scm.org/D5819
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     1
  $ cat > $TESTTMP/hook.sh << 'EOF'
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     2
  > echo "test-hook-close-phase: $HG_NODE:  $HG_OLDPHASE -> $HG_PHASE"
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     3
  > EOF
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     4
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     5
  $ cat >> $HGRCPATH << EOF
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     6
  > [extensions]
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
     7
  > phasereport=$TESTDIR/testlib/ext-phase-report.py
34710
cdf833d7de98 phase: add a dedicated txnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
     8
  > [hooks]
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
     9
  > txnclose-phase.test = sh $TESTTMP/hook.sh
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    10
  > EOF
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    11
16013
2a1d97630f7f tests: don't use alias
Mads Kiilerich <mads@kiilerich.com>
parents: 15907
diff changeset
    12
  $ hglog() { hg log --template "{rev} {phaseidx} {desc}\n" $*; }
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    13
  $ mkcommit() {
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    14
  >    echo "$1" > "$1"
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    15
  >    hg add "$1"
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    16
  >    message="$1"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    17
  >    shift
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    18
  >    hg ci -m "$message" $*
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    19
  > }
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    20
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    21
  $ hg init initialrepo
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
  $ cd initialrepo
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    23
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    24
Cannot change null revision phase
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    25
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    26
  $ hg phase --force --secret null
16659
58edd786e96f phase: make if abort on nullid for the good reason
Patrick Mezard <patrick@mezard.eu>
parents: 16622
diff changeset
    27
  abort: cannot change null revision phase
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    28
  [255]
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    29
  $ hg phase null
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    30
  -1: public
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
    31
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    32
  $ mkcommit A
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    33
  test-debug-phase: new rev 0:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    34
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    35
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    36
New commit are draft by default
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    37
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    38
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    39
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    40
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    41
Following commit are draft too
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    42
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    43
  $ mkcommit B
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    44
  test-debug-phase: new rev 1:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    45
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> draft
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    46
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    47
  $ hglog
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    48
  1 1 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    49
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    50
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    51
Draft commit are properly created over public one:
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    52
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
    53
  $ hg phase --public .
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    54
  test-debug-phase: move rev 0: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    55
  test-debug-phase: move rev 1: 1 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    56
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    57
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  draft -> public
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
    58
  $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
    59
  1: public
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    60
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    61
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    62
  0 0 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    63
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    64
  $ mkcommit C
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    65
  test-debug-phase: new rev 2:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    66
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    67
  $ mkcommit D
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    68
  test-debug-phase: new rev 3:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    69
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> draft
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    70
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    71
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    72
  3 1 D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    73
  2 1 C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    74
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    75
  0 0 A
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    76
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    77
Test creating changeset as secret
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    78
16030
308406677e9d phases: allow phase name in phases.new-commit settings
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16013
diff changeset
    79
  $ mkcommit E --config phases.new-commit='secret'
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    80
  test-debug-phase: new rev 4:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    81
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:   -> secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    82
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    83
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    84
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    85
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    86
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    87
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    88
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    89
Test the secret property is inherited
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    90
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    91
  $ mkcommit H
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
    92
  test-debug-phase: new rev 5:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
    93
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:   -> secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    94
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    95
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    96
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    97
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    98
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    99
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   100
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   101
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   102
Even on merge
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   103
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   104
  $ hg up -q 1
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   105
  $ mkcommit "B'"
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   106
  test-debug-phase: new rev 6:  x -> 1
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   107
  created new head
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   108
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> draft
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   109
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   110
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   111
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   112
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   113
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   114
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   115
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   116
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   117
  $ hg merge 4 # E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   118
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   119
  (branch merge, don't forget to commit)
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   120
  $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   121
  6: draft
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
   122
  4: secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   123
  $ hg ci -m "merge B' and E"
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   124
  test-debug-phase: new rev 7:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   125
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:   -> secret
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   126
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   127
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   128
  7 2 merge B' and E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   129
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   130
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   131
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   132
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   133
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   134
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   135
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
   136
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   137
Test secret changeset are not pushed
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   138
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   139
  $ hg init ../push-dest
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   140
  $ cat > ../push-dest/.hg/hgrc << EOF
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   141
  > [phases]
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   142
  > publish=False
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   143
  > EOF
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   144
  $ hg outgoing ../push-dest --template='{rev} {phase} {desc|firstline}\n'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   145
  comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   146
  searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   147
  0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   148
  1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   149
  2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   150
  3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   151
  6 draft B'
17198
ecde35a1af9e outgoing: accept revset argument for --rev
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
   152
  $ hg outgoing -r 'branch(default)' ../push-dest --template='{rev} {phase} {desc|firstline}\n'
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   153
  comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   154
  searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   155
  0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   156
  1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   157
  2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   158
  3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   159
  6 draft B'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   160
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   161
  $ hg push ../push-dest -f # force because we push multiple heads
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   162
  pushing to ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   163
  searching for changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   164
  adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   165
  adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   166
  adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   167
  added 5 changesets with 5 changes to 5 files (+1 heads)
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   168
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   169
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   170
  test-debug-phase: new rev 2:  x -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   171
  test-debug-phase: new rev 3:  x -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   172
  test-debug-phase: new rev 4:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   173
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   174
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   175
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   176
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   177
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> draft
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   178
  $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   179
  7 2 merge B' and E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   180
  6 1 B'
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   181
  5 2 H
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   182
  4 2 E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   183
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   184
  2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   185
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   186
  0 0 A
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   187
  $ cd ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   188
  $ hglog
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   189
  4 1 B'
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   190
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   191
  2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   192
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   193
  0 0 A
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   194
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   195
(Issue3303)
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   196
Check that remote secret changeset are ignore when checking creation of remote heads
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   197
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   198
We add a secret head into the push destination. This secret head shadows a
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   199
visible shared between the initial repo and the push destination.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   200
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   201
  $ hg up -q 4 # B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   202
  $ mkcommit Z --config phases.new-commit=secret
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   203
  test-debug-phase: new rev 5:  x -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   204
  test-hook-close-phase: 2713879da13d6eea1ff22b442a5a87cb31a7ce6a:   -> secret
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   205
  $ hg phase .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   206
  5: secret
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   207
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   208
We now try to push a new public changeset that descend from the common public
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
   209
head shadowed by the remote secret head.
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   210
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   211
  $ cd ../initialrepo
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   212
  $ hg up -q 6 #B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   213
  $ mkcommit I
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   214
  test-debug-phase: new rev 8:  x -> 1
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   215
  created new head
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   216
  test-hook-close-phase: 6d6770faffce199f1fddd1cf87f6f026138cf061:   -> draft
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   217
  $ hg push ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   218
  pushing to ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   219
  searching for changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   220
  adding changesets
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   221
  adding manifests
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   222
  adding file changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   223
  added 1 changesets with 1 changes to 1 files (+1 heads)
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   224
  test-debug-phase: new rev 6:  x -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   225
  test-hook-close-phase: 6d6770faffce199f1fddd1cf87f6f026138cf061:   -> draft
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   226
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   227
:note: The "(+1 heads)" is wrong as we do not had any visible head
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   228
18462
593eb3786165 documentation: update to new filter names
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18394
diff changeset
   229
check that branch cache with "served" filter are properly computed and stored
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   230
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   231
  $ ls ../push-dest/.hg/cache/branch2*
32268
24f55686a63d caches: stop warming the cache after changegroup application
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31767
diff changeset
   232
  ../push-dest/.hg/cache/branch2-base
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   233
  ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   234
  $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   235
  6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   236
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   237
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   238
  $ hg heads -R ../push-dest --template '{rev}:{node} {phase}\n'  #update visible cache too
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   239
  6:6d6770faffce199f1fddd1cf87f6f026138cf061 draft
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   240
  5:2713879da13d6eea1ff22b442a5a87cb31a7ce6a secret
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   241
  3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e draft
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   242
  $ ls ../push-dest/.hg/cache/branch2*
32268
24f55686a63d caches: stop warming the cache after changegroup application
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31767
diff changeset
   243
  ../push-dest/.hg/cache/branch2-base
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   244
  ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   245
  ../push-dest/.hg/cache/branch2-visible
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   246
  $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
   247
  6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   248
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   249
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   250
  $ cat ../push-dest/.hg/cache/branch2-visible
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   251
  6d6770faffce199f1fddd1cf87f6f026138cf061 6
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   252
  b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   253
  2713879da13d6eea1ff22b442a5a87cb31a7ce6a o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
   254
  6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
   255
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   256
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   257
Restore condition prior extra insertion.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   258
  $ hg -q --config extensions.mq= strip .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
   259
  $ hg up -q 7
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   260
  $ cd ..
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   261
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   262
Test secret changeset are not pull
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   263
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   264
  $ hg init pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   265
  $ cd pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   266
  $ hg pull ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   267
  pulling from ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   268
  requesting all changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   269
  adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   270
  adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   271
  adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   272
  added 5 changesets with 5 changes to 5 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33773
diff changeset
   273
  new changesets 4a2df7238c3b:cf9fe039dfd6
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   274
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   275
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   276
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   277
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   278
  test-debug-phase: new rev 4:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   279
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   280
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   281
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   282
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   283
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   284
  (run 'hg heads' to see heads, 'hg merge' to merge)
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   285
  $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   286
  4 0 B'
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   287
  3 0 D
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   288
  2 0 C
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   289
  1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
   290
  0 0 A
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   291
  $ cd ..
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   292
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   293
But secret can still be bundled explicitly
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   294
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   295
  $ cd initialrepo
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   296
  $ hg bundle --base '4^' -r 'children(4)' ../secret-bundle.hg
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   297
  4 changesets found
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   298
  $ cd ..
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
   299
15888
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   300
Test secret changeset are not cloned
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   301
(during local clone)
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   302
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   303
  $ hg clone -qU initialrepo clone-dest
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   304
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   305
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   306
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   307
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   308
  test-debug-phase: new rev 4:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   309
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   310
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   311
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   312
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   313
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
15888
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   314
  $ hglog -R clone-dest
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   315
  4 0 B'
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   316
  3 0 D
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   317
  2 0 C
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   318
  1 0 B
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   319
  0 0 A
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
   320
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   321
Test summary
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   322
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   323
  $ hg summary -R clone-dest --verbose
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   324
  parent: -1:000000000000  (no revision checked out)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   325
  branch: default
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   326
  commit: (clean)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   327
  update: 5 new changesets (update)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   328
  $ hg summary -R initialrepo
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   329
  parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   330
   merge B' and E
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   331
  branch: default
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
   332
  commit: (clean) (secret)
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   333
  update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
   334
  phases: 3 draft, 3 secret
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   335
  $ hg summary -R initialrepo --quiet
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   336
  parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   337
  update: 1 new changesets, 2 branch heads (merge)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
   338
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   339
Test revset
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   340
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   341
  $ cd initialrepo
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   342
  $ hglog -r 'public()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   343
  0 0 A
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   344
  1 0 B
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   345
  $ hglog -r 'draft()'
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   346
  2 1 C
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   347
  3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
   348
  6 1 B'
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   349
  $ hglog -r 'secret()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   350
  4 2 E
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   351
  5 2 H
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
   352
  7 2 merge B' and E
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   353
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   354
test that phase are displayed in log at debug level
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   355
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   356
  $ hg log --debug
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   357
  changeset:   7:17a481b3bccb796c0521ae97903d81c52bfee4af
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   358
  tag:         tip
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   359
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   360
  parent:      6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   361
  parent:      4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   362
  manifest:    7:5e724ffacba267b2ab726c91fc8b650710deaaa8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   363
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   364
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   365
  files+:      C D E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   366
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   367
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   368
  merge B' and E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   369
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   370
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   371
  changeset:   6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   372
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   373
  parent:      1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   374
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   375
  manifest:    6:ab8bfef2392903058bf4ebb9e7746e8d7026b27a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   376
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   377
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   378
  files+:      B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   379
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   380
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   381
  B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   382
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   383
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   384
  changeset:   5:a030c6be5127abc010fcbff1851536552e6951a8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   385
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   386
  parent:      4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   387
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   388
  manifest:    5:5c710aa854874fe3d5fa7192e77bdb314cc08b5a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   389
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   390
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   391
  files+:      H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   392
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   393
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   394
  H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   395
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   396
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   397
  changeset:   4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   398
  phase:       secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   399
  parent:      3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   400
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   401
  manifest:    4:7173fd1c27119750b959e3a0f47ed78abe75d6dc
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   402
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   403
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   404
  files+:      E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   405
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   406
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   407
  E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   408
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   409
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   410
  changeset:   3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   411
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   412
  parent:      2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   413
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   414
  manifest:    3:6e1f4c47ecb533ffd0c8e52cdc88afb6cd39e20c
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   415
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   416
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   417
  files+:      D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   418
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   419
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   420
  D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   421
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   422
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   423
  changeset:   2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   424
  phase:       draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   425
  parent:      1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   426
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   427
  manifest:    2:66a5a01817fdf5239c273802b5b7618d051c89e4
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   428
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   429
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   430
  files+:      C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   431
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   432
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   433
  C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   434
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   435
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   436
  changeset:   1:27547f69f25460a52fff66ad004e58da7ad3fb56
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
   437
  phase:       public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   438
  parent:      0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   439
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   440
  manifest:    1:cb5cbbc1bfbf24cc34b9e8c16914e9caa2d2a7fd
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   441
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   442
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   443
  files+:      B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   444
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   445
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   446
  B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   447
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   448
  
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   449
  changeset:   0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
   450
  phase:       public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   451
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   452
  parent:      -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   453
  manifest:    0:007d8c9d88841325f5c6b06371b35b4e8a2b1a83
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   454
  user:        test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   455
  date:        Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   456
  files+:      A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   457
  extra:       branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   458
  description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   459
  A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
   460
  
17985
f94ead934067 tests: fix broken fix of test-phases output
Matt Mackall <mpm@selenic.com>
parents: 17979
diff changeset
   461
  
17979
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   462
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   463
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   464
(Issue3707)
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   465
test invalid phase name
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   466
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   467
  $ mkcommit I --config phases.new-commit='babar'
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   468
  transaction abort!
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   469
  rollback completed
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   470
  abort: phases.new-commit: not a valid phase name ('babar')
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
   471
  [255]
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   472
Test phase command
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   473
===================
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   474
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   475
initial picture
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   476
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   477
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   478
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   479
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   480
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   481
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   482
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   483
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   484
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   485
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   486
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   487
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   488
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   489
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   490
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   491
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   492
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   493
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   494
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   495
display changesets phase
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   496
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   497
(mixing -r and plain rev specification)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   498
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   499
  $ hg phase 1::4 -r 7
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   500
  1: public
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   501
  2: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   502
  3: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   503
  4: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   504
  7: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   505
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   506
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   507
move changeset forward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   508
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   509
(with -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   510
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   511
  $ hg phase --public -r 2
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   512
  test-debug-phase: move rev 2: 1 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   513
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  draft -> public
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   514
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   515
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   516
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   517
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   518
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   519
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   520
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   521
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   522
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   523
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   524
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   525
  o |  2 public C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   526
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   527
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   528
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   529
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   530
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   531
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   532
move changeset backward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   533
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   534
(without -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   535
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   536
  $ hg phase --draft --force 2
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   537
  test-debug-phase: move rev 2: 0 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   538
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  public -> draft
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   539
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   540
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   541
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   542
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   543
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   544
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   545
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   546
  o |  4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   547
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   548
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   549
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   550
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   551
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   552
  o  1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   553
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   554
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   555
  
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   556
31152
b7cef987356d phases: remove experimental.nativephaseskillswitch
Jun Wu <quark@fb.com>
parents: 31053
diff changeset
   557
move changeset forward and backward
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   558
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   559
  $ hg phase --draft --force 1::4
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   560
  test-debug-phase: move rev 1: 0 -> 1
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   561
  test-debug-phase: move rev 4: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   562
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  public -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   563
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  secret -> draft
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   564
  $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   565
  @    7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   566
  |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   567
  | o  6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   568
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   569
  +---o  5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   570
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   571
  o |  4 draft E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   572
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   573
  o |  3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   574
  | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   575
  o |  2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   576
  |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   577
  o  1 draft B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   578
  |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   579
  o  0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
   580
  
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   581
test partial failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   582
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   583
  $ hg phase --public 7
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   584
  test-debug-phase: move rev 1: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   585
  test-debug-phase: move rev 2: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   586
  test-debug-phase: move rev 3: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   587
  test-debug-phase: move rev 4: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   588
  test-debug-phase: move rev 6: 1 -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   589
  test-debug-phase: move rev 7: 2 -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   590
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   591
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   592
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   593
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   594
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   595
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  secret -> public
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   596
  $ hg phase --draft '5 or 7'
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   597
  test-debug-phase: move rev 5: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   598
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:  secret -> draft
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
   599
  cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   600
  phase changed for 1 changesets
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   601
  [1]
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   602
  $ hg log -G --template "{rev} {phase} {desc}\n"
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   603
  @    7 public merge B' and E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   604
  |\
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   605
  | o  6 public B'
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   606
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   607
  +---o  5 draft H
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   608
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   609
  o |  4 public E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   610
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   611
  o |  3 public D
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   612
  | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   613
  o |  2 public C
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   614
  |/
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   615
  o  1 public B
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   616
  |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   617
  o  0 public A
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   618
  
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   619
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   620
test complete failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   621
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   622
  $ hg phase --draft 7
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
   623
  cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   624
  no phases changed
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
   625
  [1]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
   626
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
   627
  $ cd ..
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   628
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   629
test hidden changeset are not cloned as public (issue3935)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   630
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   631
  $ cd initialrepo
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   632
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   633
(enabling evolution)
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
   634
  $ cat >> $HGRCPATH << EOF
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
   635
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34711
diff changeset
   636
  > evolution.createmarkers=True
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   637
  > EOF
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   638
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   639
(making a changeset hidden; H in that case)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   640
  $ hg debugobsolete `hg id --debug -r 5`
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33459
diff changeset
   641
  obsoleted 1 changesets
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   642
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   643
  $ cd ..
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   644
  $ hg clone initialrepo clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   645
  requesting all changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   646
  adding changesets
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   647
  adding manifests
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   648
  adding file changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   649
  added 7 changesets with 6 changes to 6 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33773
diff changeset
   650
  new changesets 4a2df7238c3b:17a481b3bccb
33459
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   651
  test-debug-phase: new rev 0:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   652
  test-debug-phase: new rev 1:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   653
  test-debug-phase: new rev 2:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   654
  test-debug-phase: new rev 3:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   655
  test-debug-phase: new rev 4:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   656
  test-debug-phase: new rev 5:  x -> 0
67a3204c83c1 phases: test phases tracking at the transaction level
Boris Feld <boris.feld@octobus.net>
parents: 32268
diff changeset
   657
  test-debug-phase: new rev 6:  x -> 0
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   658
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   659
  test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   660
  test-hook-close-phase: f838bfaca5c7226600ebcfd84f3c3c13a28d3757:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   661
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   662
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   663
  test-hook-close-phase: cf9fe039dfd67e829edf6522a45de057b5c86519:   -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   664
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:   -> public
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   665
  updating to branch default
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   666
  6 files updated, 0 files merged, 0 files removed, 0 files unresolved
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   667
  $ cd clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   668
  $ hg log -G --template "{rev} {phase} {desc}\n"
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   669
  @    6 public merge B' and E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   670
  |\
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   671
  | o  5 public B'
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   672
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   673
  o |  4 public E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   674
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   675
  o |  3 public D
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   676
  | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   677
  o |  2 public C
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   678
  |/
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   679
  o  1 public B
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   680
  |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   681
  o  0 public A
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   682
  
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   683
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   684
test verify repo containing hidden changesets, which should not abort just
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   685
because repo.cancopy() is False
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
   686
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   687
  $ cd ../initialrepo
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   688
  $ hg verify
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   689
  checking changesets
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   690
  checking manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   691
  crosschecking files in changesets and manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
   692
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 39299
diff changeset
   693
  checked 8 changesets with 7 changes to 7 files
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   694
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   695
  $ cd ..
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   696
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   697
check whether HG_PENDING makes pending changes only in related
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   698
repositories visible to an external hook.
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   699
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   700
(emulate a transaction running concurrently by copied
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   701
.hg/phaseroots.pending in subsequent test)
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   702
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   703
  $ cat > $TESTTMP/savepending.sh <<EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   704
  > cp .hg/store/phaseroots.pending  .hg/store/phaseroots.pending.saved
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   705
  > exit 1 # to avoid changing phase for subsequent tests
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   706
  > EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   707
  $ cd push-dest
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   708
  $ hg phase 6
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   709
  6: draft
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   710
  $ hg --config hooks.pretxnclose="sh $TESTTMP/savepending.sh" phase -f -s 6
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   711
  transaction abort!
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   712
  rollback completed
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   713
  abort: pretxnclose hook exited with status 1
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   714
  [255]
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   715
  $ cp .hg/store/phaseroots.pending.saved .hg/store/phaseroots.pending
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   716
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   717
(check (in)visibility of phaseroot while transaction running in repo)
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   718
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   719
  $ cat > $TESTTMP/checkpending.sh <<EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   720
  > echo '@initialrepo'
31767
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31152
diff changeset
   721
  > hg -R "$TESTTMP/initialrepo" phase 7
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   722
  > echo '@push-dest'
31767
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31152
diff changeset
   723
  > hg -R "$TESTTMP/push-dest" phase 6
31053
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   724
  > exit 1 # to avoid changing phase for subsequent tests
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   725
  > EOF
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   726
  $ cd ../initialrepo
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   727
  $ hg phase 7
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   728
  7: public
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   729
  $ hg --config hooks.pretxnclose="sh $TESTTMP/checkpending.sh" phase -f -s 7
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   730
  @initialrepo
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   731
  7: secret
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   732
  @push-dest
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   733
  6: draft
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   734
  transaction abort!
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   735
  rollback completed
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   736
  abort: pretxnclose hook exited with status 1
6afd8a87a657 phases: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   737
  [255]
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   738
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   739
Check that pretxnclose-phase hook can control phase movement
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   740
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   741
  $ hg phase --force b3325c91a4d9 --secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   742
  test-debug-phase: move rev 3: 0 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   743
  test-debug-phase: move rev 4: 0 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   744
  test-debug-phase: move rev 5: 1 -> 2
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   745
  test-debug-phase: move rev 7: 0 -> 2
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   746
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  public -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   747
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  public -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   748
  test-hook-close-phase: a030c6be5127abc010fcbff1851536552e6951a8:  draft -> secret
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   749
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  public -> secret
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   750
  $ hg log -G -T phases
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   751
  @    changeset:   7:17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   752
  |\   tag:         tip
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   753
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   754
  | |  parent:      6:cf9fe039dfd6
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   755
  | |  parent:      4:a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   756
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   757
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   758
  | |  summary:     merge B' and E
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   759
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   760
  | o  changeset:   6:cf9fe039dfd6
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   761
  | |  phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   762
  | |  parent:      1:27547f69f254
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   763
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   764
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   765
  | |  summary:     B'
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   766
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   767
  o |  changeset:   4:a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   768
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   769
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   770
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   771
  | |  summary:     E
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   772
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   773
  o |  changeset:   3:b3325c91a4d9
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   774
  | |  phase:       secret
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   775
  | |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   776
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   777
  | |  summary:     D
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   778
  | |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   779
  o |  changeset:   2:f838bfaca5c7
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   780
  |/   phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   781
  |    user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   782
  |    date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   783
  |    summary:     C
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   784
  |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   785
  o  changeset:   1:27547f69f254
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   786
  |  phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   787
  |  user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   788
  |  date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   789
  |  summary:     B
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   790
  |
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   791
  o  changeset:   0:4a2df7238c3b
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   792
     phase:       public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   793
     user:        test
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   794
     date:        Thu Jan 01 00:00:00 1970 +0000
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   795
     summary:     A
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   796
  
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   797
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   798
Install a hook that prevent b3325c91a4d9 to become public
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   799
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   800
  $ cat >> .hg/hgrc << EOF
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   801
  > [hooks]
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
   802
  > pretxnclose-phase.nopublish_D = sh -c "(echo \$HG_NODE| grep -v b3325c91a4d9>/dev/null) || [ 'public' != \$HG_PHASE ]"
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   803
  > EOF
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   804
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   805
Try various actions. only the draft move should succeed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   806
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   807
  $ hg phase --public b3325c91a4d9
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   808
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   809
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   810
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   811
  [255]
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   812
  $ hg phase --public a603bfb5a83e
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   813
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   814
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   815
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   816
  [255]
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   817
  $ hg phase --draft 17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   818
  test-debug-phase: move rev 3: 2 -> 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   819
  test-debug-phase: move rev 4: 2 -> 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   820
  test-debug-phase: move rev 7: 2 -> 1
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   821
  test-hook-close-phase: b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e:  secret -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   822
  test-hook-close-phase: a603bfb5a83e312131cebcd05353c217d4d21dde:  secret -> draft
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34866
diff changeset
   823
  test-hook-close-phase: 17a481b3bccb796c0521ae97903d81c52bfee4af:  secret -> draft
34711
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   824
  $ hg phase --public 17a481b3bccb
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   825
  transaction abort!
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   826
  rollback completed
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   827
  abort: pretxnclose-phase.nopublish_D hook exited with status 1
f6d17075608f phase: add a dedicated pretxnclose-phase hook
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   828
  [255]
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   829
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   830
  $ cd ..
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   831
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   832
Test for the "internal" phase
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   833
=============================
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   834
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   835
Check we deny its usage on older repository
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   836
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   837
  $ hg init no-internal-phase --config format.internal-phase=no
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   838
  $ cd no-internal-phase
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   839
  $ cat .hg/requires
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   840
  dotencode
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   841
  fncache
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   842
  generaldelta
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   843
  revlogv1
40901
7bdc97531490 test: enable sparse-revlog for test-phases.t
Boris Feld <boris.feld@octobus.net>
parents: 40417
diff changeset
   844
  sparserevlog
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   845
  store
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   846
  $ echo X > X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   847
  $ hg add X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   848
  $ hg status
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   849
  A X
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   850
  $ hg --config "phases.new-commit=internal" commit -m "my test internal commit" 2>&1 | grep ProgrammingError
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   851
  ** ProgrammingError: this repository does not support the internal phase
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   852
      raise error.ProgrammingError(msg)
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   853
  mercurial.error.ProgrammingError: this repository does not support the internal phase
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   854
  $ hg --config "phases.new-commit=archived" commit -m "my test archived commit" 2>&1 | grep ProgrammingError
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   855
  ** ProgrammingError: this repository does not support the archived phase
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   856
      raise error.ProgrammingError(msg)
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   857
  mercurial.error.ProgrammingError: this repository does not support the archived phase
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   858
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   859
  $ cd ..
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   860
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   861
Check it works fine with repository that supports it.
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   862
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   863
  $ hg init internal-phase --config format.internal-phase=yes
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   864
  $ cd internal-phase
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   865
  $ cat .hg/requires
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   866
  dotencode
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   867
  fncache
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   868
  generaldelta
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   869
  internal-phase
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   870
  revlogv1
40901
7bdc97531490 test: enable sparse-revlog for test-phases.t
Boris Feld <boris.feld@octobus.net>
parents: 40417
diff changeset
   871
  sparserevlog
39299
7775c1fb8fa0 phases: enforce internal phase support
Boris Feld <boris.feld@octobus.net>
parents: 39297
diff changeset
   872
  store
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   873
  $ mkcommit A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   874
  test-debug-phase: new rev 0:  x -> 1
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   875
  test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256:   -> draft
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   876
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   877
Commit an internal changesets
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   878
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   879
  $ echo B > B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   880
  $ hg add B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   881
  $ hg status
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   882
  A B
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   883
  $ hg --config "phases.new-commit=internal" commit -m "my test internal commit"
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   884
  test-debug-phase: new rev 1:  x -> 96
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   885
  test-hook-close-phase: c01c42dffc7f81223397e99652a0703f83e1c5ea:   -> internal
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   886
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   887
The changeset is a working parent descendant.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   888
Per the usual visibility rules, it is made visible.
39297
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   889
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   890
  $ hg log -G -l 3
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   891
  @  changeset:   1:c01c42dffc7f
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   892
  |  tag:         tip
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   893
  |  user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   894
  |  date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   895
  |  summary:     my test internal commit
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   896
  |
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   897
  o  changeset:   0:4a2df7238c3b
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   898
     user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   899
     date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   900
     summary:     A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   901
  
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   902
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   903
Commit is hidden as expected
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   904
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   905
  $ hg up 0
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   906
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   907
  $ hg log -G
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   908
  @  changeset:   0:4a2df7238c3b
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   909
     tag:         tip
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   910
     user:        test
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   911
     date:        Thu Jan 01 00:00:00 1970 +0000
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   912
     summary:     A
06c976acc581 phases: add an internal phases
Boris Feld <boris.feld@octobus.net>
parents: 34938
diff changeset
   913
  
40417
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   914
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   915
Test for archived phase
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   916
-----------------------
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   917
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   918
Commit an archived changesets
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   919
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   920
  $ echo B > B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   921
  $ hg add B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   922
  $ hg status
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   923
  A B
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   924
  $ hg --config "phases.new-commit=archived" commit -m "my test archived commit"
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   925
  test-debug-phase: new rev 2:  x -> 32
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   926
  test-hook-close-phase: 8df5997c3361518f733d1ae67cd3adb9b0eaf125:   -> archived
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   927
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   928
The changeset is a working parent descendant.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   929
Per the usual visibility rules, it is made visible.
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   930
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   931
  $ hg log -G -l 3
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   932
  @  changeset:   2:8df5997c3361
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   933
  |  tag:         tip
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   934
  |  parent:      0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   935
  |  user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   936
  |  date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   937
  |  summary:     my test archived commit
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   938
  |
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   939
  o  changeset:   0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   940
     user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   941
     date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   942
     summary:     A
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   943
  
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   944
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   945
Commit is hidden as expected
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   946
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   947
  $ hg up 0
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   948
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   949
  $ hg log -G
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   950
  @  changeset:   0:4a2df7238c3b
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   951
     tag:         tip
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   952
     user:        test
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   953
     date:        Thu Jan 01 00:00:00 1970 +0000
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   954
     summary:     A
49c7b701fdc2 phase: add an archived phase
Boris Feld <boris.feld@octobus.net>
parents: 39489
diff changeset
   955