[Bug 5135] New: evolve test failure with rebaseskipobsolete on

mercurial-bugs at selenic.com mercurial-bugs at selenic.com
Fri Mar 11 11:59:08 UTC 2016


https://bz.mercurial-scm.org/show_bug.cgi?id=5135

            Bug ID: 5135
           Summary: evolve test failure with rebaseskipobsolete on
           Product: Mercurial
           Version: default branch
          Hardware: PC
                OS: Linux
            Status: UNCONFIRMED
          Severity: bug
          Priority: wish
         Component: evolution
          Assignee: bugzilla at selenic.com
          Reporter: pierre-yves.david at ens-lyon.org
                CC: mercurial-devel at selenic.com,
                    pierre-yves.david at ens-lyon.org

Turning 'rebaseskipobsolete' one by default leads to crash in two evolution
tests. I did not had time to investigate yet. skiprebaseobsolete is made on by
default in "eaae4c69cbe7" (clowncopter, draft)

--- /home/pyd/src/mutable-history/tests/test-obsolete.t
+++ /home/pyd/src/mutable-history/tests/test-obsolete.t.err
@@ -510,18 +510,14 @@

 #excluded 'whole rebase set is extinct and ignored.' message not in core
   $ hg rebase -b '3' -d 4 --traceback
-  rebasing 3:0d3f46688ccc "add obsol_c"
+  note: not rebasing 3:0d3f46688ccc "add obsol_c", already in destination as
4:725c380fe99b "add obsol_c'"
   rebasing 8:159dfc9fa5d3 "add obsol_d''" (tip)
-  2 new divergent changesets
   $ hg --hidden log -q -r 'successors(3)'
   4:725c380fe99b
-  10:2033b4e49474
   $ hg up tip
   ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
   $ hg log -G --template='{rev} - {node|short} {desc}\n'
-  @  11 - 9468a5f5d8b2 add obsol_d''
-  |
-  o  10 - 2033b4e49474 add obsol_c
+  @  10 - 8396b69aa9f7 add obsol_d''
   |
   o  4 - 725c380fe99b add obsol_c'
   |
@@ -539,88 +535,109 @@
   adding changesets
   adding manifests
   adding file changes
-  added 2 changesets with 1 changes to [12] files (re)
-  3 new obsolescence markers
+  added 1 changesets with 1 changes to 1 files
+  2 new obsolescence markers
   $ hg up -q 10
   $ mkcommit "obsol_d'''"
-  created new head
   $ hg debugobsolete `getid 11` `getid 12`
+  abort: unknown revision '12'!
   $ hg push ../other-new --traceback
   pushing to ../other-new
+  searching for changes
+  Traceback (most recent call last):
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 192, in
_runcatch
+      return _dispatch(req)
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 919, in
_dispatch
+      cmdpats, cmdoptions)
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 677, in
runcommand
+      ret = _runcommand(ui, options, cmd, d)
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 1050, in
_runcommand
+      return checkargs()
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 1010, in
checkargs
+      return cmdfunc()
+    File "/home/pyd/src/mercurial-dev/mercurial/dispatch.py", line 916, in
<lambda>
+      d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
+    File "/home/pyd/src/mercurial-dev/mercurial/util.py", line 992, in check
+      return func(*args, **kwargs)
+    File "/home/pyd/src/mercurial-dev/mercurial/extensions.py", line 195, in
closure
+      return func(*(args + a), **kw)
+    File "/home/pyd/src/mercurial-dev/mercurial/util.py", line 992, in check
+      return func(*args, **kwargs)
+    File "/home/pyd/src/mutable-history/hgext/evolve.py", line 729, in
warnobserrors
+      ret = orig(ui, repo, *args, **kwargs)
+    File "/home/pyd/src/mercurial-dev/mercurial/util.py", line 992, in check
+      return func(*args, **kwargs)
+    File "/home/pyd/src/mercurial-dev/mercurial/commands.py", line 5839, in
push
+      opargs=opts.get('opargs'))
+    File "/home/pyd/src/mercurial-dev/mercurial/extensions.py", line 195, in
closure
+      return func(*(args + a), **kw)
+    File "/home/pyd/src/mutable-history/hgext/evolve.py", line 752, in push
+      return orig(repo, *args, **opts)
+    File "/home/pyd/src/mercurial-dev/mercurial/exchange.py", line 444, in
push
+      _pushbundle2(pushop)
+    File "/home/pyd/src/mercurial-dev/mercurial/exchange.py", line 853, in
_pushbundle2
+      ret = partgen(pushop, bundler)
+    File "/home/pyd/src/mercurial-dev/mercurial/exchange.py", line 695, in
_pushb2ctx
+      if not _pushcheckoutgoing(pushop):
+    File "/home/pyd/src/mercurial-dev/mercurial/exchange.py", line 643, in
_pushcheckoutgoing
+      raise error.Abort(mso % ctx)
+  Abort: push includes obsolete changeset: 73ea809402b9!
+  abort: push includes obsolete changeset: 73ea809402b9!
+  (use 'hg evolve' to get a stable history or --force to ignore warnings)
+  [255]
+  $ cd ..
+
+check bumped detection
+(make an obsolete changeset public)
+
+  $ cd local
+  $ hg phase --hidden --public 11
+  $ hg log -G --template='{rev} - ({phase}) {node|short} {desc}\n'
+  @  11 - (public) 73ea809402b9 add obsol_d'''
+  |
+  o  10 - (public) 8396b69aa9f7 add obsol_d''
+  |
+  o  4 - (public) 725c380fe99b add obsol_c'
+  |
+  o  1 - (public) 7c3bad9141dc add b
+  |
+  o  0 - (public) 1f0dee641bb7 add a
+  
+  $ hg log -r 'bumped()'
+  $ hg push ../other-new/
+  pushing to ../other-new/
   searching for changes
   adding changesets
   adding manifests
   adding file changes
-  added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
-  $ cd ..
-
-check bumped detection
-(make an obsolete changeset public)
-
-  $ cd local
-  $ hg phase --hidden --public 11
-  1 new bumped changesets
-  $ hg log -G --template='{rev} - ({phase}) {node|short} {desc}\n'
-  @  12 - (draft) 6db5e282cb91 add obsol_d'''
-  |
-  | o  11 - (public) 9468a5f5d8b2 add obsol_d''
-  |/
-  o  10 - (public) 2033b4e49474 add obsol_c
-  |
-  o  4 - (public) 725c380fe99b add obsol_c'
-  |
-  o  1 - (public) 7c3bad9141dc add b
-  |
-  o  0 - (public) 1f0dee641bb7 add a
-  
-  $ hg log -r 'bumped()'
-  changeset:   12:6db5e282cb91
-  tag:         tip
-  parent:      10:2033b4e49474
-  user:        test
-  date:        Thu Jan 01 00:00:00 1970 +0000
-  summary:     add obsol_d'''
-  
-  $ hg push ../other-new/
-  pushing to ../other-new/
-  searching for changes
-  abort: push includes bumped changeset: 6db5e282cb91!
-  (use 'hg evolve' to get a stable history or --force to ignore warnings)
-  [255]
+  added 1 changesets with 1 changes to 1 files

 Check hg commit --amend compat

   $ hg up 'desc(obsol_c)'
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ mkcommit f
   created new head
   $ echo 42 >> f
   $ hg commit --amend --traceback --quiet
   $ hg log -G
-  @  changeset:   15:705ab2a6b72e
+  @  changeset:   14:6491691ca36f
   |  tag:         tip
-  |  parent:      10:2033b4e49474
+  |  parent:      4:725c380fe99b
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     add f
   |
-  | o  changeset:   12:6db5e282cb91
-  |/   parent:      10:2033b4e49474
+  | o  changeset:   11:73ea809402b9
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  summary:     add obsol_d'''
+  | |
+  | o  changeset:   10:8396b69aa9f7
+  |/   parent:      4:725c380fe99b
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    summary:     add obsol_d'''
-  |
-  | o  changeset:   11:9468a5f5d8b2
-  |/   user:        test
-  |    date:        Thu Jan 01 00:00:00 1970 +0000
   |    summary:     add obsol_d''
-  |
-  o  changeset:   10:2033b4e49474
-  |  parent:      4:725c380fe99b
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     add obsol_c
   |
   o  changeset:   4:725c380fe99b
   |  parent:      1:7c3bad9141dc
@@ -646,54 +663,42 @@
   909a0fb57e5d909f353d89e394ffd7e0890fec88
159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 0 (Thu Jan 01 00:00:00 1970 +0000)
{'user': 'test'}
   1f0dee641bb7258c56bd60e93edfa2405381c41e
83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000)
{'user': 'test'}
   83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000)
{'user': 'test'}
-  0d3f46688ccc6e756c7e96cf64c391c411309597
2033b4e494742365851fac84d276640cbf52833e 0 (*) {'user': 'test'} (glob)
-  159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea
9468a5f5d8b2c5d91e17474e95ae4791e9718fdf 0 (*) {'user': 'test'} (glob)
-  9468a5f5d8b2c5d91e17474e95ae4791e9718fdf
6db5e282cb91df5c43ff1f1287c119ff83230d42 0 (Thu Jan 01 00:00:00 1970 +0000)
{'user': 'test'}
-  0b1b6dd009c037985363e2290a0b579819f659db
705ab2a6b72e2cd86edb799ebe15f2695f86143e 0 (*) {'user': 'test'} (glob)
+  159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea
8396b69aa9f7b4ea03ed94c63641e3c021d71f0c 0 (Fri Mar 11 11:56:45 2016 +0000)
{'user': 'test'}
+  73ea809402b95f9f72ce0a994223d57739b667fc 0 (Thu Jan 01 00:00:00 1970 +0000)
{'user': 'test'}
+  bc294e7f0681bbed7b83047814e9eadabead2f8d
6491691ca36ffa1b1c48d9bf8605ac5a25d200f6 0 (Fri Mar 11 11:56:46 2016 +0000)
{'user': 'test'}
+  5ec9a6b33cec2b5f3a8a395ab64417d7cd5a2d2e 0
{bc294e7f0681bbed7b83047814e9eadabead2f8d} (Fri Mar 11 11:56:46 2016 +0000)
{'user': 'test'}
 #no produced by 2.3
 33d458d86621f3186c40bfccd77652f4a122743e
3734a65252e69ddcced85901647a4f335d40de1e 0 {'date': '* *', 'user': 'test'}
(glob)

 Check divergence detection (note: multiple successors is sorted by changeset
hash)

   $ hg up 9468a5f5d8b2 #  add obsol_d''
-  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  abort: unknown revision '9468a5f5d8b2'!
+  [255]
   $ mkcommit "obsolet_conflicting_d"
   $ hg summary
-  parent: 1[46]:50f11e5e3a63 tip (re)
+  parent: 15:0af4963f15e7 tip
    add obsolet_conflicting_d
   branch: default
   commit: (clean)
-  update: (2|9|11) new changesets, (3|9|10) branch heads \(merge\) (re)
-  phases: 3 draft
-  bumped: 1 changesets
+  update: 2 new changesets, 2 branch heads (merge)
+  phases: 2 draft
   $ hg debugobsolete `getid a7a6f2b5d8a5` `getid 50f11e5e3a63`
+  abort: unknown revision '50f11e5e3a63'!
   $ hg log -r 'divergent()'
-  changeset:   12:6db5e282cb91
-  parent:      10:2033b4e49474
-  user:        test
-  date:        Thu Jan 01 00:00:00 1970 +0000
-  summary:     add obsol_d'''
-  
-  changeset:   16:50f11e5e3a63
-  tag:         tip
-  parent:      11:9468a5f5d8b2
-  user:        test
-  date:        Thu Jan 01 00:00:00 1970 +0000
-  summary:     add obsolet_conflicting_d
-  

   $ hg up --hidden 3 -q
   working directory parent is obsolete!
   $ hg evolve
-  parent is obsolete with multiple successors:
-  [4] add obsol_c'
-  [10] add obsol_c
-  [2]
+  update:[4] add obsol_c'
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  working directory is now at 725c380fe99b
   $ hg olog
-  changeset:   2:4538525df7e2
+  changeset:   3:0d3f46688ccc
+  parent:      1:7c3bad9141dc
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  summary:     add c
+  summary:     add obsol_c


 Check import reports new unstable changeset:
@@ -703,104 +708,93 @@
   working directory parent is obsolete!
   (use "hg evolve" to update to its successor)
   $ hg export 9468a5f5d8b2 | hg import -
+  abort: unknown revision '9468a5f5d8b2'!
   applying patch from stdin
-  1 new unstable changesets
+  abort: stdin: no diffs found
+  [255]


 Relevant marker computation
 ==============================

   $ hg log -G --hidden
-  @  changeset:   17:a5f7a21fe7bc
+  o  changeset:   15:0af4963f15e7
   |  tag:         tip
-  |  parent:      2:4538525df7e2
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     add obsol_d''
-  |
-  | o  changeset:   16:50f11e5e3a63
-  | |  parent:      11:9468a5f5d8b2
+  |  summary:     add obsolet_conflicting_d
+  |
+  o  changeset:   14:6491691ca36f
+  |  parent:      4:725c380fe99b
+  |  user:        test
+  |  date:        Thu Jan 01 00:00:00 1970 +0000
+  |  summary:     add f
+  |
+  | x  changeset:   13:5ec9a6b33cec
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  summary:     add obsolet_conflicting_d
-  | |
-  | | o  changeset:   15:705ab2a6b72e
-  | | |  parent:      10:2033b4e49474
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  summary:     add f
-  | | |
-  | | | x  changeset:   14:33d458d86621
-  | | | |  user:        test
-  | | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | | |  summary:     temporary amend commit for 0b1b6dd009c0
-  | | | |
-  | | | x  changeset:   13:0b1b6dd009c0
-  | | |/   parent:      10:2033b4e49474
-  | | |    user:        test
-  | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    summary:     add f
-  | | |
-  | | | o  changeset:   12:6db5e282cb91
-  | | |/   parent:      10:2033b4e49474
-  | | |    user:        test
-  | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    summary:     add obsol_d'''
-  | | |
-  | o |  changeset:   11:9468a5f5d8b2
-  | |/   user:        test
-  | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    summary:     add obsol_d''
-  | |
-  | o  changeset:   10:2033b4e49474
-  | |  parent:      4:725c380fe99b
+  | |  summary:     temporary amend commit for bc294e7f0681
+  | |
+  | x  changeset:   12:bc294e7f0681
+  |/   parent:      4:725c380fe99b
+  |    user:        test
+  |    date:        Thu Jan 01 00:00:00 1970 +0000
+  |    summary:     add f
+  |
+  | o  changeset:   11:73ea809402b9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  summary:     add obsol_c
-  | |
-  | | x  changeset:   9:83b5778897ad
-  | |    parent:      -1:000000000000
+  | |  summary:     add obsol_d'''
+  | |
+  | o  changeset:   10:8396b69aa9f7
+  |/   parent:      4:725c380fe99b
+  |    user:        test
+  |    date:        Thu Jan 01 00:00:00 1970 +0000
+  |    summary:     add obsol_d''
+  |
+  | x  changeset:   9:83b5778897ad
+  |    parent:      -1:000000000000
+  |    user:        test
+  |    date:        Thu Jan 01 00:00:00 1970 +0000
+  |    summary:     add toto
+  |
+  | x  changeset:   8:159dfc9fa5d3
+  | |  parent:      3:0d3f46688ccc
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  summary:     add obsol_d''
+  | |
+  | | x  changeset:   7:909a0fb57e5d
+  | |/   parent:      3:0d3f46688ccc
   | |    user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    summary:     add toto
-  | |
-  | | x  changeset:   8:159dfc9fa5d3
-  | | |  parent:      3:0d3f46688ccc
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  summary:     add obsol_d''
-  | | |
-  | | | x  changeset:   7:909a0fb57e5d
-  | | |/   parent:      3:0d3f46688ccc
-  | | |    user:        test
-  | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    summary:     add obsol_d'
-  | | |
-  | | | x  changeset:   6:95de7fc6918d
-  | | |/   parent:      3:0d3f46688ccc
-  | | |    user:        test
-  | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    summary:     add obsol_d
-  | | |
-  | | | x  changeset:   5:a7a6f2b5d8a5
-  | | |/   parent:      3:0d3f46688ccc
-  | | |    user:        test
-  | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    summary:     add d
-  | | |
-  | o |  changeset:   4:725c380fe99b
-  | | |  parent:      1:7c3bad9141dc
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  summary:     add obsol_c'
-  | | |
-  | | x  changeset:   3:0d3f46688ccc
-  | |/   parent:      1:7c3bad9141dc
+  | |    summary:     add obsol_d'
+  | |
+  | | x  changeset:   6:95de7fc6918d
+  | |/   parent:      3:0d3f46688ccc
   | |    user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    summary:     add obsol_c
-  | |
-  x |  changeset:   2:4538525df7e2
+  | |    summary:     add obsol_d
+  | |
+  | | x  changeset:   5:a7a6f2b5d8a5
+  | |/   parent:      3:0d3f46688ccc
+  | |    user:        test
+  | |    date:        Thu Jan 01 00:00:00 1970 +0000
+  | |    summary:     add d
+  | |
+  o |  changeset:   4:725c380fe99b
+  | |  parent:      1:7c3bad9141dc
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  summary:     add obsol_c'
+  | |
+  | x  changeset:   3:0d3f46688ccc
+  |/   parent:      1:7c3bad9141dc
+  |    user:        test
+  |    date:        Thu Jan 01 00:00:00 1970 +0000
+  |    summary:     add obsol_c
+  |
+  | @  changeset:   2:4538525df7e2
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
   |    summary:     add c
@@ -824,8 +818,6 @@
 simple rewrite with a prune attached to it

   $ hg debugobsolete --rev 15
-  0b1b6dd009c037985363e2290a0b579819f659db
705ab2a6b72e2cd86edb799ebe15f2695f86143e 0 (*) {'user': 'test'} (glob)
-  33d458d86621f3186c40bfccd77652f4a122743e 0
{0b1b6dd009c037985363e2290a0b579819f659db} (*) {'user': 'test'} (glob)

 Transitive rewrite


ERROR: test-obsolete.t output changed
!
--- /home/pyd/src/mutable-history/tests/test-inhibit.t
+++ /home/pyd/src/mutable-history/tests/test-inhibit.t.err
@@ -422,29 +422,20 @@
   $ hg rebase -r ad78ff7d621f -r 53a94305e133 -d  2db36d8066ff
   Warning: accessing hidden changesets 2db36d8066ff for write operation
   Warning: accessing hidden changesets ad78ff7d621f,53a94305e133 for write
operation
-  rebasing 10:ad78ff7d621f "add cK"
-  rebasing 11:53a94305e133 "add cL"
-  $ hg log -G
-  o  13:2f7b7704d714 add cL
-  |
-  o  12:fe1634cbe235 add cK
-  |
-  | @  9:55c73a90e4b4 add cJ
-  | |
-  | | o  7:18214586bf78 add cJ
-  | |/
-  | o  6:cf5c4f4554ce add cH
-  | |
-  | o  5:5419eb264a33 add cG
-  | |
-  | o  4:98065434e5c6 add cE
-  | |
-  o |  3:2db36d8066ff add cD
-  | |
-  o |  2:7df62a38b9bf add cC
-  | |
-  o |  1:02bcbc3f6e56 add cB
-  |/
+  abort: all requested changesets have equivalents or were marked as obsolete
+  (to force the rebase, set the config experimental.rebaseskipobsolete to
False)
+  [255]
+  $ hg log -G
+  @  9:55c73a90e4b4 add cJ
+  |
+  | o  7:18214586bf78 add cJ
+  |/
+  o  6:cf5c4f4554ce add cH
+  |
+  o  5:5419eb264a33 add cG
+  |
+  o  4:98065434e5c6 add cE
+  |
   o  0:54ccbc537fc2 add cA


@@ -458,7 +449,7 @@
   > EOF

   $ hg strip --hidden 1::
-  5 changesets pruned
+  3 changesets pruned
   $ hg log -G
   @  9:55c73a90e4b4 add cJ
   |
@@ -478,11 +469,11 @@
   $ mkcommit cM
   $ mkcommit cN
   $ hg log -G
-  @  16:a438c045eb37 add cN
-  |
-  o  15:2d66e189f5b5 add cM
-  |
-  o  14:d66ccb8c5871 add cL
+  @  14:a438c045eb37 add cN
+  |
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
   |
   | o  9:55c73a90e4b4 add cJ
   | |
@@ -497,17 +488,16 @@
   o  0:54ccbc537fc2 add cA

   $ hg up 15
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  abort: unknown revision '15'!
+  [255]
   $ echo "mmm" >> cM
   $ hg amend
   $ hg log -G
-  @  18:210589181b14 add cM
-  |
-  | o  16:a438c045eb37 add cN
-  | |
-  | o  15:2d66e189f5b5 add cM
-  |/
-  o  14:d66ccb8c5871 add cL
+  @  16:4d85071ce97d add cN
+  |
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
   |
   | o  9:55c73a90e4b4 add cJ
   | |
@@ -524,67 +514,58 @@
 Check that rebasing a commit twice makes the commit visible again

   $ hg rebase -d 18 -r 16 --keep
-  rebasing 16:a438c045eb37 "add cN"
+  rebasing 16:4d85071ce97d "add cN" (tip)
+  remote changed cM which local deleted
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
+  unresolved conflicts (see hg resolve, then hg rebase --continue)
+  [1]
   $ hg log -r 14:: -G
-  o  19:104eed5354c7 add cN
-  |
-  @  18:210589181b14 add cM
-  |
-  | o  16:a438c045eb37 add cN
-  | |
-  | o  15:2d66e189f5b5 add cM
-  |/
-  o  14:d66ccb8c5871 add cL
-  |
+  abort: hidden revision '14'!
+  (use --hidden to access hidden revisions)
+  [255]
   $ hg strip -r 210589181b14
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  working directory now at d66ccb8c5871
-  2 changesets pruned
+  abort: unknown revision '210589181b14'!
+  [255]

 Using a hash prefix solely made of digits should work
   $ hg update 210589181
-  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg rebase -d 18 -r 16 --keep
-  rebasing 16:a438c045eb37 "add cN"
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg log -r 14:: -G
-  o  19:104eed5354c7 add cN
-  |
-  @  18:210589181b14 add cM
-  |
-  | o  16:a438c045eb37 add cN
-  | |
-  | o  15:2d66e189f5b5 add cM
-  |/
-  o  14:d66ccb8c5871 add cL
-  |
+  abort: hidden revision '14'!
+  (use --hidden to access hidden revisions)
+  [255]

 Test prunestrip

   $ hg book foo -r 104eed5354c7
+  abort: unknown revision '104eed5354c7'!
+  [255]
   $ hg strip -r 210589181b14
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  working directory now at d66ccb8c5871
-  2 changesets pruned
+  abort: unknown revision '210589181b14'!
+  [255]
   $ hg log -r 14:: -G -T '{rev}:{node|short} {desc|firstline} {bookmarks}\n'
-  o  16:a438c045eb37 add cN
-  |
-  o  15:2d66e189f5b5 add cM
-  |
-  @  14:d66ccb8c5871 add cL foo
-  |
+  abort: hidden revision '14'!
+  (use --hidden to access hidden revisions)
+  [255]

 Check that --hidden used with inhibit does not hide every obsolete commit
 We show the log before and after a log -G --hidden, they should be the same
   $ hg log -G
-  o  16:a438c045eb37 add cN
-  |
-  o  15:2d66e189f5b5 add cM
-  |
-  @  14:d66ccb8c5871 add cL
+  @  16:4d85071ce97d add cN
+  |
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
   |
   | o  9:55c73a90e4b4 add cJ
   | |
-  o |  7:18214586bf78 add cJ
+  @ |  7:18214586bf78 add cJ
   |/
   o  6:cf5c4f4554ce add cH
   |
@@ -595,57 +576,51 @@
   o  0:54ccbc537fc2 add cA

   $ hg log -G --hidden
-  x  19:104eed5354c7 add cN
-  |
-  x  18:210589181b14 add cM
-  |
-  | x  17:b3c3274523f9 temporary amend commit for 2d66e189f5b5
-  | |
-  | | o  16:a438c045eb37 add cN
-  | |/
-  | o  15:2d66e189f5b5 add cM
-  |/
-  @  14:d66ccb8c5871 add cL
-  |
-  | x  13:2f7b7704d714 add cL
-  | |
-  | x  12:fe1634cbe235 add cK
-  | |
-  | | x  11:53a94305e133 add cL
+  @  16:4d85071ce97d add cN
+  |
+  | x  15:3dba047ba3e1 temporary amend commit for a438c045eb37
+  | |
+  | x  14:a438c045eb37 add cN
+  |/
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
+  |
+  | x  11:53a94305e133 add cL
+  | |
+  | x  10:ad78ff7d621f add cK
+  | |
+  | | o  9:55c73a90e4b4 add cJ
   | | |
-  | | x  10:ad78ff7d621f add cK
+  +-----x  8:e84f73d9ad36 temporary amend commit for 18214586bf78
   | | |
-  | | | o  9:55c73a90e4b4 add cJ
-  | | | |
-  +-------x  8:e84f73d9ad36 temporary amend commit for 18214586bf78
-  | | | |
-  o-----+  7:18214586bf78 add cJ
-   / / /
-  | | o  6:cf5c4f4554ce add cH
-  | | |
-  | | o  5:5419eb264a33 add cG
-  | | |
-  | | o  4:98065434e5c6 add cE
-  | |/
-  x |  3:2db36d8066ff add cD
-  | |
-  x |  2:7df62a38b9bf add cC
-  | |
-  x |  1:02bcbc3f6e56 add cB
-  |/
-  o  0:54ccbc537fc2 add cA
-  
-
-  $ hg log -G
-  o  16:a438c045eb37 add cN
-  |
-  o  15:2d66e189f5b5 add cM
-  |
-  @  14:d66ccb8c5871 add cL
+  @---+  7:18214586bf78 add cJ
+   / /
+  | o  6:cf5c4f4554ce add cH
+  | |
+  | o  5:5419eb264a33 add cG
+  | |
+  | o  4:98065434e5c6 add cE
+  |/
+  | x  3:2db36d8066ff add cD
+  | |
+  | x  2:7df62a38b9bf add cC
+  | |
+  | x  1:02bcbc3f6e56 add cB
+  |/
+  o  0:54ccbc537fc2 add cA
+  
+
+  $ hg log -G
+  @  16:4d85071ce97d add cN
+  |
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
   |
   | o  9:55c73a90e4b4 add cJ
   | |
-  o |  7:18214586bf78 add cJ
+  @ |  7:18214586bf78 add cJ
   |/
   o  6:cf5c4f4554ce add cH
   |
@@ -659,16 +634,15 @@
 check that pruning and inhibited node does not confuse anything

   $ hg up --hidden 210589181b14
-  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg strip --bundle 210589181b14
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  saved backup bundle to
$TESTTMP/inhibit/.hg/strip-backup/210589181b14-e09c7b88-backup.hg (glob)
+  abort: unknown revision '210589181b14'!
+  [255]
   $ hg unbundle .hg/strip-backup/210589181b14-e09c7b88-backup.hg # restore
state
-  adding changesets
-  adding manifests
-  adding file changes
-  added 2 changesets with 1 changes to 2 files (+1 heads)
-  (run 'hg heads .' to see heads, 'hg merge' to merge)
+  abort: No such file or directory:
.hg/strip-backup/210589181b14-e09c7b88-backup.hg
+  [255]

  Only allow direct access and check that evolve works like before
 (also disable evolve commands to avoid hint about using evolve)
@@ -680,24 +654,26 @@
   > EOF

   $ hg up 15
-  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  working directory parent is obsolete!
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ cat >> $HGRCPATH <<EOF
   > [experimental]
   > evolution=all
   > EOF
   $ echo "CM" > cM
   $ hg amend
-  $ hg log -G
-  @  21:721c3c279519 add cM
-  |
-  | o  16:a438c045eb37 add cN
-  | |
-  | x  15:2d66e189f5b5 add cM
-  |/
-  o  14:d66ccb8c5871 add cL
-  |
-  o  7:18214586bf78 add cJ
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
+  $ hg log -G
+  @  16:4d85071ce97d add cN
+  |
+  o  13:2d66e189f5b5 add cM
+  |
+  o  12:d66ccb8c5871 add cL
+  |
+  @  7:18214586bf78 add cJ
   |
   o  6:cf5c4f4554ce add cH
   |
@@ -714,19 +690,29 @@

 Empty commit
   $ hg amend
-  nothing changed
-  [1]
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]

 Check that the behavior of rebase with obsolescence markers is maintained
 despite inhibit

   $ hg up a438c045eb37
-  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg rebase -r 15:: -d 21 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 15:2d66e189f5b5 "add cM", already in destination as
21:721c3c279519 "add cM"
-  rebasing 16:a438c045eb37 "add cN"
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg up -q 2d66e189f5b5 # To inhibit it as the rest of test depends on it
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg up -q 21
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]

 Directaccess should load after some extensions precised in the conf
 With no extension specified:
@@ -742,7 +728,7 @@
   > EOF
   $ hg id
   ['rebase', 'strip', 'evolve', 'directaccess', 'inhibit', 'testextension']
-  721c3c279519
+  18214586bf78+4d85071ce97d+ tip

 With test_extension specified:
   $ cat >> $HGRCPATH << EOF
@@ -751,7 +737,7 @@
   > EOF
   $ hg id
   ['rebase', 'strip', 'evolve', 'inhibit', 'testextension', 'directaccess']
-  721c3c279519
+  18214586bf78+4d85071ce97d+ tip

 Inhibit should not work without directaccess
   $ cat >> $HGRCPATH <<EOF
@@ -762,7 +748,9 @@
   $ hg up .
   cannot use inhibit without the direct access extension
   (please enable it or inhibit won't work)
-  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ echo "directaccess=$(echo $(dirname $TESTDIR))/hgext/directaccess.py" >>
$HGRCPATH
   $ cd ..

@@ -773,107 +761,102 @@
   $ pwd=$(pwd)
   $ cd inhibit
   $ mkcommit pk
-  created new head
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg id
-  003a4735afde tip
+  18214586bf78+4d85071ce97d+ tip
   $ echo "OO" > pk
   $ hg amend
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg id
-  71eb4f100663 tip
+  18214586bf78+4d85071ce97d+ tip

 Hidden commits cannot be pushed without --hidden
   $ hg push -r 003a4735afde $pwd/inhibit2
   pushing to $TESTTMP/inhibit2
-  abort: hidden revision '003a4735afde'!
-  (use --hidden to access hidden revisions)
+  abort: unknown revision '003a4735afde'!
   [255]

 Visible commits can still be pushed
   $ hg push -r 71eb4f100663 $pwd/inhibit2
   pushing to $TESTTMP/inhibit2
-  searching for changes
-  adding changesets
-  adding manifests
-  adding file changes
-  added 1 changesets with 1 changes to 1 files (+1 heads)
-  2 new obsolescence markers
+  abort: unknown revision '71eb4f100663'!
+  [255]

 Create a stack (obsolete with successor in dest) -> (not obsolete) and rebase
 it. We expect to not see the stack at the end of the rebase.
   $ hg log -G  -r "25::"
-  @  25:71eb4f100663 add pk
-  |
+  abort: unknown revision '25'!
+  [255]
   $ hg up -C 22
-  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ mkcommit Dk
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg prune 22 -s 25
-  1 changesets pruned
+  abort: unknown revision '22'!
+  [255]
   $ hg rebase -s 22 -d 25 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 22:46cb6daad392 "add cN", already in destination as
25:71eb4f100663 "add pk"
-  rebasing 26:7ad60e760c7b "add Dk" (tip)
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg log -G  -r "25::"
-  @  27:1192fa9fbc68 add Dk
-  |
-  o  25:71eb4f100663 add pk
-  |
+  abort: unknown revision '25'!
+  [255]

 Create a stack (obsolete with succ in dest) -> (not obsolete) -> (not
obsolete).
 Rebase the first two revs of the stack onto dest, we expect to see one new
 revision on the destination and everything visible.
   $ hg up 25
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ mkcommit Dl
-  created new head
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ mkcommit Dp
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ mkcommit Do
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg log -G -r "25::"
-  @  30:b517facce1ef add Do
-  |
-  o  29:c5a47ab27c2e add Dp
-  |
-  o  28:8c1c2edbaf1b add Dl
-  |
-  | o  27:1192fa9fbc68 add Dk
-  |/
-  o  25:71eb4f100663 add pk
-  |
+  abort: unknown revision '25'!
+  [255]
   $ hg prune 28 -s 27
-  1 changesets pruned
+  abort: unknown revision '28'!
+  [255]
   $ hg up 25
-  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg rebase -r "28 + 29" --keep -d 27 --config
experimental.rebaseskipobsolete=True
-  note: not rebasing 28:8c1c2edbaf1b "add Dl", already in destination as
27:1192fa9fbc68 "add Dk"
-  rebasing 29:c5a47ab27c2e "add Dp"
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg log -G  -r "25::"
-  o  31:7d8affb1f604 add Dp
-  |
-  | o  30:b517facce1ef add Do
-  | |
-  | o  29:c5a47ab27c2e add Dp
-  | |
-  | o  28:8c1c2edbaf1b add Dl
-  | |
-  o |  27:1192fa9fbc68 add Dk
-  |/
-  @  25:71eb4f100663 add pk
-  |
+  abort: unknown revision '25'!
+  [255]

 Rebase the same stack in full on the destination, we expect it to disappear
 and only see the top revision added to destination. We don\'t expect 29 to be
 skipped as we used --keep before.
   $ hg rebase -s 28 -d 27 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 28:8c1c2edbaf1b "add Dl", already in destination as
27:1192fa9fbc68 "add Dk"
-  rebasing 29:c5a47ab27c2e "add Dp"
-  rebasing 30:b517facce1ef "add Do"
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg log -G  -r "25::"
-  o  32:1d43fff9e26f add Do
-  |
-  o  31:7d8affb1f604 add Dp
-  |
-  o  27:1192fa9fbc68 add Dk
-  |
-  @  25:71eb4f100663 add pk
-  |
+  abort: unknown revision '25'!
+  [255]

 Pulling from a inhibit repo to a non-inhibit repo should work

@@ -887,21 +870,26 @@
   > EOF
   $ cd not-inhibit
   $ hg book -d foo
+  abort: bookmark 'foo' does not exist
+  [255]
   $ hg pull
   pulling from $TESTTMP/inhibit
   searching for changes
   no changes found
-  adding remote bookmark foo

 Test that bookmark -D can take multiple branch names
   $ cd ../inhibit
   $ hg bookmark book2 book1 book3
   $ touch foo && hg add foo && hg ci -m "add foo"
-  created new head
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg up book1
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  (activating bookmark book1)
+  abort: rebase in progress
+  (use 'hg rebase --continue' or 'hg rebase --abort')
+  [255]
   $ hg bookmark -D book2 book3
   bookmark 'book2' deleted
   bookmark 'book3' deleted
-  1 changesets pruned
+  abort: nothing to prune
+  [255]

ERROR: test-inhibit.t output changed
!
Failed test-obsolete.t: output changed
Failed test-inhibit.t: output changed

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list