--- a/tests/test-evolve-obshistory.t Wed Apr 08 01:16:59 2020 +0800
+++ b/tests/test-evolve-obshistory.t Fri May 08 22:18:15 2020 +0800
@@ -93,7 +93,7 @@
Actual test
-----------
- $ hg obslog 7a230b46bf61 --patch
+ $ hg obslog 7a230b46bf61 --patch --no-origin
@ 7a230b46bf61 (3) A2
|
x fdf9bde5129a (2) A1
@@ -116,6 +116,31 @@
+A1
+
+ $ hg obslog 7a230b46bf61 --patch
+ @ 7a230b46bf61 (3) A2
+ | reworded(description) from fdf9bde5129a using amend by test (Thu Jan 01 00:00:00 1970 +0000)
+ | diff -r fdf9bde5129a -r 7a230b46bf61 changeset-description
+ | --- a/changeset-description
+ | +++ b/changeset-description
+ | @@ -1,1 +1,1 @@
+ | -A1
+ | +A2
+ |
+ |
+ x fdf9bde5129a (2) A1
+ | reworded(description) from 471f378eab4c using amend by test (Thu Jan 01 00:00:00 1970 +0000)
+ | diff -r 471f378eab4c -r fdf9bde5129a changeset-description
+ | --- a/changeset-description
+ | +++ b/changeset-description
+ | @@ -1,1 +1,1 @@
+ | -A0
+ | +A1
+ |
+ |
+ x 471f378eab4c (1) A0
+
+
$ cd $TESTTMP/local-remote-markers-2
$ hg pull
pulling from $TESTTMP/local-remote-markers-1
@@ -130,9 +155,8 @@
(run 'hg heads' to see heads, 'hg merge' to merge)
working directory parent is obsolete! (471f378eab4c)
(use 'hg evolve' to update to its successor: 7a230b46bf61)
-Check that debugobshistory works with markers pointing to missing local
-changectx
- $ hg obslog 7a230b46bf61 --patch
+Check that obslog works with markers pointing to missing local changectx
+ $ hg obslog 7a230b46bf61 --patch --no-origin
o 7a230b46bf61 (2) A2
|
x fdf9bde5129a
@@ -144,11 +168,23 @@
(No patch available, successor is unknown locally)
- $ hg obslog 7a230b46bf61 --patch -f
+ $ hg obslog 7a230b46bf61 --patch
+ o 7a230b46bf61 (2) A2
+ | reworded(description) from fdf9bde5129a using amend by test (Thu Jan 01 00:00:00 1970 +0000)
+ | (No patch available, predecessor is unknown locally)
+ |
+ x fdf9bde5129a
+ | reworded(description) from 471f378eab4c using amend by test (Thu Jan 01 00:00:00 1970 +0000)
+ | (No patch available, context is not local)
+ |
+ @ 471f378eab4c (1) A0
+
+
+ $ hg obslog 7a230b46bf61 --patch -f --no-origin
o 7a230b46bf61 (2) A2
|
@ 471f378eab4c (1) A0
- reworded(description) as 7a230b46bf61 using amend by test (at Thu Jan 01 00:00:00 1970 +0000)
+ reworded(description) as 7a230b46bf61 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
diff -r 471f378eab4c -r 7a230b46bf61 changeset-description
--- a/changeset-description
+++ b/changeset-description
@@ -157,23 +193,111 @@
+A2
+ $ hg obslog 7a230b46bf61 --patch -f
+ o 7a230b46bf61 (2) A2
+ | reworded(description) from 471f378eab4c using amend by test (Thu Jan 01 00:00:00 1970 +0000)
+ | diff -r 471f378eab4c -r 7a230b46bf61 changeset-description
+ | --- a/changeset-description
+ | +++ b/changeset-description
+ | @@ -1,1 +1,1 @@
+ | -A0
+ | +A2
+ |
+ |
+ @ 471f378eab4c (1) A0
+
+
$ hg obslog 7a230b46bf61 --color=debug --patch
o [evolve.node|7a230b46bf61] [evolve.rev|(2)] [evolve.short_description|A2]
+ | [evolve.verb|reworded](description) from [evolve.node|fdf9bde5129a] using [evolve.operation|amend] by [evolve.user|test] [evolve.date|(Thu Jan 01 00:00:00 1970 +0000)]
+ | (No patch available, predecessor is unknown locally)
|
x [evolve.node evolve.missing_change_ctx|fdf9bde5129a]
- | [evolve.verb|reworded](description) as [evolve.node|7a230b46bf61] using [evolve.operation|amend] by [evolve.user|test] [evolve.date|(Thu Jan 01 00:00:00 1970 +0000)]
+ | [evolve.verb|reworded](description) from [evolve.node|471f378eab4c] using [evolve.operation|amend] by [evolve.user|test] [evolve.date|(Thu Jan 01 00:00:00 1970 +0000)]
| (No patch available, context is not local)
|
@ [evolve.node|471f378eab4c] [evolve.rev|(1)] [evolve.short_description|A0]
- [evolve.verb|reworded](description) as [evolve.node|fdf9bde5129a] using [evolve.operation|amend] by [evolve.user|test] [evolve.date|(Thu Jan 01 00:00:00 1970 +0000)]
- (No patch available, successor is unknown locally)
- $ hg obslog 7a230b46bf61 --graph \
- > -T '{node|short} {rev} {desc|firstline}\n{markers % "rewritten using {operation}"}\n'
+ $ hg obslog 7a230b46bf61 --graph --no-origin \
+ > -T '{node|short} {rev} {desc|firstline}\n{markers % "rewritten using {operations}"}\n'
o 7a230b46bf61 2 A2
|
x fdf9bde5129a
| rewritten using amend
@ 471f378eab4c 1 A0
rewritten using amend
+
+ $ hg obslog 7a230b46bf61 --graph \
+ > -T '{node|short} {rev} {desc|firstline}\n{markers % "rewritten using {operations}"}\n'
+ o 7a230b46bf61 2 A2
+ | rewritten using amend
+ x fdf9bde5129a
+ | rewritten using amend
+ @ 471f378eab4c 1 A0
+
+
+Test output with non-local changesets and various templates
+===========================================================
+
+ $ hg init $TESTTMP/obslog-non-local-templates
+ $ cd $TESTTMP/obslog-non-local-templates
+ $ cat << EOF >> .hg/hgrc
+ > [templates]
+ > fancy = '{desc|firstline}\n{markers % "{verb} using {operations} by {users} ({join(notes, "; ")})"}'
+ > fancier = '{desc|firstline}\n{markers % "{join(users, ", ")} had {verb} this commit using {join(operations, "/")} and said: {join(notes % "\"{note}\"", ", ")})"}'
+ > EOF
+
+ $ mkcommit A0
+ $ hg metaedit -m 'A1' -n 'note1' -d '42 0' --config devel.default-date='1 0' -q
+ $ HGUSER=alice hg amend -m 'A2' -n 'note2'
+ $ HGUSER=bob hg amend -m 'A3' -n 'note3'
+
+ $ hg debugobsolete
+ 6ffd04c870fe2b73e7c885e508c4f1213a75c4d4 e481355d236800802337be3e637bd820870b04d2 0 (Thu Jan 01 00:00:01 1970 +0000) {'ef1': '33', 'note': 'note1', 'operation': 'metaedit', 'user': 'test'}
+ e481355d236800802337be3e637bd820870b04d2 65835bf83412a950e6a47f023690d5e6ae09718d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'note': 'note2', 'operation': 'amend', 'user': 'alice'}
+ 65835bf83412a950e6a47f023690d5e6ae09718d 41985e02b792daac8907f6b30b513bbf6e8e034d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'note': 'note3', 'operation': 'amend', 'user': 'bob'}
+
+ $ hg strip 'desc(A1) + desc(A2)' --hidden --quiet --config extensions.strip=
+
+ $ hg obslog -f --no-origin
+ @ 41985e02b792 (1) A3
+ |
+ x 6ffd04c870fe (0) A0
+ rewritten(description, date) as 41985e02b792 using amend, metaedit by alice, bob, test (between Thu Jan 01 00:00:00 1970 +0000 and Thu Jan 01 00:00:01 1970 +0000)
+ note: note1
+ note: note2
+ note: note3
+
+ $ hg obslog -f
+ @ 41985e02b792 (1) A3
+ | rewritten(description, date) from 6ffd04c870fe using amend, metaedit by alice, bob, test (between Thu Jan 01 00:00:00 1970 +0000 and Thu Jan 01 00:00:01 1970 +0000)
+ | note: note1
+ | note: note2
+ | note: note3
+ |
+ x 6ffd04c870fe (0) A0
+
+ $ hg obslog -f -T fancy --no-origin
+ @ A3
+ |
+ x A0
+ rewritten using amend, metaedit by alice, bob, test (note1; note2; note3)
+
+ $ hg obslog -f -T fancy
+ @ A3
+ | rewritten using amend, metaedit by alice, bob, test (note1; note2; note3)
+ x A0
+
+
+ $ hg obslog -f -T fancier --no-origin
+ @ A3
+ |
+ x A0
+ alice, bob, test had rewritten this commit using amend/metaedit and said: "note1", "note2", "note3")
+
+ $ hg obslog -f -T fancier
+ @ A3
+ | alice, bob, test had rewritten this commit using amend/metaedit and said: "note1", "note2", "note3")
+ x A0
+