view tests/test-evolve-issue6097.t @ 4878:095bab0d0cd7 stable

py3: return unicode from setup.py's get_version py3 expects the version number for eggs to be unicode, so despite 9.2.0 being the first evolve release with beta py3 support it isn't currently pip installable since it dies with: File "*/setuptools/command/egg_info.py", line *, in tagged_version return safe_version(version + self.vtags) TypeError: can't concat str to bytes The `setup.py install` test added in a previous commit should cover this since it died in a different but similar way before.
author Ian Moody <moz-ian@perix.co.uk>
date Thu, 03 Oct 2019 23:48:50 +0100
parents 9af212b8565a
children 900668a93629
line wrap: on
line source

Orphan changeset and trying to relocate a node on top of itself (issue6097)
https://bz.mercurial-scm.org/show_bug.cgi?id=6097

  $ . $TESTDIR/testlib/common.sh

  $ cat << EOF >> $HGRCPATH
  > [extensions]
  > rebase =
  > evolve =
  > EOF

  $ hg init issue6097
  $ cd issue6097

  $ echo apricot > a
  $ hg ci -qAm apricot

  $ echo banana > b
  $ hg ci -qAm banana

Let's go back to amend 0 and make an orphan out of 1

  $ hg up -q 0
  $ echo coconut > c
  $ hg add -q c
  $ hg ci --amend -m 'apricot and coconut'
  1 new orphan changesets

Now rebase the successor of 0 on top of 1

  $ hg rebase -r . -d 1
  rebasing 2:32acf8fb1b23 "apricot and coconut" (tip)
  1 new orphan changesets

Pruning 1 just to get it out of the way

  $ hg prune -q 1

Note how both the regular DAG and the obsolescence graph are linear, but the
paths from 3 to 0 are different: 3-1-0 and 3-2-0

  $ hg log -G
  @  changeset:   3:2868fe6df617
  |  tag:         tip
  |  parent:      1:e0486f65907d
  |  user:        test
  |  date:        Thu Jan 01 00:00:00 1970 +0000
  |  instability: orphan
  |  summary:     apricot and coconut
  |
  x  changeset:   1:e0486f65907d
  |  user:        test
  |  date:        Thu Jan 01 00:00:00 1970 +0000
  |  obsolete:    pruned using prune
  |  summary:     banana
  |
  x  changeset:   0:692cc7b6212c
     user:        test
     date:        Thu Jan 01 00:00:00 1970 +0000
     obsolete:    rewritten using amend, rebase as 3:2868fe6df617
     summary:     apricot
  

  $ hg obslog
  @  2868fe6df617 (3) apricot and coconut
  |
  x  32acf8fb1b23 (2) apricot and coconut
  |    rewritten(parent, content) as 2868fe6df617 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
  |
  x  692cc7b6212c (0) apricot
       rewritten(description, content) as 32acf8fb1b23 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
  

  $ hg evolve -r .
  move:[3] apricot and coconut
  atop:[-1] 
  working directory is now at bb847d1d3a5f

  $ hg log -G
  @  changeset:   4:bb847d1d3a5f
     tag:         tip
     parent:      -1:000000000000
     user:        test
     date:        Thu Jan 01 00:00:00 1970 +0000
     summary:     apricot and coconut
  

  $ hg obslog
  @  bb847d1d3a5f (4) apricot and coconut
  |
  x  2868fe6df617 (3) apricot and coconut
  |    rewritten(parent) as bb847d1d3a5f using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
  |
  x  32acf8fb1b23 (2) apricot and coconut
  |    rewritten(parent, content) as 2868fe6df617 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
  |
  x  692cc7b6212c (0) apricot
       rewritten(description, content) as 32acf8fb1b23 using amend by test (Thu Jan 01 00:00:00 1970 +0000)