##// END OF EJS Templates
py3: fix test-dirstate-race.t...
py3: fix test-dirstate-race.t Differential Revision: https://phab.mercurial-scm.org/D5106

File last commit:

r39743:5abc47d4 default
r40332:e787d97e default
Show More
test-obsmarker-template.t
2641 lines | 81.3 KiB | text/troff | Tads3Lexer
/ tests / test-obsmarker-template.t
Boris Feld
template: add predecessors template...
r32879 This test file test the various templates related to obsmarkers.
Global setup
============
$ . $TESTDIR/testlib/obsmarker-common.sh
$ cat >> $HGRCPATH <<EOF
> [ui]
> interactive = true
> [phases]
> publish=False
> [experimental]
Boris Feld
config: replace experimental.stabilization by experimental.evolution...
r34866 > evolution=true
Boris Feld
template: add minimal obsfate template function...
r33913 > [templates]
Boris Feld
template: better prune support in obsfate...
r33998 > obsfatesuccessors = "{if(successors, " as ")}{join(successors, ", ")}"
Boris Feld
obsfate: makes successorsetverb takes the markers as argument...
r35011 > obsfateverb = "{obsfateverb(successors, markers)}"
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 > obsfateoperations = "{if(obsfateoperations(markers), " using {join(obsfateoperations(markers), ", ")}")}"
Boris Feld
template: compute user in obsfateusers...
r33996 > obsfateusers = "{if(obsfateusers(markers), " by {join(obsfateusers(markers), ", ")}")}"
Boris Feld
template: compute dates in obsfatedate...
r33997 > obsfatedate = "{if(obsfatedate(markers), "{ifeq(min(obsfatedate(markers)), max(obsfatedate(markers)), " (at {min(obsfatedate(markers))|isodate})", " (between {min(obsfatedate(markers))|isodate} and {max(obsfatedate(markers))|isodate})")}")}"
Boris Feld
test: rename obsfate template alias...
r34577 > obsfatetempl = "{obsfateverb}{obsfateoperations}{obsfatesuccessors}{obsfateusers}{obsfatedate}; "
Boris Feld
template: add predecessors template...
r32879 > [alias]
> tlog = log -G -T '{node|short}\
> {if(predecessors, "\n Predecessors: {predecessors}")}\
> {if(predecessors, "\n semi-colon: {join(predecessors, "; ")}")}\
Yuya Nishihara
templatekw: reference predecessor node id as {node} in map operation...
r32909 > {if(predecessors, "\n json: {predecessors|json}")}\
Boris Feld
template: add successors template...
r33276 > {if(predecessors, "\n map: {join(predecessors % "{rev}:{node}", " ")}")}\
> {if(successorssets, "\n Successors: {successorssets}")}\
> {if(successorssets, "\n multi-line: {join(successorssets, "\n multi-line: ")}")}\
> {if(successorssets, "\n json: {successorssets|json}")}\n'
Boris Feld
test: rename obsfate template alias...
r34577 > fatelog = log -G -T '{node|short}\n{if(succsandmarkers, " Obsfate: {succsandmarkers % "{obsfatetempl}"} \n" )}'
Boris Feld
template: add minimal obsfate template function...
r33913 > fatelogjson = log -G -T '{node|short}\n{if(succsandmarkers, " Obsfate: {succsandmarkers|json}\n")}'
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 > fatelogkw = log -G -T '{node|short}\n{if(obsfate, "{obsfate % " Obsfate: {fate}\n"}")}'
Boris Feld
template: add predecessors template...
r32879 > EOF
Test templates on amended commit
================================
Test setup
----------
$ hg init $TESTTMP/templates-local-amend
$ cd $TESTTMP/templates-local-amend
$ mkcommit ROOT
$ mkcommit A0
$ echo 42 >> A0
Boris Feld
test: use current user in the multi-user amend scenario...
r34579 $ hg commit --amend -m "A1" --config devel.default-date="1234567890 0"
Boris Feld
obsolete: add a devel.user.obsmarker...
r34576 $ hg commit --amend -m "A2" --config devel.default-date="987654321 0" --config devel.user.obsmarker=test2
Boris Feld
template: add predecessors template...
r32879
$ hg log --hidden -G
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 @ changeset: 3:d004c8f274b9
Boris Feld
template: add predecessors template...
r32879 | tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | x changeset: 2:a468dc9b3633
Boris Feld
template: add predecessors template...
r32879 |/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 3:d004c8f274b9 by test2
Boris Feld
template: add predecessors template...
r32879 | summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:a468dc9b3633
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'desc(A0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' was rewritten as: d004c8f274b9)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
o d004c8f274b9
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 |/ Successors: 3:d004c8f274b9
| multi-line: 3:d004c8f274b9
Boris Feld
template: add successors template...
r33276 | json: [["d004c8f274b9ec480a47a93c10dac5eee63adb78"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
o d004c8f274b9
|
| @ 471f378eab4c
Boris Feld
test: use current user in the multi-user amend scenario...
r34579 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test, test2 (between 2001-04-19 04:25 +0000 and 2009-02-13 23:31 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
$ hg fatelogkw
o d004c8f274b9
|
| @ 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test, test2
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
Boris Feld
log: add obsfate by default in changeset printer...
r34853
$ hg log -G --config ui.logtemplate=
o changeset: 3:d004c8f274b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| @ changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 3:d004c8f274b9 by test, test2
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg log -G -T "default"
o changeset: 3:d004c8f274b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| @ changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 3:d004c8f274b9 by test, test2
Boris Feld
log: add obsfate by default in changeset printer...
r34853 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(A1)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset a468dc9b3633
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision 'a468dc9b3633' was rewritten as: d004c8f274b9)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
o d004c8f274b9
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | Predecessors: 2:a468dc9b3633
| semi-colon: 2:a468dc9b3633
Boris Feld
template: add predecessors template...
r32879 | json: ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | map: 2:a468dc9b36338b14fdb7825f55ce3df4e71517ad
Boris Feld
template: add predecessors template...
r32879 | @ a468dc9b3633
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 |/ Successors: 3:d004c8f274b9
| multi-line: 3:d004c8f274b9
Boris Feld
template: add successors template...
r33276 | json: [["d004c8f274b9ec480a47a93c10dac5eee63adb78"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
test: cleanup verbosity variant from fatelog test...
r34578 $ hg fatelog
Boris Feld
template: add minimal obsfate template function...
r33913 o d004c8f274b9
|
| @ a468dc9b3633
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 Predecessors template should show all the predecessors as we force their display
with --hidden
$ hg tlog --hidden
o d004c8f274b9
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | Predecessors: 2:a468dc9b3633
| semi-colon: 2:a468dc9b3633
Boris Feld
template: add predecessors template...
r32879 | json: ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | map: 2:a468dc9b36338b14fdb7825f55ce3df4e71517ad
Boris Feld
template: add predecessors template...
r32879 | @ a468dc9b3633
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | Successors: 3:d004c8f274b9
| multi-line: 3:d004c8f274b9
Boris Feld
template: add successors template...
r33276 | json: [["d004c8f274b9ec480a47a93c10dac5eee63adb78"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 |/ Successors: 2:a468dc9b3633
| multi-line: 2:a468dc9b3633
Boris Feld
template: add successors template...
r33276 | json: [["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
test: cleanup verbosity variant from fatelog test...
r34578 $ hg fatelog --hidden
Boris Feld
template: add minimal obsfate template function...
r33913 o d004c8f274b9
|
| @ a468dc9b3633
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
test: use current user in the multi-user amend scenario...
r34579 |/ Obsfate: rewritten using amend as 2:a468dc9b3633 by test (at 2009-02-13 23:31 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879
Predecessors template shouldn't show anything as all obsolete commit are not
visible.
$ hg up 'desc(A2)'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg tlog
@ d004c8f274b9
|
o ea207398892e
$ hg tlog --hidden
@ d004c8f274b9
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | Predecessors: 2:a468dc9b3633
| semi-colon: 2:a468dc9b3633
Boris Feld
template: add predecessors template...
r32879 | json: ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | map: 2:a468dc9b36338b14fdb7825f55ce3df4e71517ad
Boris Feld
template: add predecessors template...
r32879 | x a468dc9b3633
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 | Successors: 3:d004c8f274b9
| multi-line: 3:d004c8f274b9
Boris Feld
template: add successors template...
r33276 | json: [["d004c8f274b9ec480a47a93c10dac5eee63adb78"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Saurabh Singh
cmdutil: remove the redundant commit during amend...
r34087 |/ Successors: 2:a468dc9b3633
| multi-line: 2:a468dc9b3633
Boris Feld
template: add successors template...
r33276 | json: [["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
test: cleanup verbosity variant from fatelog test...
r34578 $ hg fatelog
Boris Feld
template: add minimal obsfate template function...
r33913 @ d004c8f274b9
|
o ea207398892e
Boris Feld
template: add predecessors template...
r32879
Boris Feld
test: cleanup verbosity variant from fatelog test...
r34578 $ hg fatelog --hidden
Boris Feld
template: add minimal obsfate template function...
r33913 @ d004c8f274b9
|
| x a468dc9b3633
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
test: use current user in the multi-user amend scenario...
r34579 |/ Obsfate: rewritten using amend as 2:a468dc9b3633 by test (at 2009-02-13 23:31 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
@ d004c8f274b9
|
| x a468dc9b3633
Boris Feld
obsolete: activate effect-flag by default...
r34962 |/ Obsfate: [{"markers": [["a468dc9b36338b14fdb7825f55ce3df4e71517ad", ["d004c8f274b9ec480a47a93c10dac5eee63adb78"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test2"]], [987654321.0, 0], null]], "successors": ["d004c8f274b9ec480a47a93c10dac5eee63adb78"]}]
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
obsolete: activate effect-flag by default...
r34962 |/ Obsfate: [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"], 0, [["ef1", "9"], ["operation", "amend"], ["user", "test"]], [1234567890.0, 0], null]], "successors": ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"]}]
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ d004c8f274b9
|
| x a468dc9b3633
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 3:d004c8f274b9
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:a468dc9b3633
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ d004c8f274b9
|
| x a468dc9b3633
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test2
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:a468dc9b3633
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ d004c8f274b9
|
| x a468dc9b3633
|/ Obsfate: rewritten using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000)
| x 471f378eab4c
|/ Obsfate: rewritten using amend as 2:a468dc9b3633 by test (at 2009-02-13 23:31 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854
$ hg log -G -T "default" --hidden
@ changeset: 3:d004c8f274b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| x changeset: 2:a468dc9b3633
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 3:d004c8f274b9 by test2
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 2:a468dc9b3633
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg log -G -T "default" --hidden -v
@ changeset: 3:d004c8f274b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| files: A0
| description:
| A2
|
|
| x changeset: 2:a468dc9b3633
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000)
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | files: A0
| description:
| A1
|
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 2:a468dc9b3633 by test (at 2009-02-13 23:31 +0000)
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | files: A0
| description:
| A0
|
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
files: ROOT
description:
ROOT
Boris Feld
template: add predecessors template...
r32879 Test templates with splitted commit
===================================
$ hg init $TESTTMP/templates-local-split
$ cd $TESTTMP/templates-local-split
$ mkcommit ROOT
$ echo 42 >> a
$ echo 43 >> b
$ hg commit -A -m "A0"
adding a
adding b
$ hg log --hidden -G
@ changeset: 1:471597cad322
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
# Simulate split
$ hg up -r "desc(ROOT)"
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ echo 42 >> a
$ hg commit -A -m "A0"
adding a
created new head
$ echo 43 >> b
$ hg commit -A -m "A0"
adding b
$ hg debugobsolete `getid "1"` `getid "2"` `getid "3"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add predecessors template...
r32879
$ hg log --hidden -G
@ changeset: 3:f257fde29c7a
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 2:337fec4d2edc
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
| x changeset: 1:471597cad322
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: split as 2:337fec4d2edc, 3:f257fde29c7a
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'obsolete()' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471597cad322
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471597cad322' was split as: 337fec4d2edc, f257fde29c7a)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
o f257fde29c7a
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471597cad322
| semi-colon: 1:471597cad322
Boris Feld
template: add predecessors template...
r32879 | json: ["471597cad322d1f659bb169751be9133dad92ef3"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471597cad322d1f659bb169751be9133dad92ef3
Boris Feld
template: add predecessors template...
r32879 o 337fec4d2edc
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471597cad322
| semi-colon: 1:471597cad322
Boris Feld
template: add predecessors template...
r32879 | json: ["471597cad322d1f659bb169751be9133dad92ef3"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471597cad322d1f659bb169751be9133dad92ef3
Boris Feld
template: add predecessors template...
r32879 | @ 471597cad322
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:337fec4d2edc 3:f257fde29c7a
| multi-line: 2:337fec4d2edc 3:f257fde29c7a
| json: [["337fec4d2edcf0e7a467e35f818234bc620068b5", "f257fde29c7a847c9b607f6e958656d0df0fb15c"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o f257fde29c7a
|
o 337fec4d2edc
|
| @ 471597cad322
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up f257fde29c7a
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Predecessors template should not show a predecessor as it's not displayed in
the log
$ hg tlog
@ f257fde29c7a
|
o 337fec4d2edc
|
o ea207398892e
Predecessors template should show both predecessors as we force their display
with --hidden
$ hg tlog --hidden
@ f257fde29c7a
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471597cad322
| semi-colon: 1:471597cad322
Boris Feld
template: add predecessors template...
r32879 | json: ["471597cad322d1f659bb169751be9133dad92ef3"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471597cad322d1f659bb169751be9133dad92ef3
Boris Feld
template: add predecessors template...
r32879 o 337fec4d2edc
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471597cad322
| semi-colon: 1:471597cad322
Boris Feld
template: add predecessors template...
r32879 | json: ["471597cad322d1f659bb169751be9133dad92ef3"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471597cad322d1f659bb169751be9133dad92ef3
Boris Feld
template: add predecessors template...
r32879 | x 471597cad322
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:337fec4d2edc 3:f257fde29c7a
| multi-line: 2:337fec4d2edc 3:f257fde29c7a
| json: [["337fec4d2edcf0e7a467e35f818234bc620068b5", "f257fde29c7a847c9b607f6e958656d0df0fb15c"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog --hidden
@ f257fde29c7a
|
o 337fec4d2edc
|
| x 471597cad322
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
@ f257fde29c7a
|
o 337fec4d2edc
|
| x 471597cad322
|/ Obsfate: [{"markers": [["471597cad322d1f659bb169751be9133dad92ef3", ["337fec4d2edcf0e7a467e35f818234bc620068b5", "f257fde29c7a847c9b607f6e958656d0df0fb15c"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["337fec4d2edcf0e7a467e35f818234bc620068b5", "f257fde29c7a847c9b607f6e958656d0df0fb15c"]}]
o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ f257fde29c7a
|
o 337fec4d2edc
|
| x 471597cad322
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ f257fde29c7a
|
o 337fec4d2edc
|
| x 471597cad322
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ f257fde29c7a
|
o 337fec4d2edc
|
| x 471597cad322
|/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
@ changeset: 3:f257fde29c7a
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 2:337fec4d2edc
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
| x changeset: 1:471597cad322
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: split as 2:337fec4d2edc, 3:f257fde29c7a
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
template: add predecessors template...
r32879 Test templates with folded commit
=================================
Test setup
----------
$ hg init $TESTTMP/templates-local-fold
$ cd $TESTTMP/templates-local-fold
$ mkcommit ROOT
$ mkcommit A0
$ mkcommit B0
$ hg log --hidden -G
@ changeset: 2:0dec01379d3b
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: B0
|
o changeset: 1:471f378eab4c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Simulate a fold
$ hg up -r "desc(ROOT)"
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ echo "A0" > A0
$ echo "B0" > B0
$ hg commit -A -m "C0"
adding A0
adding B0
created new head
$ hg debugobsolete `getid "desc(A0)"` `getid "desc(C0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 1 new orphan changesets
Boris Feld
template: add predecessors template...
r32879 $ hg debugobsolete `getid "desc(B0)"` `getid "desc(C0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add predecessors template...
r32879
$ hg log --hidden -G
@ changeset: 3:eb5a0daa2192
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 2:0dec01379d3b
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | | obsolete: rewritten as 3:eb5a0daa2192
Boris Feld
template: add predecessors template...
r32879 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten as 3:eb5a0daa2192
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'desc(A0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
o eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 3:eb5a0daa2192
| multi-line: 3:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o eb5a0daa2192
|
| @ 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(B0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 0dec01379d3b
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show both predecessors as they should be both
displayed
$ hg tlog
o eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 2:0dec01379d3b 1:471f378eab4c
| semi-colon: 2:0dec01379d3b; 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", "471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 0dec01379d3b
Boris Feld
template: add successors template...
r33276 | | Successors: 3:eb5a0daa2192
| | multi-line: 3:eb5a0daa2192
| | json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 3:eb5a0daa2192
| multi-line: 3:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o eb5a0daa2192
|
| @ 0dec01379d3b
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(C0)'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Predecessors template should not show predecessors as they are not displayed in
the log
$ hg tlog
@ eb5a0daa2192
|
o ea207398892e
Predecessors template should show both predecessors as we force their display
with --hidden
$ hg tlog --hidden
@ eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 2:0dec01379d3b 1:471f378eab4c
| semi-colon: 2:0dec01379d3b; 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", "471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | x 0dec01379d3b
Boris Feld
template: add successors template...
r33276 | | Successors: 3:eb5a0daa2192
| | multi-line: 3:eb5a0daa2192
| | json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 3:eb5a0daa2192
| multi-line: 3:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog --hidden
@ eb5a0daa2192
|
| x 0dec01379d3b
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
@ eb5a0daa2192
|
| x 0dec01379d3b
| | Obsfate: [{"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]}]
| x 471f378eab4c
|/ Obsfate: [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]}]
o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ eb5a0daa2192
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 3:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ eb5a0daa2192
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 3:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ eb5a0daa2192
|
| x 0dec01379d3b
| | Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000)
| x 471f378eab4c
|/ Obsfate: rewritten as 3:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
@ changeset: 3:eb5a0daa2192
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 2:0dec01379d3b
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten as 3:eb5a0daa2192
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten as 3:eb5a0daa2192
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
template: add minimal obsfate template function...
r33913
Boris Feld
template: add predecessors template...
r32879 Test templates with divergence
==============================
Test setup
----------
$ hg init $TESTTMP/templates-local-divergence
$ cd $TESTTMP/templates-local-divergence
$ mkcommit ROOT
$ mkcommit A0
$ hg commit --amend -m "A1"
$ hg log --hidden -G
@ changeset: 2:fdf9bde5129a
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:fdf9bde5129a
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg update --hidden 'desc(A0)'
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' was rewritten as: fdf9bde5129a)
Boris Feld
template: add predecessors template...
r32879 $ hg commit --amend -m "A2"
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 2 new content-divergent changesets
Boris Feld
template: add predecessors template...
r32879 $ hg log --hidden -G
@ changeset: 3:65b757b745b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add predecessors template...
r32879 | summary: A2
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * changeset: 2:fdf9bde5129a
Boris Feld
template: add predecessors template...
r32879 |/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add predecessors template...
r32879 | summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:fdf9bde5129a
| obsolete: rewritten using amend as 3:65b757b745b9
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg commit --amend -m 'A3'
$ hg log --hidden -G
@ changeset: 4:019fadeab383
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add predecessors template...
r32879 | summary: A3
|
| x changeset: 3:65b757b745b9
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 4:019fadeab383
Boris Feld
template: add predecessors template...
r32879 | summary: A2
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * changeset: 2:fdf9bde5129a
Boris Feld
template: add predecessors template...
r32879 |/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add predecessors template...
r32879 | summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:fdf9bde5129a
| obsolete: rewritten using amend as 3:65b757b745b9
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'desc(A0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' has diverged)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * fdf9bde5129a
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:fdf9bde5129a; 4:019fadeab383
| multi-line: 2:fdf9bde5129a
| multi-line: 4:019fadeab383
| json: [["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
template: add minimal obsfate template function...
r33913 |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * fdf9bde5129a
Boris Feld
template: add minimal obsfate template function...
r33913 |/
| @ 471f378eab4c
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a by test (at 1970-01-01 00:00 +0000); rewritten using amend as 4:019fadeab383 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(A1)'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Predecessors template should not show predecessors as they are not displayed in
the log
$ hg tlog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
template: add predecessors template...
r32879 |
| @ fdf9bde5129a
|/
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
template: add minimal obsfate template function...
r33913 |
| @ fdf9bde5129a
|/
o ea207398892e
Boris Feld
template: add predecessors template...
r32879 Predecessors template should the predecessors as we force their display with
--hidden
$ hg tlog --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 3:65b757b745b9
| semi-colon: 3:65b757b745b9
Boris Feld
template: add predecessors template...
r32879 | json: ["65b757b745b935093c87a2bccd877521cccffcbd"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 3:65b757b745b935093c87a2bccd877521cccffcbd
Boris Feld
template: add predecessors template...
r32879 | x 65b757b745b9
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add successors template...
r33276 | Successors: 4:019fadeab383
| multi-line: 4:019fadeab383
| json: [["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"]]
Boris Feld
template: add predecessors template...
r32879 | @ fdf9bde5129a
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:fdf9bde5129a; 3:65b757b745b9
| multi-line: 2:fdf9bde5129a
| multi-line: 3:65b757b745b9
| json: [["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], ["65b757b745b935093c87a2bccd877521cccffcbd"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
template: add minimal obsfate template function...
r33913 |
| x 65b757b745b9
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 4:019fadeab383 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | @ fdf9bde5129a
|/
| x 471f378eab4c
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a by test (at 1970-01-01 00:00 +0000); rewritten using amend as 3:65b757b745b9 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
template: add minimal obsfate template function...
r33913 |
| x 65b757b745b9
Boris Feld
obsolete: activate effect-flag by default...
r34962 |/ Obsfate: [{"markers": [["65b757b745b935093c87a2bccd877521cccffcbd", ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"]}]
Boris Feld
template: add minimal obsfate template function...
r33913 | @ fdf9bde5129a
|/
| x 471f378eab4c
Boris Feld
obsolete: activate effect-flag by default...
r34962 |/ Obsfate: [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"]}, {"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["65b757b745b935093c87a2bccd877521cccffcbd"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["65b757b745b935093c87a2bccd877521cccffcbd"]}]
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| x 65b757b745b9
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 4:019fadeab383
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | @ fdf9bde5129a
|/
| x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a
| Obsfate: rewritten using amend as 3:65b757b745b9
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| x 65b757b745b9
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 4:019fadeab383
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | @ fdf9bde5129a
|/
| x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a
| Obsfate: rewritten using amend as 3:65b757b745b9
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * 019fadeab383
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| x 65b757b745b9
|/ Obsfate: rewritten using amend as 4:019fadeab383 by test (at 1970-01-01 00:00 +0000)
| @ fdf9bde5129a
|/
| x 471f378eab4c
|/ Obsfate: rewritten using amend as 2:fdf9bde5129a by test (at 1970-01-01 00:00 +0000)
| Obsfate: rewritten using amend as 3:65b757b745b9 by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * changeset: 4:019fadeab383
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| instability: content-divergent
| summary: A3
|
| x changeset: 3:65b757b745b9
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 4:019fadeab383
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A2
|
| @ changeset: 2:fdf9bde5129a
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| instability: content-divergent
| summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 2:fdf9bde5129a
| obsolete: rewritten using amend as 3:65b757b745b9
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Boris Feld
template: add predecessors template...
r32879 Test templates with amended + folded commit
===========================================
Test setup
----------
$ hg init $TESTTMP/templates-local-amend-fold
$ cd $TESTTMP/templates-local-amend-fold
$ mkcommit ROOT
$ mkcommit A0
$ mkcommit B0
$ hg commit --amend -m "B1"
$ hg log --hidden -G
@ changeset: 3:b7ea6d14e664
| tag: tip
| parent: 1:471f378eab4c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: B1
|
| x changeset: 2:0dec01379d3b
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 3:b7ea6d14e664
Boris Feld
template: add predecessors template...
r32879 | summary: B0
|
o changeset: 1:471f378eab4c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
# Simulate a fold
$ hg up -r "desc(ROOT)"
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ echo "A0" > A0
$ echo "B0" > B0
$ hg commit -A -m "C0"
adding A0
adding B0
created new head
$ hg debugobsolete `getid "desc(A0)"` `getid "desc(C0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 1 new orphan changesets
Boris Feld
template: add predecessors template...
r32879 $ hg debugobsolete `getid "desc(B1)"` `getid "desc(C0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add predecessors template...
r32879
$ hg log --hidden -G
@ changeset: 4:eb5a0daa2192
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 3:b7ea6d14e664
| | parent: 1:471f378eab4c
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | | obsolete: rewritten as 4:eb5a0daa2192
Boris Feld
template: add predecessors template...
r32879 | | summary: B1
| |
| | x changeset: 2:0dec01379d3b
| |/ user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | | obsolete: rewritten using amend as 3:b7ea6d14e664
Boris Feld
template: add predecessors template...
r32879 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten as 4:eb5a0daa2192
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'desc(A0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should show current revision as it is the working copy
$ hg tlog
o eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 4:eb5a0daa2192
| multi-line: 4:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o eb5a0daa2192
|
| @ 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(B0)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 0dec01379d3b
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should both predecessors as they are visible
$ hg tlog
o eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 2:0dec01379d3b 1:471f378eab4c
| semi-colon: 2:0dec01379d3b; 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", "471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 0dec01379d3b
Boris Feld
template: add successors template...
r33276 | | Successors: 4:eb5a0daa2192
| | multi-line: 4:eb5a0daa2192
| | json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 4:eb5a0daa2192
| multi-line: 4:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o eb5a0daa2192
|
| @ 0dec01379d3b
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 | | Obsfate: rewritten using amend as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(B1)' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset b7ea6d14e664
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision 'b7ea6d14e664' was rewritten as: eb5a0daa2192)
Boris Feld
template: add predecessors template...
r32879
Predecessors template should both predecessors as they are visible
$ hg tlog
o eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c 3:b7ea6d14e664
| semi-colon: 1:471f378eab4c; 3:b7ea6d14e664
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874", "b7ea6d14e664bdc8922221f7992631b50da3fb07"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874 3:b7ea6d14e664bdc8922221f7992631b50da3fb07
Boris Feld
template: add predecessors template...
r32879 | @ b7ea6d14e664
Boris Feld
template: add successors template...
r33276 | | Successors: 4:eb5a0daa2192
| | multi-line: 4:eb5a0daa2192
| | json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 4:eb5a0daa2192
| multi-line: 4:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o eb5a0daa2192
|
| @ b7ea6d14e664
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(C0)'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Predecessors template should show no predecessors as they are both non visible
$ hg tlog
@ eb5a0daa2192
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
@ eb5a0daa2192
|
o ea207398892e
Boris Feld
template: add predecessors template...
r32879 Predecessors template should show all predecessors as we force their display
with --hidden
$ hg tlog --hidden
@ eb5a0daa2192
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c 3:b7ea6d14e664
| semi-colon: 1:471f378eab4c; 3:b7ea6d14e664
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874", "b7ea6d14e664bdc8922221f7992631b50da3fb07"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874 3:b7ea6d14e664bdc8922221f7992631b50da3fb07
Boris Feld
template: add predecessors template...
r32879 | x b7ea6d14e664
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | | Predecessors: 2:0dec01379d3b
| | semi-colon: 2:0dec01379d3b
Boris Feld
template: add predecessors template...
r32879 | | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add successors template...
r33276 | | Successors: 4:eb5a0daa2192
| | multi-line: 4:eb5a0daa2192
| | json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 | | x 0dec01379d3b
Boris Feld
template: add successors template...
r33276 | |/ Successors: 3:b7ea6d14e664
| | multi-line: 3:b7ea6d14e664
| | json: [["b7ea6d14e664bdc8922221f7992631b50da3fb07"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 4:eb5a0daa2192
| multi-line: 4:eb5a0daa2192
| json: [["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog --hidden
@ eb5a0daa2192
|
| x b7ea6d14e664
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | | x 0dec01379d3b
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 | |/ Obsfate: rewritten using amend as 3:b7ea6d14e664 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
@ eb5a0daa2192
|
| x b7ea6d14e664
| | Obsfate: [{"markers": [["b7ea6d14e664bdc8922221f7992631b50da3fb07", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]}]
| | x 0dec01379d3b
Boris Feld
obsolete: activate effect-flag by default...
r34962 | |/ Obsfate: [{"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["b7ea6d14e664bdc8922221f7992631b50da3fb07"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["b7ea6d14e664bdc8922221f7992631b50da3fb07"]}]
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
|/ Obsfate: [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"]}]
o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ eb5a0daa2192
|
| x b7ea6d14e664
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 4:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | | x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | |/ Obsfate: rewritten using amend as 3:b7ea6d14e664
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 4:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ eb5a0daa2192
|
| x b7ea6d14e664
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 4:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | | x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | |/ Obsfate: rewritten using amend as 3:b7ea6d14e664
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 4:eb5a0daa2192
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ eb5a0daa2192
|
| x b7ea6d14e664
| | Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000)
| | x 0dec01379d3b
| |/ Obsfate: rewritten using amend as 3:b7ea6d14e664 by test (at 1970-01-01 00:00 +0000)
| x 471f378eab4c
|/ Obsfate: rewritten as 4:eb5a0daa2192 by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
@ changeset: 4:eb5a0daa2192
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 3:b7ea6d14e664
| | parent: 1:471f378eab4c
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten as 4:eb5a0daa2192
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: B1
| |
| | x changeset: 2:0dec01379d3b
| |/ user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten using amend as 3:b7ea6d14e664
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten as 4:eb5a0daa2192
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Boris Feld
template: add predecessors template...
r32879 Test template with pushed and pulled obs markers
================================================
Test setup
----------
$ hg init $TESTTMP/templates-local-remote-markers-1
$ cd $TESTTMP/templates-local-remote-markers-1
$ mkcommit ROOT
$ mkcommit A0
$ hg clone $TESTTMP/templates-local-remote-markers-1 $TESTTMP/templates-local-remote-markers-2
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd $TESTTMP/templates-local-remote-markers-2
$ hg log --hidden -G
@ changeset: 1:471f378eab4c
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ cd $TESTTMP/templates-local-remote-markers-1
$ hg commit --amend -m "A1"
$ hg commit --amend -m "A2"
$ hg log --hidden -G
@ changeset: 3:7a230b46bf61
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| x changeset: 2:fdf9bde5129a
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 3:7a230b46bf61
Boris Feld
template: add predecessors template...
r32879 | summary: A1
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:fdf9bde5129a
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ cd $TESTTMP/templates-local-remote-markers-2
$ hg pull
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 pulling from $TESTTMP/templates-local-remote-markers-1
Boris Feld
template: add predecessors template...
r32879 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 0 changes to 1 files (+1 heads)
2 new obsolescence markers
obsolete: reports the number of local changeset obsoleted when unbundling...
r33249 obsoleted 1 changesets
Boris Feld
phase: report number of non-public changeset alongside the new range...
r39516 new changesets 7a230b46bf61 (1 drafts)
Boris Feld
template: add predecessors template...
r32879 (run 'hg heads' to see heads, 'hg merge' to merge)
$ hg log --hidden -G
o changeset: 2:7a230b46bf61
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| @ changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 2:7a230b46bf61
Boris Feld
template: add predecessors template...
r32879 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg debugobsolete
Boris Feld
obsolete: activate effect-flag by default...
r34962 471f378eab4c5e25f6c77f785b27c936efb22874 fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'test'}
fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e 7a230b46bf61e50b30308c6cfd7bd1269ef54702 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'test'}
Boris Feld
template: add predecessors template...
r32879
Check templates
---------------
Predecessors template should show current revision as it is the working copy
$ hg tlog
o 7a230b46bf61
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:7a230b46bf61
| multi-line: 2:7a230b46bf61
| json: [["7a230b46bf61e50b30308c6cfd7bd1269ef54702"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
o 7a230b46bf61
|
| @ 471f378eab4c
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 2:7a230b46bf61 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up 'desc(A2)'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Predecessors template should show no predecessors as they are non visible
$ hg tlog
@ 7a230b46bf61
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
@ 7a230b46bf61
|
o ea207398892e
Boris Feld
template: add predecessors template...
r32879 Predecessors template should show all predecessors as we force their display
with --hidden
$ hg tlog --hidden
@ 7a230b46bf61
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Boris Feld
template: add successors template...
r33276 |/ Successors: 2:7a230b46bf61
| multi-line: 2:7a230b46bf61
| json: [["7a230b46bf61e50b30308c6cfd7bd1269ef54702"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog --hidden
@ 7a230b46bf61
|
| x 471f378eab4c
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 2:7a230b46bf61 by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ 7a230b46bf61
|
| x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:7a230b46bf61
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ 7a230b46bf61
|
| x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:7a230b46bf61
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ 7a230b46bf61
|
| x 471f378eab4c
|/ Obsfate: rewritten using amend as 2:7a230b46bf61 by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
@ changeset: 2:7a230b46bf61
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A2
|
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 2:7a230b46bf61
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Boris Feld
template: add predecessors template...
r32879 Test template with obsmarkers cycle
===================================
Test setup
----------
$ hg init $TESTTMP/templates-local-cycle
$ cd $TESTTMP/templates-local-cycle
$ mkcommit ROOT
$ mkcommit A0
$ mkcommit B0
$ hg up -r 0
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ mkcommit C0
created new head
Create the cycle
$ hg debugobsolete `getid "desc(A0)"` `getid "desc(B0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 1 new orphan changesets
Boris Feld
template: add predecessors template...
r32879 $ hg debugobsolete `getid "desc(B0)"` `getid "desc(C0)"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add predecessors template...
r32879 $ hg debugobsolete `getid "desc(B0)"` `getid "desc(A0)"`
Check templates
---------------
$ hg tlog
@ f897c6137566
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
@ f897c6137566
|
o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up -r "desc(B0)" --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 2 files updated, 0 files merged, 1 files removed, 0 files unresolved
updated to hidden changeset 0dec01379d3b
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '0dec01379d3b' is pruned)
Boris Feld
template: add predecessors template...
r32879 $ hg tlog
o f897c6137566
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add predecessors template...
r32879 | @ 0dec01379d3b
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | | Predecessors: 1:471f378eab4c
| | semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add successors template...
r33276 | | Successors: 3:f897c6137566; 1:471f378eab4c
| | multi-line: 3:f897c6137566
| | multi-line: 1:471f378eab4c
| | json: [["f897c6137566320b081514b4c7227ecc3d384b39"], ["471f378eab4c5e25f6c77f785b27c936efb22874"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add successors template...
r33276 | Successors: 2:0dec01379d3b
| multi-line: 2:0dec01379d3b
| json: [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]]
Boris Feld
template: add predecessors template...
r32879 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
o f897c6137566
|
| @ 0dec01379d3b
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 3:f897c6137566 by test (at 1970-01-01 00:00 +0000); rewritten as 1:471f378eab4c by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 2:0dec01379d3b by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up -r "desc(A0)" --hidden
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg tlog
o f897c6137566
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 1:471f378eab4c
| semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add predecessors template...
r32879 | @ 471f378eab4c
|/
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
o f897c6137566
|
| @ 471f378eab4c
Boris Feld
template: better prune support in obsfate...
r33998 |/ Obsfate: pruned;
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg up -r "desc(ROOT)" --hidden
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg tlog
o f897c6137566
|
@ ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
o f897c6137566
|
@ ea207398892e
Boris Feld
template: add predecessors template...
r32879 $ hg tlog --hidden
o f897c6137566
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add predecessors template...
r32879 | x 0dec01379d3b
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 | | Predecessors: 1:471f378eab4c
| | semi-colon: 1:471f378eab4c
Boris Feld
template: add predecessors template...
r32879 | | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add successors template...
r33276 | | Successors: 3:f897c6137566; 1:471f378eab4c
| | multi-line: 3:f897c6137566
| | multi-line: 1:471f378eab4c
| | json: [["f897c6137566320b081514b4c7227ecc3d384b39"], ["471f378eab4c5e25f6c77f785b27c936efb22874"]]
Boris Feld
template: add predecessors template...
r32879 | x 471f378eab4c
Yuya Nishihara
templatekw: use common "rev:node" format as the default of predecessors...
r32911 |/ Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
Boris Feld
template: add predecessors template...
r32879 | json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
Yuya Nishihara
templatekw: populate all keywords depending on predecessor in map operation...
r32910 | map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add successors template...
r33276 | Successors: 2:0dec01379d3b
| multi-line: 2:0dec01379d3b
| json: [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]]
Boris Feld
template: add predecessors template...
r32879 @ ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
o f897c6137566
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:f897c6137566
| | Obsfate: rewritten as 1:471f378eab4c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 2:0dec01379d3b
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 @ ea207398892e
$ hg fatelogkw --hidden
o f897c6137566
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:f897c6137566
| | Obsfate: rewritten as 1:471f378eab4c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 2:0dec01379d3b
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 @ ea207398892e
$ hg fatelogkw --hidden -v
o f897c6137566
|
| x 0dec01379d3b
| | Obsfate: rewritten as 3:f897c6137566 by test (at 1970-01-01 00:00 +0000)
| | Obsfate: rewritten as 1:471f378eab4c by test (at 1970-01-01 00:00 +0000)
| x 471f378eab4c
|/ Obsfate: rewritten as 2:0dec01379d3b by test (at 1970-01-01 00:00 +0000)
@ ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
o changeset: 3:f897c6137566
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 2:0dec01379d3b
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten as 3:f897c6137566
| | obsolete: rewritten as 1:471f378eab4c
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten as 2:0dec01379d3b
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
@ changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Boris Feld
template: add tests for more complex cases...
r33275 Test template with split + divergence with cycles
=================================================
$ hg log -G
o changeset: 3:f897c6137566
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
@ changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg up
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Create a commit with three files
$ touch A B C
$ hg commit -A -m "Add A,B,C" A B C
Split it
$ hg up 3
0 files updated, 0 files merged, 3 files removed, 0 files unresolved
$ touch A
$ hg commit -A -m "Add A,B,C" A
created new head
$ touch B
$ hg commit -A -m "Add A,B,C" B
$ touch C
$ hg commit -A -m "Add A,B,C" C
$ hg log -G
@ changeset: 7:ba2ed02b0c9a
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 6:4a004186e638
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 5:dd800401bd8c
| parent: 3:f897c6137566
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
| o changeset: 4:9bd10a0775e4
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 3:f897c6137566
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
$ hg debugobsolete `getid "4"` `getid "5"` `getid "6"` `getid "7"`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add tests for more complex cases...
r33275 $ hg log -G
@ changeset: 7:ba2ed02b0c9a
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 6:4a004186e638
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 5:dd800401bd8c
| parent: 3:f897c6137566
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: Add A,B,C
|
o changeset: 3:f897c6137566
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Diverge one of the splitted commit
$ hg up 6
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg commit --amend -m "Add only B"
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 1 new orphan changesets
Boris Feld
template: add tests for more complex cases...
r33275
$ hg up 6 --hidden
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg commit --amend -m "Add B only"
Martin von Zweigbergk
evolution: report new unstable changesets...
r35727 4 new content-divergent changesets
Boris Feld
template: add tests for more complex cases...
r33275
$ hg log -G
@ changeset: 9:0b997eb7ceee
| tag: tip
| parent: 5:dd800401bd8c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add tests for more complex cases...
r33275 | summary: Add B only
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * changeset: 8:b18bc8331526
Boris Feld
template: add tests for more complex cases...
r33275 |/ parent: 5:dd800401bd8c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add tests for more complex cases...
r33275 | summary: Add only B
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * changeset: 7:ba2ed02b0c9a
Boris Feld
template: add tests for more complex cases...
r33275 | | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | | instability: orphan, content-divergent
Boris Feld
template: add tests for more complex cases...
r33275 | | summary: Add A,B,C
| |
| x changeset: 6:4a004186e638
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: rewritten using amend as 8:b18bc8331526
| obsolete: rewritten using amend as 9:0b997eb7ceee
Boris Feld
template: add tests for more complex cases...
r33275 | summary: Add A,B,C
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * changeset: 5:dd800401bd8c
Boris Feld
template: add tests for more complex cases...
r33275 | parent: 3:f897c6137566
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
evolution: rename divergent to content-divergent...
r33651 | instability: content-divergent
Boris Feld
template: add tests for more complex cases...
r33275 | summary: Add A,B,C
|
o changeset: 3:f897c6137566
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg tlog
@ 0b997eb7ceee
| Predecessors: 6:4a004186e638
| semi-colon: 6:4a004186e638
| json: ["4a004186e63889f20cb16434fcbd72220bd1eace"]
| map: 6:4a004186e63889f20cb16434fcbd72220bd1eace
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * b18bc8331526
Boris Feld
template: add tests for more complex cases...
r33275 |/ Predecessors: 6:4a004186e638
| semi-colon: 6:4a004186e638
| json: ["4a004186e63889f20cb16434fcbd72220bd1eace"]
| map: 6:4a004186e63889f20cb16434fcbd72220bd1eace
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * ba2ed02b0c9a
Boris Feld
template: add tests for more complex cases...
r33275 | |
| x 4a004186e638
Boris Feld
template: add successors template...
r33276 |/ Successors: 8:b18bc8331526; 9:0b997eb7ceee
| multi-line: 8:b18bc8331526
| multi-line: 9:0b997eb7ceee
| json: [["b18bc8331526a22cbb1801022bd1555bf291c48b"], ["0b997eb7ceeee06200a02f8aab185979092d514e"]]
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add tests for more complex cases...
r33275 |
o f897c6137566
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
@ 0b997eb7ceee
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * b18bc8331526
Boris Feld
template: add minimal obsfate template function...
r33913 |/
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * ba2ed02b0c9a
Boris Feld
template: add minimal obsfate template function...
r33913 | |
| x 4a004186e638
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 8:b18bc8331526 by test (at 1970-01-01 00:00 +0000); rewritten using amend as 9:0b997eb7ceee by test (at 1970-01-01 00:00 +0000);
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add minimal obsfate template function...
r33913 |
o f897c6137566
|
o ea207398892e
Boris Feld
template: add tests for more complex cases...
r33275 $ hg tlog --hidden
@ 0b997eb7ceee
| Predecessors: 6:4a004186e638
| semi-colon: 6:4a004186e638
| json: ["4a004186e63889f20cb16434fcbd72220bd1eace"]
| map: 6:4a004186e63889f20cb16434fcbd72220bd1eace
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * b18bc8331526
Boris Feld
template: add tests for more complex cases...
r33275 |/ Predecessors: 6:4a004186e638
| semi-colon: 6:4a004186e638
| json: ["4a004186e63889f20cb16434fcbd72220bd1eace"]
| map: 6:4a004186e63889f20cb16434fcbd72220bd1eace
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * ba2ed02b0c9a
Boris Feld
template: add tests for more complex cases...
r33275 | | Predecessors: 4:9bd10a0775e4
| | semi-colon: 4:9bd10a0775e4
| | json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| | map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
| x 4a004186e638
|/ Predecessors: 4:9bd10a0775e4
| semi-colon: 4:9bd10a0775e4
| json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
Boris Feld
template: add successors template...
r33276 | Successors: 8:b18bc8331526; 9:0b997eb7ceee
| multi-line: 8:b18bc8331526
| multi-line: 9:0b997eb7ceee
| json: [["b18bc8331526a22cbb1801022bd1555bf291c48b"], ["0b997eb7ceeee06200a02f8aab185979092d514e"]]
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add tests for more complex cases...
r33275 | Predecessors: 4:9bd10a0775e4
| semi-colon: 4:9bd10a0775e4
| json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
| x 9bd10a0775e4
Boris Feld
template: add successors template...
r33276 |/ Successors: 5:dd800401bd8c 6:4a004186e638 7:ba2ed02b0c9a
| multi-line: 5:dd800401bd8c 6:4a004186e638 7:ba2ed02b0c9a
| json: [["dd800401bd8c79d815329277739e433e883f784e", "4a004186e63889f20cb16434fcbd72220bd1eace", "ba2ed02b0c9a56b9fdbc4e79c7e57866984d8a1f"]]
Boris Feld
template: add tests for more complex cases...
r33275 o f897c6137566
| Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
| json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
| map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
| x 0dec01379d3b
| | Predecessors: 1:471f378eab4c
| | semi-colon: 1:471f378eab4c
| | json: ["471f378eab4c5e25f6c77f785b27c936efb22874"]
| | map: 1:471f378eab4c5e25f6c77f785b27c936efb22874
Boris Feld
template: add successors template...
r33276 | | Successors: 3:f897c6137566; 1:471f378eab4c
| | multi-line: 3:f897c6137566
| | multi-line: 1:471f378eab4c
| | json: [["f897c6137566320b081514b4c7227ecc3d384b39"], ["471f378eab4c5e25f6c77f785b27c936efb22874"]]
Boris Feld
template: add tests for more complex cases...
r33275 | x 471f378eab4c
|/ Predecessors: 2:0dec01379d3b
| semi-colon: 2:0dec01379d3b
| json: ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]
| map: 2:0dec01379d3be6318c470ead31b1fe7ae7cb53d5
Boris Feld
template: add successors template...
r33276 | Successors: 2:0dec01379d3b
| multi-line: 2:0dec01379d3b
| json: [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]]
Boris Feld
template: add tests for more complex cases...
r33275 o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog --hidden
@ 0b997eb7ceee
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * b18bc8331526
Boris Feld
template: add minimal obsfate template function...
r33913 |/
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * ba2ed02b0c9a
Boris Feld
template: add minimal obsfate template function...
r33913 | |
| x 4a004186e638
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 8:b18bc8331526 by test (at 1970-01-01 00:00 +0000); rewritten using amend as 9:0b997eb7ceee by test (at 1970-01-01 00:00 +0000);
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add minimal obsfate template function...
r33913 |
| x 9bd10a0775e4
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o f897c6137566
|
| x 0dec01379d3b
Boris Feld
template: compute dates in obsfatedate...
r33997 | | Obsfate: rewritten as 3:f897c6137566 by test (at 1970-01-01 00:00 +0000); rewritten as 1:471f378eab4c by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 | x 471f378eab4c
Boris Feld
template: compute dates in obsfatedate...
r33997 |/ Obsfate: rewritten as 2:0dec01379d3b by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
$ hg fatelogjson --hidden
@ 0b997eb7ceee
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * b18bc8331526
Boris Feld
template: add minimal obsfate template function...
r33913 |/
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * ba2ed02b0c9a
Boris Feld
template: add minimal obsfate template function...
r33913 | |
| x 4a004186e638
Boris Feld
obsolete: activate effect-flag by default...
r34962 |/ Obsfate: [{"markers": [["4a004186e63889f20cb16434fcbd72220bd1eace", ["b18bc8331526a22cbb1801022bd1555bf291c48b"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["b18bc8331526a22cbb1801022bd1555bf291c48b"]}, {"markers": [["4a004186e63889f20cb16434fcbd72220bd1eace", ["0b997eb7ceeee06200a02f8aab185979092d514e"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "successors": ["0b997eb7ceeee06200a02f8aab185979092d514e"]}]
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add minimal obsfate template function...
r33913 |
| x 9bd10a0775e4
|/ Obsfate: [{"markers": [["9bd10a0775e478708cada5f176ec6de654359ce7", ["dd800401bd8c79d815329277739e433e883f784e", "4a004186e63889f20cb16434fcbd72220bd1eace", "ba2ed02b0c9a56b9fdbc4e79c7e57866984d8a1f"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["dd800401bd8c79d815329277739e433e883f784e", "4a004186e63889f20cb16434fcbd72220bd1eace", "ba2ed02b0c9a56b9fdbc4e79c7e57866984d8a1f"]}]
o f897c6137566
|
| x 0dec01379d3b
| | Obsfate: [{"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["f897c6137566320b081514b4c7227ecc3d384b39"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["f897c6137566320b081514b4c7227ecc3d384b39"]}, {"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["471f378eab4c5e25f6c77f785b27c936efb22874"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["471f378eab4c5e25f6c77f785b27c936efb22874"]}]
| x 471f378eab4c
|/ Obsfate: [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"], 0, [["user", "test"]], [0.0, 0], null]], "successors": ["0dec01379d3be6318c470ead31b1fe7ae7cb53d5"]}]
o ea207398892e
Boris Feld
template: add tests for more complex cases...
r33275 $ hg up --hidden 4
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 9bd10a0775e4
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '9bd10a0775e4' has diverged)
Boris Feld
template: add tests for more complex cases...
r33275 $ hg rebase -r 7 -d 8 --config extensions.rebase=
rebasing 7:ba2ed02b0c9a "Add A,B,C"
$ hg tlog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * eceed8f98ffc
Boris Feld
template: add tests for more complex cases...
r33275 | Predecessors: 4:9bd10a0775e4
| semi-colon: 4:9bd10a0775e4
| json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * 0b997eb7ceee
Boris Feld
template: add tests for more complex cases...
r33275 | | Predecessors: 4:9bd10a0775e4
| | semi-colon: 4:9bd10a0775e4
| | json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| | map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | b18bc8331526
Boris Feld
template: add tests for more complex cases...
r33275 |/ Predecessors: 4:9bd10a0775e4
| semi-colon: 4:9bd10a0775e4
| json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add tests for more complex cases...
r33275 | Predecessors: 4:9bd10a0775e4
| semi-colon: 4:9bd10a0775e4
| json: ["9bd10a0775e478708cada5f176ec6de654359ce7"]
| map: 4:9bd10a0775e478708cada5f176ec6de654359ce7
| @ 9bd10a0775e4
Boris Feld
template: add successors template...
r33276 |/ Successors: 5:dd800401bd8c 9:0b997eb7ceee 10:eceed8f98ffc; 5:dd800401bd8c 8:b18bc8331526 10:eceed8f98ffc
| multi-line: 5:dd800401bd8c 9:0b997eb7ceee 10:eceed8f98ffc
| multi-line: 5:dd800401bd8c 8:b18bc8331526 10:eceed8f98ffc
| json: [["dd800401bd8c79d815329277739e433e883f784e", "0b997eb7ceeee06200a02f8aab185979092d514e", "eceed8f98ffc4186032e29a6542ab98888ebf68d"], ["dd800401bd8c79d815329277739e433e883f784e", "b18bc8331526a22cbb1801022bd1555bf291c48b", "eceed8f98ffc4186032e29a6542ab98888ebf68d"]]
Boris Feld
template: add tests for more complex cases...
r33275 o f897c6137566
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913
$ hg fatelog
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * eceed8f98ffc
Boris Feld
template: add minimal obsfate template function...
r33913 |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * 0b997eb7ceee
Boris Feld
template: add minimal obsfate template function...
r33913 | |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | b18bc8331526
Boris Feld
template: add minimal obsfate template function...
r33913 |/
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
template: add minimal obsfate template function...
r33913 |
| @ 9bd10a0775e4
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: split using amend, rebase as 5:dd800401bd8c, 9:0b997eb7ceee, 10:eceed8f98ffc by test (at 1970-01-01 00:00 +0000); split using amend, rebase as 5:dd800401bd8c, 8:b18bc8331526, 10:eceed8f98ffc by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o f897c6137566
|
o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * eceed8f98ffc
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * 0b997eb7ceee
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | b18bc8331526
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |/
| x ba2ed02b0c9a
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten using rebase as 10:eceed8f98ffc
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 4a004186e638
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 8:b18bc8331526
| Obsfate: rewritten using amend as 9:0b997eb7ceee
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| @ 9bd10a0775e4
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o f897c6137566
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:f897c6137566
| | Obsfate: rewritten as 1:471f378eab4c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 2:0dec01379d3b
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * eceed8f98ffc
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * 0b997eb7ceee
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | b18bc8331526
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |/
| x ba2ed02b0c9a
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten using rebase as 10:eceed8f98ffc
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 4a004186e638
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 8:b18bc8331526
| Obsfate: rewritten using amend as 9:0b997eb7ceee
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| @ 9bd10a0775e4
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o f897c6137566
|
| x 0dec01379d3b
Boris Feld
obsfate: only display date in verbose mode...
r34852 | | Obsfate: rewritten as 3:f897c6137566
| | Obsfate: rewritten as 1:471f378eab4c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten as 2:0dec01379d3b
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * eceed8f98ffc
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * 0b997eb7ceee
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | b18bc8331526
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |/
| x ba2ed02b0c9a
| | Obsfate: rewritten using rebase as 10:eceed8f98ffc by test (at 1970-01-01 00:00 +0000)
| x 4a004186e638
|/ Obsfate: rewritten using amend as 8:b18bc8331526 by test (at 1970-01-01 00:00 +0000)
| Obsfate: rewritten using amend as 9:0b997eb7ceee by test (at 1970-01-01 00:00 +0000)
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * dd800401bd8c
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 |
| @ 9bd10a0775e4
|/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a by test (at 1970-01-01 00:00 +0000)
o f897c6137566
|
| x 0dec01379d3b
| | Obsfate: rewritten as 3:f897c6137566 by test (at 1970-01-01 00:00 +0000)
| | Obsfate: rewritten as 1:471f378eab4c by test (at 1970-01-01 00:00 +0000)
| x 471f378eab4c
|/ Obsfate: rewritten as 2:0dec01379d3b by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * changeset: 10:eceed8f98ffc
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | tag: tip
| parent: 8:b18bc8331526
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| instability: content-divergent
| summary: Add A,B,C
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 | * changeset: 9:0b997eb7ceee
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | parent: 5:dd800401bd8c
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
| | instability: content-divergent
| | summary: Add B only
| |
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * | changeset: 8:b18bc8331526
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 |/ parent: 5:dd800401bd8c
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| instability: content-divergent
| summary: Add only B
|
| x changeset: 7:ba2ed02b0c9a
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten using rebase as 10:eceed8f98ffc
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: Add A,B,C
| |
| x changeset: 6:4a004186e638
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 8:b18bc8331526
| obsolete: rewritten using amend as 9:0b997eb7ceee
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: Add A,B,C
|
av6
graphlog: add another graph node type, unstable, using character "*" (BC)
r35524 * changeset: 5:dd800401bd8c
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | parent: 3:f897c6137566
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| instability: content-divergent
| summary: Add A,B,C
|
| @ changeset: 4:9bd10a0775e4
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: Add A,B,C
|
o changeset: 3:f897c6137566
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: C0
|
| x changeset: 2:0dec01379d3b
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | | obsolete: rewritten as 3:f897c6137566
| | obsolete: rewritten as 1:471f378eab4c
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | | summary: B0
| |
| x changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten as 2:0dec01379d3b
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
template: add tests for more complex cases...
r33275 Test templates with pruned commits
==================================
Test setup
----------
$ hg init $TESTTMP/templates-local-prune
$ cd $TESTTMP/templates-local-prune
$ mkcommit ROOT
$ mkcommit A0
$ hg debugobsolete --record-parent `getid "."`
Boris Feld
debugobsolete: also report the number of obsoleted changesets...
r33542 obsoleted 1 changesets
Boris Feld
template: add tests for more complex cases...
r33275
Check output
------------
$ hg up "desc(A0)" --hidden
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg tlog
@ 471f378eab4c
|
o ea207398892e
Boris Feld
template: add minimal obsfate template function...
r33913 $ hg fatelog
@ 471f378eab4c
Boris Feld
template: better prune support in obsfate...
r33998 | Obsfate: pruned by test (at 1970-01-01 00:00 +0000);
Boris Feld
template: add minimal obsfate template function...
r33913 o ea207398892e
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 Test templates with multiple pruned commits
===========================================
Test setup
----------
$ hg init $TESTTMP/multiple-local-prune
$ cd $TESTTMP/multiple-local-prune
$ mkcommit ROOT
$ mkcommit A0
$ hg commit --amend -m "A1"
$ hg debugobsolete --record-parent `getid "."`
obsoleted 1 changesets
$ hg up -r "desc(A0)" --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' is pruned)
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 $ hg commit --amend -m "A2"
$ hg debugobsolete --record-parent `getid "."`
obsoleted 1 changesets
Check output
------------
$ hg up "desc(A0)" --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471f378eab4c
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471f378eab4c' is pruned)
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 $ hg tlog
@ 471f378eab4c
|
o ea207398892e
# todo: the obsfate output is not ideal
$ hg fatelog
@ 471f378eab4c
| Obsfate: pruned;
o ea207398892e
Boris Feld
test: cleanup verbosity variant from fatelog test...
r34578 $ hg fatelog --hidden
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 x 65b757b745b9
| Obsfate: pruned by test (at 1970-01-01 00:00 +0000);
| x fdf9bde5129a
|/ Obsfate: pruned by test (at 1970-01-01 00:00 +0000);
| @ 471f378eab4c
Martin von Zweigbergk
templates: introduce a obsfateoperation() function...
r34288 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a by test (at 1970-01-01 00:00 +0000); rewritten using amend as 3:65b757b745b9 by test (at 1970-01-01 00:00 +0000);
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
x 65b757b745b9
Boris Feld
obsfate: only display date in verbose mode...
r34852 | Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x fdf9bde5129a
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | @ 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a
| Obsfate: rewritten using amend as 3:65b757b745b9
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
x 65b757b745b9
Boris Feld
obsfate: only display date in verbose mode...
r34852 | Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | x fdf9bde5129a
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 | @ 471f378eab4c
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: rewritten using amend as 2:fdf9bde5129a
| Obsfate: rewritten using amend as 3:65b757b745b9
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
x 65b757b745b9
| Obsfate: pruned by test (at 1970-01-01 00:00 +0000)
| x fdf9bde5129a
|/ Obsfate: pruned by test (at 1970-01-01 00:00 +0000)
| @ 471f378eab4c
|/ Obsfate: rewritten using amend as 2:fdf9bde5129a by test (at 1970-01-01 00:00 +0000)
| Obsfate: rewritten using amend as 3:65b757b745b9 by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
x changeset: 3:65b757b745b9
| tag: tip
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: pruned
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A2
|
| x changeset: 2:fdf9bde5129a
|/ parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: pruned
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A1
|
| @ changeset: 1:471f378eab4c
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: rewritten using amend as 2:fdf9bde5129a
| obsolete: rewritten using amend as 3:65b757b745b9
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 Test templates with splitted and pruned commit
==============================================
$ hg init $TESTTMP/templates-local-split-prune
$ cd $TESTTMP/templates-local-split-prune
$ mkcommit ROOT
$ echo 42 >> a
$ echo 43 >> b
$ hg commit -A -m "A0"
adding a
adding b
$ hg log --hidden -G
@ changeset: 1:471597cad322
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
# Simulate split
$ hg up -r "desc(ROOT)"
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
$ echo 42 >> a
$ hg commit -A -m "A1"
adding a
created new head
$ echo 43 >> b
$ hg commit -A -m "A2"
adding b
$ hg debugobsolete `getid "1"` `getid "2"` `getid "3"`
obsoleted 1 changesets
# Simulate prune
$ hg debugobsolete --record-parent `getid "."`
obsoleted 1 changesets
$ hg log --hidden -G
@ changeset: 3:0d0ef4bdf70e
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: pruned
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 | summary: A2
|
o changeset: 2:617adc3a144c
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A1
|
| x changeset: 1:471597cad322
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in changeset_printer...
r34901 | obsolete: split as 2:617adc3a144c, 3:0d0ef4bdf70e
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Check templates
---------------
$ hg up 'desc("A0")' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 471597cad322
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '471597cad322' is pruned)
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999
# todo: the obsfate output is not ideal
$ hg fatelog
o 617adc3a144c
|
| @ 471597cad322
|/ Obsfate: pruned;
o ea207398892e
$ hg up -r 'desc("A2")' --hidden
Martin von Zweigbergk
update: print warning about hidden changeset after update...
r37939 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to hidden changeset 0d0ef4bdf70e
Boris Feld
update: display the obsfate of hidden revision we update to...
r35729 (hidden revision '0d0ef4bdf70e' is pruned)
Boris Feld
test: add more obsmarker tests for pruning scenarios...
r33999
$ hg fatelog --hidden
@ 0d0ef4bdf70e
| Obsfate: pruned by test (at 1970-01-01 00:00 +0000);
o 617adc3a144c
|
| x 471597cad322
|/ Obsfate: split as 2:617adc3a144c, 3:0d0ef4bdf70e by test (at 1970-01-01 00:00 +0000);
o ea207398892e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849
Check other fatelog implementations
-----------------------------------
$ hg fatelogkw --hidden -q
@ 0d0ef4bdf70e
Boris Feld
obsfate: only display date in verbose mode...
r34852 | Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o 617adc3a144c
|
| x 471597cad322
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 2:617adc3a144c, 3:0d0ef4bdf70e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden
@ 0d0ef4bdf70e
Boris Feld
obsfate: only display date in verbose mode...
r34852 | Obsfate: pruned
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o 617adc3a144c
|
| x 471597cad322
Boris Feld
obsfate: only display date in verbose mode...
r34852 |/ Obsfate: split as 2:617adc3a144c, 3:0d0ef4bdf70e
Boris Feld
test: test obfate template keyword in test-obsmarker-template.t...
r34849 o ea207398892e
$ hg fatelogkw --hidden -v
@ 0d0ef4bdf70e
| Obsfate: pruned by test (at 1970-01-01 00:00 +0000)
o 617adc3a144c
|
| x 471597cad322
|/ Obsfate: split as 2:617adc3a144c, 3:0d0ef4bdf70e by test (at 1970-01-01 00:00 +0000)
o ea207398892e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 $ hg log -G -T "default" --hidden
@ changeset: 3:0d0ef4bdf70e
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: pruned
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A2
|
o changeset: 2:617adc3a144c
| parent: 0:ea207398892e
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: A1
|
| x changeset: 1:471597cad322
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 | obsolete: split as 2:617adc3a144c, 3:0d0ef4bdf70e
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 | summary: A0
|
o changeset: 0:ea207398892e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: ROOT
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729
Test metadata encoding (issue5754)
==================================
$ hg init $TESTTMP/metadata-encoding
$ cd $TESTTMP/metadata-encoding
$ cat <<'EOF' >> .hg/hgrc
> [extensions]
> amend =
> EOF
Matt Harbison
tests: quote PYTHON usage...
r39743 $ "$PYTHON" <<'EOF'
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 > with open('test1', 'wb') as f:
> f.write(b't\xe8st1') and None
> with open('test2', 'wb') as f:
> f.write(b't\xe8st2') and None
> EOF
$ mkcommit ROOT
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 $ ( HGENCODING=latin-1 HGUSER="`cat test1`" mkcommit A0 )
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 $ echo 42 >> A0
Yuya Nishihara
test-obsmarker-template: add missing HGENCODING=latin-1...
r38770 $ HGENCODING=latin-1 hg amend -m "A1" --note "`cat test2`"
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 $ HGENCODING=latin-1 hg amend -m "A2" \
> --config devel.user.obsmarker="`cat test2`"
$ mkcommit B0
$ HGENCODING=latin-1 hg debugobsolete -u "`cat test2`" "`getid 'desc(B0)'`"
obsoleted 1 changesets
metadata should be stored in UTF-8, and debugobsolete doesn't decode it to
local encoding since the command is supposed to show unmodified content:
$ HGENCODING=latin-1 hg debugobsolete
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 5f66a482f0bb2fcaccfc215554ad5eb9f40b50f5 718c0d00cee1429bdb73064e0d88908c601507a8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '9', 'note': 't\xc3\xa8st2', 'operation': 'amend', 'user': 'test'}
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 718c0d00cee1429bdb73064e0d88908c601507a8 1132562159b35bb27e1d6b80c80ee94a1659a4da 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 't\xc3\xa8st2'}
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 8f82db6f991db367fdbb3b6dba5e187ecc3ebd96 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 't\xc3\xa8st2'}
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729
metadata should be converted back to local encoding when displaying:
$ HGENCODING=latin-1 hg fatelog --hidden
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 @ 8f82db6f991d
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 | Obsfate: pruned by t\xe8st2 (at 1970-01-01 00:00 +0000); (esc)
o 1132562159b3
|
| x 718c0d00cee1
|/ Obsfate: rewritten using amend as 3:1132562159b3 by t\xe8st2 (at 1970-01-01 00:00 +0000); (esc)
| x 5f66a482f0bb
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 |/ Obsfate: rewritten using amend as 2:718c0d00cee1 by test (at 1970-01-01 00:00 +0000);
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 o ea207398892e
$ HGENCODING=utf-8 hg fatelog --hidden
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 @ 8f82db6f991d
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 | Obsfate: pruned by t\xc3\xa8st2 (at 1970-01-01 00:00 +0000); (esc)
o 1132562159b3
|
| x 718c0d00cee1
|/ Obsfate: rewritten using amend as 3:1132562159b3 by t\xc3\xa8st2 (at 1970-01-01 00:00 +0000); (esc)
| x 5f66a482f0bb
Yuya Nishihara
test-obsmarker-template: run mkcommit in subshell to isolate envvars...
r38771 |/ Obsfate: rewritten using amend as 2:718c0d00cee1 by test (at 1970-01-01 00:00 +0000);
Yuya Nishihara
obsolete: store user name and note in UTF-8 (issue5754) (BC)...
r38729 o ea207398892e