Mercurial > hg
annotate tests/test-template-functions.t @ 48383:4237be881bb6
status: adapt the "keyword" extensions to gather stats at lookup time
See main core code for details.
We don't factor the code in a common function yet, because we will have to adapt
a bit more things in the keyword case at the end of the series.
Differential Revision: https://phab.mercurial-scm.org/D11787
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 18 Nov 2021 22:49:05 +0100 |
parents | 8c4881c07f57 |
children | 42d2b31cee0b |
rev | line source |
---|---|
38434
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
1 Test template filters and functions |
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
2 =================================== |
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
3 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
4 $ hg init a |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
5 $ cd a |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
6 $ echo a > a |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
7 $ hg add a |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
8 $ echo line 1 > b |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
9 $ echo line 2 >> b |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
10 $ hg commit -l b -d '1000000 0' -u 'User Name <user@hostname>' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
11 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
12 $ hg add b |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
13 $ echo other 1 > c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
14 $ echo other 2 >> c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
15 $ echo >> c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
16 $ echo other 3 >> c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
17 $ hg commit -l c -d '1100000 0' -u 'A. N. Other <other@place>' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
18 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
19 $ hg add c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
20 $ hg commit -m 'no person' -d '1200000 0' -u 'other@place' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
21 $ echo c >> c |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
22 $ hg commit -m 'no user, no domain' -d '1300000 0' -u 'person' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
23 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
24 $ echo foo > .hg/branch |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
25 $ hg commit -m 'new branch' -d '1400000 0' -u 'person' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
26 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
27 $ hg co -q 3 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
28 $ echo other 4 >> d |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
29 $ hg add d |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
30 $ hg commit -m 'new head' -d '1500000 0' -u 'person' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
31 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
32 $ hg merge -q foo |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
33 $ hg commit -m 'merge' -d '1500001 0' -u 'person' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
34 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
35 Second branch starting at nullrev: |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
36 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
37 $ hg update null |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
38 0 files updated, 0 files merged, 4 files removed, 0 files unresolved |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
39 $ echo second > second |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
40 $ hg add second |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
41 $ hg commit -m second -d '1000000 0' -u 'User Name <user@hostname>' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
42 created new head |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
43 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
44 $ echo third > third |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
45 $ hg add third |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
46 $ hg mv second fourth |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
47 $ hg commit -m third -d "2020-01-01 10:01" |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
48 |
22764
1e2f54a149e8
templater: set the correct phase for parents
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
22668
diff
changeset
|
49 $ hg phase -r 5 --public |
1e2f54a149e8
templater: set the correct phase for parents
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
22668
diff
changeset
|
50 $ hg phase -r 7 --secret --force |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
51 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
52 Filters work: |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
53 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
54 $ hg log --template '{author|domain}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
55 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
56 hostname |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
57 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
58 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
59 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
60 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
61 place |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
62 place |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
63 hostname |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
64 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
65 $ hg log --template '{author|person}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
66 test |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
67 User Name |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
68 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
69 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
70 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
71 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
72 other |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
73 A. N. Other |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
74 User Name |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
75 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
76 $ hg log --template '{author|user}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
77 test |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
78 user |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
79 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
80 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
81 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
82 person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
83 other |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
84 other |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
85 user |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
86 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
87 $ hg log --template '{date|date}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
88 Wed Jan 01 10:01:00 2020 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
89 Mon Jan 12 13:46:40 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
90 Sun Jan 18 08:40:01 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
91 Sun Jan 18 08:40:00 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
92 Sat Jan 17 04:53:20 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
93 Fri Jan 16 01:06:40 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
94 Wed Jan 14 21:20:00 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
95 Tue Jan 13 17:33:20 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
96 Mon Jan 12 13:46:40 1970 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
97 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
98 $ hg log --template '{date|isodate}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
99 2020-01-01 10:01 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
100 1970-01-12 13:46 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
101 1970-01-18 08:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
102 1970-01-18 08:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
103 1970-01-17 04:53 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
104 1970-01-16 01:06 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
105 1970-01-14 21:20 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
106 1970-01-13 17:33 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
107 1970-01-12 13:46 +0000 |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
108 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
109 $ hg log --template '{date|isodatesec}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
110 2020-01-01 10:01:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
111 1970-01-12 13:46:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
112 1970-01-18 08:40:01 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
113 1970-01-18 08:40:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
114 1970-01-17 04:53:20 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
115 1970-01-16 01:06:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
116 1970-01-14 21:20:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
117 1970-01-13 17:33:20 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
118 1970-01-12 13:46:40 +0000 |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
119 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
120 $ hg log --template '{date|rfc822date}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
121 Wed, 01 Jan 2020 10:01:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
122 Mon, 12 Jan 1970 13:46:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
123 Sun, 18 Jan 1970 08:40:01 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
124 Sun, 18 Jan 1970 08:40:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
125 Sat, 17 Jan 1970 04:53:20 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
126 Fri, 16 Jan 1970 01:06:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
127 Wed, 14 Jan 1970 21:20:00 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
128 Tue, 13 Jan 1970 17:33:20 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
129 Mon, 12 Jan 1970 13:46:40 +0000 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
130 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
131 $ hg log --template '{desc|firstline}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
132 third |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
133 second |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
134 merge |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
135 new head |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
136 new branch |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
137 no user, no domain |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
138 no person |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
139 other 1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
140 line 1 |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
141 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
142 $ hg log --template '{node|short}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
143 95c24699272e |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
144 29114dbae42b |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13666
diff
changeset
|
145 d41e714fe50d |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
146 13207e5a10d9 |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13666
diff
changeset
|
147 bbe44766e73d |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
148 10e46f2dcbf4 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
149 97054abb4ab8 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
150 b608e9d1a3f0 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
151 1e4e1b8f71e0 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
152 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
153 $ hg log --template '<changeset author="{author|xmlescape}"/>\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
154 <changeset author="test"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
155 <changeset author="User Name <user@hostname>"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
156 <changeset author="person"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
157 <changeset author="person"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
158 <changeset author="person"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
159 <changeset author="person"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
160 <changeset author="other@place"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
161 <changeset author="A. N. Other <other@place>"/> |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
162 <changeset author="User Name <user@hostname>"/> |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
163 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
164 $ hg log --template '{rev}: {children}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
165 8: |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
166 7: 8:95c24699272e |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
167 6: |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13666
diff
changeset
|
168 5: 6:d41e714fe50d |
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13666
diff
changeset
|
169 4: 6:d41e714fe50d |
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13666
diff
changeset
|
170 3: 4:bbe44766e73d 5:13207e5a10d9 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
171 2: 3:10e46f2dcbf4 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
172 1: 2:97054abb4ab8 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
173 0: 1:b608e9d1a3f0 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
174 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
175 Formatnode filter works: |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
176 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
177 $ hg -q log -r 0 --template '{node|formatnode}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
178 1e4e1b8f71e0 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
179 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
180 $ hg log -r 0 --template '{node|formatnode}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
181 1e4e1b8f71e0 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
182 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
183 $ hg -v log -r 0 --template '{node|formatnode}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
184 1e4e1b8f71e0 |
9536
f04d17912441
cmdutil: templating keywords latesttag and latesttagdistance
Mads Kiilerich <mads@kiilerich.com>
parents:
9382
diff
changeset
|
185 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
186 $ hg --debug log -r 0 --template '{node|formatnode}\n' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
187 1e4e1b8f71e05681d422154f5421e385fec3454f |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
188 |
15839
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
189 Age filter: |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
190 |
25005
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
191 $ hg init unstable-hash |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
192 $ cd unstable-hash |
15839
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
193 $ hg log --template '{date|age}\n' > /dev/null || exit 1 |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
194 |
33950
42361715dd11
tests: update test-command-template to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33865
diff
changeset
|
195 >>> from __future__ import absolute_import |
42361715dd11
tests: update test-command-template to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33865
diff
changeset
|
196 >>> import datetime |
36504
b075f45456a5
py3: fix test-command-template.t to write files in binary mode
Yuya Nishihara <yuya@tcha.org>
parents:
36445
diff
changeset
|
197 >>> fp = open('a', 'wb') |
33950
42361715dd11
tests: update test-command-template to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33865
diff
changeset
|
198 >>> n = datetime.datetime.now() + datetime.timedelta(366 * 7) |
36542
106e93d16435
py3: silence return value of file.write() in test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
36504
diff
changeset
|
199 >>> fp.write(b'%d-%d-%d 00:00' % (n.year, n.month, n.day)) and None |
15839
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
200 >>> fp.close() |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
201 $ hg add a |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
202 $ hg commit -m future -d "`cat a`" |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
203 |
17345
4f8054d3171b
check-code: fix check for trailing whitespace on sh command lines
Mads Kiilerich <mads@kiilerich.com>
parents:
17334
diff
changeset
|
204 $ hg log -l1 --template '{date|age}\n' |
15839
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
205 7 years from now |
43317af36d28
tests: make {date|age} template output independent of the current date
Steven Brown <StevenGBrown@gmail.com>
parents:
15773
diff
changeset
|
206 |
25005
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
207 $ cd .. |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
208 $ rm -rf unstable-hash |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
209 |
35539
d1aae6d4efc5
templatefilters: fix doc of basename()
Yuya Nishihara <yuya@tcha.org>
parents:
34866
diff
changeset
|
210 Filename filters: |
d1aae6d4efc5
templatefilters: fix doc of basename()
Yuya Nishihara <yuya@tcha.org>
parents:
34866
diff
changeset
|
211 |
d1aae6d4efc5
templatefilters: fix doc of basename()
Yuya Nishihara <yuya@tcha.org>
parents:
34866
diff
changeset
|
212 $ hg debugtemplate '{"foo/bar"|basename}|{"foo/"|basename}|{"foo"|basename}|\n' |
d1aae6d4efc5
templatefilters: fix doc of basename()
Yuya Nishihara <yuya@tcha.org>
parents:
34866
diff
changeset
|
213 bar||foo| |
36246
9ee10b3284da
templatefilters: add dirname() filter
Yuya Nishihara <yuya@tcha.org>
parents:
35751
diff
changeset
|
214 $ hg debugtemplate '{"foo/bar"|dirname}|{"foo/"|dirname}|{"foo"|dirname}|\n' |
9ee10b3284da
templatefilters: add dirname() filter
Yuya Nishihara <yuya@tcha.org>
parents:
35751
diff
changeset
|
215 foo|foo|| |
9ee10b3284da
templatefilters: add dirname() filter
Yuya Nishihara <yuya@tcha.org>
parents:
35751
diff
changeset
|
216 $ hg debugtemplate '{"foo/bar"|stripdir}|{"foo/"|stripdir}|{"foo"|stripdir}|\n' |
9ee10b3284da
templatefilters: add dirname() filter
Yuya Nishihara <yuya@tcha.org>
parents:
35751
diff
changeset
|
217 foo|foo|foo| |
35539
d1aae6d4efc5
templatefilters: fix doc of basename()
Yuya Nishihara <yuya@tcha.org>
parents:
34866
diff
changeset
|
218 |
38435
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
219 commondir() filter: |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
220 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
221 $ hg debugtemplate '{""|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
222 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
223 $ hg debugtemplate '{"foo/bar\nfoo/baz\nfoo/foobar\n"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
224 foo |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
225 $ hg debugtemplate '{"foo/bar\nfoo/bar\n"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
226 foo |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
227 $ hg debugtemplate '{"/foo/bar\n/foo/bar\n"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
228 foo |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
229 $ hg debugtemplate '{"/foo\n/foo\n"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
230 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
231 $ hg debugtemplate '{"foo/bar\nbar/baz"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
232 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
233 $ hg debugtemplate '{"foo/bar\nbar/baz\nbar/foo\n"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
234 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
235 $ hg debugtemplate '{"foo/../bar\nfoo/bar"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
236 foo |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
237 $ hg debugtemplate '{"foo\n/foo"|splitlines|commondir}\n' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
238 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
239 |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
240 $ hg log -r null -T '{rev|commondir}' |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
241 hg: parse error: argument is not a list of text |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
242 (template filter 'commondir' is not compatible with keyword 'rev') |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
243 [10] |
38435
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
244 |
25005
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
245 Add a dummy commit to make up for the instability of the above: |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
246 |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
247 $ echo a > a |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
248 $ hg add a |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
249 $ hg ci -m future |
5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
Matt Mackall <mpm@selenic.com>
parents:
25003
diff
changeset
|
250 |
22668
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
251 Count filter: |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
252 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
253 $ hg log -l1 --template '{node|count} {node|short|count}\n' |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
254 40 12 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
255 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
256 $ hg log -l1 --template '{revset("null^")|count} {revset(".")|count} {revset("0::3")|count}\n' |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
257 0 1 4 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
258 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
259 $ hg log -G --template '{rev}: children: {children|count}, \ |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
260 > tags: {tags|count}, file_adds: {file_adds|count}, \ |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
261 > ancestors: {revset("ancestors(%s)", rev)|count}' |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
262 @ 9: children: 0, tags: 1, file_adds: 1, ancestors: 3 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
263 | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
264 o 8: children: 1, tags: 0, file_adds: 2, ancestors: 2 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
265 | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
266 o 7: children: 1, tags: 0, file_adds: 1, ancestors: 1 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
267 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
268 o 6: children: 0, tags: 0, file_adds: 0, ancestors: 7 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
269 |\ |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
270 | o 5: children: 1, tags: 0, file_adds: 1, ancestors: 5 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
271 | | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
272 o | 4: children: 1, tags: 0, file_adds: 0, ancestors: 5 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
273 |/ |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
274 o 3: children: 2, tags: 0, file_adds: 0, ancestors: 4 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
275 | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
276 o 2: children: 1, tags: 0, file_adds: 1, ancestors: 3 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
277 | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
278 o 1: children: 1, tags: 0, file_adds: 1, ancestors: 2 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
279 | |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
280 o 0: children: 1, tags: 0, file_adds: 1, ancestors: 1 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
281 |
13e3f07d74a3
templater: add count template filter, plus tests
Anton Shestakov <engored@ya.ru>
parents:
22588
diff
changeset
|
282 |
37229
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
283 $ hg log -l1 -T '{termwidth|count}\n' |
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
284 hg: parse error: not countable |
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
285 (template filter 'count' is not compatible with keyword 'termwidth') |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
286 [10] |
37229
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
287 |
24566
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
288 Upper/lower filters: |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
289 |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
290 $ hg log -r0 --template '{branch|upper}\n' |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
291 DEFAULT |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
292 $ hg log -r0 --template '{author|lower}\n' |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
293 user name <user@hostname> |
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
294 $ hg log -r0 --template '{date|upper}\n' |
38299
88e7105b5cd9
templater: restore the original string format of {date}
Yuya Nishihara <yuya@tcha.org>
parents:
38289
diff
changeset
|
295 1000000.00 |
24566
6abce80e6cbf
templatefilters: add "upper" and "lower" for case conversion
Yuya Nishihara <yuya@tcha.org>
parents:
24319
diff
changeset
|
296 |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
297 Add a commit that does all possible modifications at once |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
298 |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
299 $ echo modify >> third |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
300 $ touch b |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
301 $ hg add b |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
302 $ hg mv fourth fifth |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
303 $ hg rm a |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
304 $ hg ci -m "Modify, add, remove, rename" |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
305 |
24280
6c55e37ba5f2
templater: allow piping generator-type function output to filters
Yuya Nishihara <yuya@tcha.org>
parents:
24241
diff
changeset
|
306 Pass generator object created by template function to filter |
6c55e37ba5f2
templater: allow piping generator-type function output to filters
Yuya Nishihara <yuya@tcha.org>
parents:
24241
diff
changeset
|
307 |
6c55e37ba5f2
templater: allow piping generator-type function output to filters
Yuya Nishihara <yuya@tcha.org>
parents:
24241
diff
changeset
|
308 $ hg log -l 1 --template '{if(author, author)|user}\n' |
6c55e37ba5f2
templater: allow piping generator-type function output to filters
Yuya Nishihara <yuya@tcha.org>
parents:
24241
diff
changeset
|
309 test |
6c55e37ba5f2
templater: allow piping generator-type function output to filters
Yuya Nishihara <yuya@tcha.org>
parents:
24241
diff
changeset
|
310 |
22434
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
311 Test diff function: |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
312 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
313 $ hg diff -c 8 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
314 diff -r 29114dbae42b -r 95c24699272e fourth |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
315 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
316 +++ b/fourth Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
317 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
318 +second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
319 diff -r 29114dbae42b -r 95c24699272e second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
320 --- a/second Mon Jan 12 13:46:40 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
321 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
322 @@ -1,1 +0,0 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
323 -second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
324 diff -r 29114dbae42b -r 95c24699272e third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
325 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
326 +++ b/third Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
327 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
328 +third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
329 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
330 $ hg log -r 8 -T "{diff()}" |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
331 diff -r 29114dbae42b -r 95c24699272e fourth |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
332 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
333 +++ b/fourth Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
334 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
335 +second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
336 diff -r 29114dbae42b -r 95c24699272e second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
337 --- a/second Mon Jan 12 13:46:40 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
338 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
339 @@ -1,1 +0,0 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
340 -second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
341 diff -r 29114dbae42b -r 95c24699272e third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
342 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
343 +++ b/third Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
344 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
345 +third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
346 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
347 $ hg log -r 8 -T "{diff('glob:f*')}" |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
348 diff -r 29114dbae42b -r 95c24699272e fourth |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
349 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
350 +++ b/fourth Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
351 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
352 +second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
353 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
354 $ hg log -r 8 -T "{diff('', 'glob:f*')}" |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
355 diff -r 29114dbae42b -r 95c24699272e second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
356 --- a/second Mon Jan 12 13:46:40 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
357 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
358 @@ -1,1 +0,0 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
359 -second |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
360 diff -r 29114dbae42b -r 95c24699272e third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
361 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
362 +++ b/third Wed Jan 01 10:01:00 2020 +0000 |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
363 @@ -0,0 +1,1 @@ |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
364 +third |
40ce05b50148
templater: add "diff" template function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
22427
diff
changeset
|
365 |
25562
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
366 $ hg log -r 8 -T "{diff('FOURTH'|lower)}" |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
367 diff -r 29114dbae42b -r 95c24699272e fourth |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
368 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
369 +++ b/fourth Wed Jan 01 10:01:00 2020 +0000 |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
370 @@ -0,0 +1,1 @@ |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
371 +second |
9452112c8eb0
templater: evaluate arguments passed to diff() appropriately
Yuya Nishihara <yuya@tcha.org>
parents:
25471
diff
changeset
|
372 |
43051
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
373 $ hg --config diff.git=true log -r 8 -T "{diff()}" |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
374 diff --git a/second b/fourth |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
375 rename from second |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
376 rename to fourth |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
377 diff --git a/third b/third |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
378 new file mode 100644 |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
379 --- /dev/null |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
380 +++ b/third |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
381 @@ -0,0 +1,1 @@ |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
382 +third |
da3329fe01e3
templatefuncs: account for user's diffopts in diff() (BC)
Denis Laxalde <denis@laxalde.org>
parents:
42893
diff
changeset
|
383 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
384 $ cd .. |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
385 |
38434
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
386 latesttag() function: |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
387 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
388 $ hg init latesttag |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
389 $ cd latesttag |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
390 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
391 $ echo a > file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
392 $ hg ci -Am a -d '0 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
393 adding file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
394 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
395 $ echo b >> file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
396 $ hg ci -m b -d '1 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
397 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
398 $ echo c >> head1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
399 $ hg ci -Am h1c -d '2 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
400 adding head1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
401 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
402 $ hg update -q 1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
403 $ echo d >> head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
404 $ hg ci -Am h2d -d '3 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
405 adding head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
406 created new head |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
407 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
408 $ echo e >> head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
409 $ hg ci -m h2e -d '4 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
410 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
411 $ hg merge -q |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
412 $ hg ci -m merge -d '5 -3600' |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
413 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
414 $ hg tag -r 1 -m t1 -d '6 0' t1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
415 $ hg tag -r 2 -m t2 -d '7 0' t2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
416 $ hg tag -r 3 -m t3 -d '8 0' t3 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
417 $ hg tag -r 4 -m t4 -d '4 0' t4 # older than t2, but should not matter |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
418 $ hg tag -r 5 -m t5 -d '9 0' t5 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
419 $ hg tag -r 3 -m at3 -d '10 0' at3 |
33861
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
420 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
421 $ hg log -G --template "{rev}: {latesttag('re:^t[13]$') % '{tag}, C: {changes}, D: {distance}'}\n" |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
422 @ 11: t3, C: 9, D: 8 |
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
423 | |
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
424 o 10: t3, C: 8, D: 7 |
33861
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
425 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
426 o 9: t3, C: 7, D: 6 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
427 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
428 o 8: t3, C: 6, D: 5 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
429 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
430 o 7: t3, C: 5, D: 4 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
431 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
432 o 6: t3, C: 4, D: 3 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
433 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
434 o 5: t3, C: 3, D: 2 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
435 |\ |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
436 | o 4: t3, C: 1, D: 1 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
437 | | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
438 | o 3: t3, C: 0, D: 0 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
439 | | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
440 o | 2: t1, C: 1, D: 1 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
441 |/ |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
442 o 1: t1, C: 0, D: 0 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
443 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
444 o 0: null, C: 1, D: 1 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
445 |
26485
43bf9471fae9
templater: introduce {latesttag()} function to match a pattern (issue4184)
Matt Harbison <matt_harbison@yahoo.com>
parents:
26234
diff
changeset
|
446 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
447 $ cd .. |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
448 |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
449 Test filter() empty values: |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
450 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
451 $ hg log -R a -r 1 -T '{filter(desc|splitlines) % "{line}\n"}' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
452 other 1 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
453 other 2 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
454 other 3 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
455 $ hg log -R a -r 0 -T '{filter(dict(a=0, b=1) % "{ifeq(key, "a", "{value}\n")}")}' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
456 0 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
457 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
458 0 should not be falsy |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
459 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
460 $ hg log -R a -r 0 -T '{filter(revset("0:2"))}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
461 0 1 2 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
462 |
38449
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
463 Test filter() by expression: |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
464 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
465 $ hg log -R a -r 1 -T '{filter(desc|splitlines, ifcontains("1", line, "t"))}\n' |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
466 other 1 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
467 $ hg log -R a -r 0 -T '{filter(dict(a=0, b=1), ifeq(key, "b", "t"))}\n' |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
468 b=1 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
469 |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
470 Test filter() shouldn't crash: |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
471 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
472 $ hg log -R a -r 0 -T '{filter(extras)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
473 branch=default |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
474 $ hg log -R a -r 0 -T '{filter(files)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
475 a |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
476 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
477 Test filter() unsupported arguments: |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
478 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
479 $ hg log -R a -r 0 -T '{filter()}\n' |
38449
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
480 hg: parse error: filter expects one or two arguments |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
481 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
482 $ hg log -R a -r 0 -T '{filter(date)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
483 hg: parse error: date is not iterable |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
484 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
485 $ hg log -R a -r 0 -T '{filter(rev)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
486 hg: parse error: 0 is not iterable |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
487 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
488 $ hg log -R a -r 0 -T '{filter(desc|firstline)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
489 hg: parse error: 'line 1' is not filterable |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
490 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
491 $ hg log -R a -r 0 -T '{filter(manifest)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
492 hg: parse error: '0:a0c8bcbbb45c' is not filterable |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
493 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
494 $ hg log -R a -r 0 -T '{filter(succsandmarkers)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
495 hg: parse error: not filterable without template |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
496 [10] |
38449
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
497 $ hg log -R a -r 0 -T '{filter(desc|splitlines % "{line}", "")}\n' |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
498 hg: parse error: not filterable by expression |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
499 [10] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
500 |
38228
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
501 Test manifest/get() can be join()-ed as string, though it's silly: |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
502 |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
503 $ hg log -R latesttag -r tip -T '{join(manifest, ".")}\n' |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
504 1.1.:.2.b.c.6.e.9.0.0.6.c.e.2 |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
505 $ hg log -R latesttag -r tip -T '{join(get(extras, "branch"), ".")}\n' |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
506 d.e.f.a.u.l.t |
34330
89aec1834a86
templatekw: add new-style template expansion to {manifest}
Yuya Nishihara <yuya@tcha.org>
parents:
34329
diff
changeset
|
507 |
38227
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
508 Test join() over string |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
509 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
510 $ hg log -R latesttag -r tip -T '{join(rev|stringify, ".")}\n' |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
511 1.1 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
512 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
513 Test join() over uniterable |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
514 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
515 $ hg log -R latesttag -r tip -T '{join(rev, "")}\n' |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
516 hg: parse error: 11 is not iterable |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
517 [10] |
38227
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
518 |
34581
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
519 Test min/max of integers |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
520 |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
521 $ hg log -R latesttag -l1 -T '{min(revset("9:10"))}\n' |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
522 9 |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
523 $ hg log -R latesttag -l1 -T '{max(revset("9:10"))}\n' |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
524 10 |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
525 |
37499
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
526 Test min/max over map operation: |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
527 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
528 $ hg log -R latesttag -r3 -T '{min(tags % "{tag}")}\n' |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
529 at3 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
530 $ hg log -R latesttag -r3 -T '{max(tags % "{tag}")}\n' |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
531 t3 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
532 |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
533 Test min/max of strings: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
534 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
535 $ hg log -R latesttag -l1 -T '{min(desc)}\n' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
536 3 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
537 $ hg log -R latesttag -l1 -T '{max(desc)}\n' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
538 t |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
539 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
540 Test min/max of non-iterable: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
541 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
542 $ hg debugtemplate '{min(1)}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
543 hg: parse error: 1 is not iterable |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
544 (min first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
545 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
546 $ hg debugtemplate '{max(2)}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
547 hg: parse error: 2 is not iterable |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
548 (max first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
549 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
550 |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
551 $ hg log -R latesttag -l1 -T '{min(date)}' |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
552 hg: parse error: date is not iterable |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
553 (min first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
554 [10] |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
555 $ hg log -R latesttag -l1 -T '{max(date)}' |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
556 hg: parse error: date is not iterable |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
557 (max first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
558 [10] |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
559 |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
560 Test min/max of empty sequence: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
561 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
562 $ hg debugtemplate '{min("")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
563 hg: parse error: empty string |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
564 (min first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
565 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
566 $ hg debugtemplate '{max("")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
567 hg: parse error: empty string |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
568 (max first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
569 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
570 $ hg debugtemplate '{min(dict())}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
571 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
572 (min first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
573 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
574 $ hg debugtemplate '{max(dict())}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
575 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
576 (max first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
577 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
578 $ hg debugtemplate '{min(dict() % "")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
579 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
580 (min first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
581 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
582 $ hg debugtemplate '{max(dict() % "")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
583 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
584 (max first argument should be an iterable) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
585 [10] |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
586 |
37015
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
587 Test min/max of if() result |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
588 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
589 $ cd latesttag |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
590 $ hg log -l1 -T '{min(if(true, revset("9:10"), ""))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
591 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
592 $ hg log -l1 -T '{max(if(false, "", revset("9:10")))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
593 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
594 $ hg log -l1 -T '{min(ifcontains("a", "aa", revset("9:10"), ""))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
595 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
596 $ hg log -l1 -T '{max(ifcontains("a", "bb", "", revset("9:10")))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
597 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
598 $ hg log -l1 -T '{min(ifeq(0, 0, revset("9:10"), ""))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
599 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
600 $ hg log -l1 -T '{max(ifeq(0, 1, "", revset("9:10")))}\n' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
601 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
602 $ cd .. |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
603 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
604 Test laziness of if() then/else clause |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
605 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
606 $ hg debugtemplate '{count(0)}' |
37229
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
607 hg: parse error: not countable |
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
608 (incompatible use of template filter 'count') |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
609 [10] |
37015
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
610 $ hg debugtemplate '{if(true, "", count(0))}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
611 $ hg debugtemplate '{if(false, count(0), "")}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
612 $ hg debugtemplate '{ifcontains("a", "aa", "", count(0))}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
613 $ hg debugtemplate '{ifcontains("a", "bb", count(0), "")}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
614 $ hg debugtemplate '{ifeq(0, 0, "", count(0))}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
615 $ hg debugtemplate '{ifeq(0, 1, count(0), "")}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
616 |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
617 Test search() function: |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
618 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
619 $ hg log -R a -r2 -T '{desc}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
620 no person |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
621 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
622 $ hg log -R a -r2 -T '{search(r"p.*", desc)}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
623 person |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
624 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
625 as bool |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
626 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
627 $ hg log -R a -r2 -T '{if(search(r"p.*", desc), "", "not ")}found\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
628 found |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
629 $ hg log -R a -r2 -T '{if(search(r"q", desc), "", "not ")}found\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
630 not found |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
631 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
632 match as json |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
633 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
634 $ hg log -R a -r2 -T '{search(r"(no) p.*", desc)|json}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
635 {"0": "no person", "1": "no"} |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
636 $ hg log -R a -r2 -T '{search(r"q", desc)|json}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
637 null |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
638 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
639 group reference |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
640 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
641 $ hg log -R a -r2 -T '{search(r"(no) (p.*)", desc) % "{1|upper} {2|hex}"}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
642 NO 706572736f6e |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
643 $ hg log -R a -r2 -T '{search(r"(?P<foo>[a-z]*)", desc) % "{foo}"}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
644 no |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
645 $ hg log -R a -r2 -T '{search(r"(?P<foo>[a-z]*)", desc).foo}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
646 no |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
647 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
648 group reference with no match |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
649 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
650 $ hg log -R a -r2 -T '{search(r"q", desc) % "match: {0}"}\n' |
40935
4591c9791a82
templatefuncs: specialize "no match" value of search() to allow % operation
Yuya Nishihara <yuya@tcha.org>
parents:
40934
diff
changeset
|
651 |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
652 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
653 bad group names |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
654 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
655 $ hg log -R a -r2 -T '{search(r"(?P<0>.)", desc) % "{0}"}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
656 hg: parse error: search got an invalid pattern: (?P<0>.) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
657 [10] |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
658 $ hg log -R a -r2 -T '{search(r"(?P<repo>.)", desc) % "{repo}"}\n' |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
659 hg: parse error: invalid group 'repo' in search pattern: (?P<repo>.) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
660 [10] |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
661 |
19058
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
662 Test the sub function of templating for expansion: |
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
663 |
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
664 $ hg log -R latesttag -r 10 --template '{sub("[0-9]", "x", "{rev}")}\n' |
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
665 xx |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
666 |
26188
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
667 $ hg log -R latesttag -r 10 -T '{sub("[", "x", rev)}\n' |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
668 hg: parse error: sub got an invalid pattern: [ |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
669 [10] |
26188
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
670 $ hg log -R latesttag -r 10 -T '{sub("[0-9]", r"\1", rev)}\n' |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
671 hg: parse error: sub got an invalid replacement: \1 |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
672 [10] |
26188
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
673 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
674 Test the strip function with chars specified: |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
675 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
676 $ hg log -R latesttag --template '{desc}\n' |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
677 at3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
678 t5 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
679 t4 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
680 t3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
681 t2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
682 t1 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
683 merge |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
684 h2e |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
685 h2d |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
686 h1c |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
687 b |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
688 a |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
689 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
690 $ hg log -R latesttag --template '{strip(desc, "te")}\n' |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
691 at3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
692 5 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
693 4 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
694 3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
695 2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
696 1 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
697 merg |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
698 h2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
699 h2d |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
700 h1c |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
701 b |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
702 a |
20066
64b4f0cd7336
templater: fix escaping in nested string literals (issue4102)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
703 |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
704 Test date format: |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
705 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
706 $ hg log -R latesttag --template 'date: {date(date, "%y %m %d %S %z")}\n' |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
707 date: 70 01 01 10 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
708 date: 70 01 01 09 +0000 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
709 date: 70 01 01 04 +0000 |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
710 date: 70 01 01 08 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
711 date: 70 01 01 07 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
712 date: 70 01 01 06 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
713 date: 70 01 01 05 +0100 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
714 date: 70 01 01 04 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
715 date: 70 01 01 03 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
716 date: 70 01 01 02 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
717 date: 70 01 01 01 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
718 date: 70 01 01 00 +0000 |
20072 | 719 |
24903
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
720 Test invalid date: |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
721 |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
722 $ hg log -R latesttag -T '{date(rev)}\n' |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
723 hg: parse error: date expects a date information |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
724 [10] |
24903
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
725 |
38434
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
726 Set up repository containing template fragments in commit metadata: |
20067
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
727 |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
728 $ hg init r |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
729 $ cd r |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
730 $ echo a > a |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
731 $ hg ci -Am '{rev}' |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
732 adding a |
20076
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
733 |
20661
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
734 $ hg branch -q 'text.{rev}' |
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
735 $ echo aa >> aa |
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
736 $ hg ci -u '{node|short}' -m 'desc to be wrapped desc to be wrapped' |
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
737 |
28373
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
738 color effect can be specified without quoting: |
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
739 |
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
740 $ hg log --color=always -l 1 --template '{label(red, "text\n")}' |
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
741 \x1b[0;31mtext\x1b[0m (esc) |
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
742 |
31518
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
743 color effects can be nested (issue5413) |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
744 |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
745 $ hg debugtemplate --color=always \ |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
746 > '{label(red, "red{label(magenta, "ma{label(cyan, "cyan")}{label(yellow, "yellow")}genta")}")}\n' |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
747 \x1b[0;31mred\x1b[0;35mma\x1b[0;36mcyan\x1b[0m\x1b[0;31m\x1b[0;35m\x1b[0;33myellow\x1b[0m\x1b[0;31m\x1b[0;35mgenta\x1b[0m (esc) |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
748 |
31521
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
749 pad() should interact well with color codes (issue5416) |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
750 |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
751 $ hg debugtemplate --color=always \ |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
752 > '{pad(label(red, "red"), 5, label(cyan, "-"))}\n' |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
753 \x1b[0;31mred\x1b[0m\x1b[0;36m-\x1b[0m\x1b[0;36m-\x1b[0m (esc) |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
754 |
40189
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
755 pad() with truncate has to strip color codes, though |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
756 |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
757 $ hg debugtemplate --color=always \ |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
758 > '{pad(label(red, "scarlet"), 5, truncate=true)}\n' |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
759 scarl |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
760 |
28374
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
761 label should be no-op if color is disabled: |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
762 |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
763 $ hg log --color=never -l 1 --template '{label(red, "text\n")}' |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
764 text |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
765 $ hg log --config extensions.color=! -l 1 --template '{label(red, "text\n")}' |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
766 text |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
767 |
20076
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
768 Test branches inside if statement: |
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
769 |
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
770 $ hg log -r 0 --template '{if(branches, "yes", "no")}\n' |
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
771 no |
20662
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
772 |
31926
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
773 Test dict constructor: |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
774 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
775 $ hg log -r 0 -T '{dict(y=node|short, x=rev)}\n' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
776 y=f7769ec2ab97 x=0 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
777 $ hg log -r 0 -T '{dict(x=rev, y=node|short) % "{key}={value}\n"}' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
778 x=0 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
779 y=f7769ec2ab97 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
780 $ hg log -r 0 -T '{dict(x=rev, y=node|short)|json}\n' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
781 {"x": 0, "y": "f7769ec2ab97"} |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
782 $ hg log -r 0 -T '{dict()|json}\n' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
783 {} |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
784 |
31928
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
785 $ hg log -r 0 -T '{dict(rev, node=node|short)}\n' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
786 rev=0 node=f7769ec2ab97 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
787 $ hg log -r 0 -T '{dict(rev, node|short)}\n' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
788 rev=0 node=f7769ec2ab97 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
789 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
790 $ hg log -r 0 -T '{dict(rev, rev=rev)}\n' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
791 hg: parse error: duplicated dict key 'rev' inferred |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
792 [10] |
31928
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
793 $ hg log -r 0 -T '{dict(node, node|short)}\n' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
794 hg: parse error: duplicated dict key 'node' inferred |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
795 [10] |
31928
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
796 $ hg log -r 0 -T '{dict(1 + 2)}' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
797 hg: parse error: dict key cannot be inferred |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
798 [10] |
31928
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
799 |
31926
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
800 $ hg log -r 0 -T '{dict(x=rev, x=node)}' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
801 hg: parse error: dict got multiple values for keyword argument 'x' |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
802 [10] |
31926
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
803 |
24241
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
804 Test get function: |
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
805 |
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
806 $ hg log -r 0 --template '{get(extras, "branch")}\n' |
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
807 default |
28331
2874db5462d3
templater: fix get() to evaluate arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28270
diff
changeset
|
808 $ hg log -r 0 --template '{get(extras, "br{"anch"}")}\n' |
2874db5462d3
templater: fix get() to evaluate arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28270
diff
changeset
|
809 default |
24241
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
810 $ hg log -r 0 --template '{get(files, "should_fail")}\n' |
38243
06d11cd90516
templater: promote getmember() to an interface of wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38229
diff
changeset
|
811 hg: parse error: not a dictionary |
06d11cd90516
templater: promote getmember() to an interface of wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38229
diff
changeset
|
812 (get() expects a dict as first argument) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
813 [10] |
24241
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
814 |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
815 Test json filter applied to wrapped object: |
31882
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
816 |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
817 $ hg log -r0 -T '{files|json}\n' |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
818 ["a"] |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
819 $ hg log -r0 -T '{extras|json}\n' |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
820 {"branch": "default"} |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
821 $ hg log -r0 -T '{date|json}\n' |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
822 [0, 0] |
44589
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
823 $ hg log -r0 -T '{revset(":")|json}\n' |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
824 [0, 1] |
31882
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
825 |
37499
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
826 Test json filter applied to map result: |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
827 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
828 $ hg log -r0 -T '{json(extras % "{key}")}\n' |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
829 ["branch"] |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
830 |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
831 Test localdate(date, tz) function: |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
832 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
833 $ TZ=JST-09 hg log -r0 -T '{date|localdate|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
834 1970-01-01 09:00 +0900 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
835 $ TZ=JST-09 hg log -r0 -T '{localdate(date, "UTC")|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
836 1970-01-01 00:00 +0000 |
29636
84ef4517de03
date: refactor timezone parsing
Matt Mackall <mpm@selenic.com>
parents:
29624
diff
changeset
|
837 $ TZ=JST-09 hg log -r0 -T '{localdate(date, "blahUTC")|isodate}\n' |
84ef4517de03
date: refactor timezone parsing
Matt Mackall <mpm@selenic.com>
parents:
29624
diff
changeset
|
838 hg: parse error: localdate expects a timezone |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
839 [10] |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
840 $ TZ=JST-09 hg log -r0 -T '{localdate(date, "+0200")|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
841 1970-01-01 02:00 +0200 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
842 $ TZ=JST-09 hg log -r0 -T '{localdate(date, "0")|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
843 1970-01-01 00:00 +0000 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
844 $ TZ=JST-09 hg log -r0 -T '{localdate(date, 0)|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
845 1970-01-01 00:00 +0000 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
846 $ hg log -r0 -T '{localdate(date, "invalid")|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
847 hg: parse error: localdate expects a timezone |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
848 [10] |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
849 $ hg log -r0 -T '{localdate(date, date)|isodate}\n' |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
850 hg: parse error: localdate expects a timezone |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
851 [10] |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
852 |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
853 Test shortest(node) function: |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
854 |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
855 $ echo b > b |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
856 $ hg ci -qAm b |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
857 $ hg log --template '{shortest(node)}\n' |
20670 | 858 e777 |
859 bcc7 | |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
860 f776 |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
861 $ hg log --template '{shortest(node, 10)}\n' |
20670 | 862 e777603221 |
863 bcc7ff960b | |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
864 f7769ec2ab |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
865 $ hg log --template '{shortest(node, 1)}\n' -r null |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
866 00 |
26105
d67341f55429
templater: introduce unified filter syntax for unary functions
Yuya Nishihara <yuya@tcha.org>
parents:
25862
diff
changeset
|
867 $ hg log --template '{node|shortest}\n' -l1 |
d67341f55429
templater: introduce unified filter syntax for unary functions
Yuya Nishihara <yuya@tcha.org>
parents:
25862
diff
changeset
|
868 e777 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
869 |
28346
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
870 $ hg log -r 0 -T '{shortest(node, "1{"0"}")}\n' |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
871 f7769ec2ab |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
872 $ hg log -r 0 -T '{shortest(node, "not an int")}\n' |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
873 hg: parse error: shortest() expects an integer minlength |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
874 [10] |
28346
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
875 |
32684
af854b1b36f8
revlog: add support for partial matching of wdir node id
Yuya Nishihara <yuya@tcha.org>
parents:
32039
diff
changeset
|
876 $ hg log -r 'wdir()' -T '{node|shortest}\n' |
af854b1b36f8
revlog: add support for partial matching of wdir node id
Yuya Nishihara <yuya@tcha.org>
parents:
32039
diff
changeset
|
877 ffff |
af854b1b36f8
revlog: add support for partial matching of wdir node id
Yuya Nishihara <yuya@tcha.org>
parents:
32039
diff
changeset
|
878 |
37709
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
879 $ hg log --template '{shortest("f")}\n' -l1 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
880 f |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
881 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
882 $ hg log --template '{shortest("0123456789012345678901234567890123456789")}\n' -l1 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
883 0123456789012345678901234567890123456789 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
884 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
885 $ hg log --template '{shortest("01234567890123456789012345678901234567890123456789")}\n' -l1 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
886 01234567890123456789012345678901234567890123456789 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
887 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
888 $ hg log --template '{shortest("not a hex string")}\n' -l1 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
889 not a hex string |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
890 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
891 $ hg log --template '{shortest("not a hex string, but it'\''s 40 bytes long")}\n' -l1 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
892 not a hex string, but it's 40 bytes long |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
893 |
37859
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
894 $ hg log --template '{shortest("ffffffffffffffffffffffffffffffffffffffff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
895 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
896 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
897 $ hg log --template '{shortest("fffffff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
898 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
899 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
900 $ hg log --template '{shortest("ff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
901 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
902 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
903 $ cd .. |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
904 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
905 Test shortest(node) with the repo having short hash collision: |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
906 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
907 $ hg init hashcollision |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
908 $ cd hashcollision |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
909 $ cat <<EOF >> .hg/hgrc |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
910 > [experimental] |
34866
1644623ab096
config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents:
34715
diff
changeset
|
911 > evolution.createmarkers=True |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
912 > EOF |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
913 $ echo 0 > a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
914 $ hg ci -qAm 0 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
915 $ for i in 17 129 248 242 480 580 617 1057 2857 4025; do |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
916 > hg up -q 0 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
917 > echo $i > a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
918 > hg ci -qm $i |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
919 > done |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
920 $ hg up -q null |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
921 $ hg log -r0: -T '{rev}:{node}\n' |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
922 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
923 1:11424df6dc1dd4ea255eae2b58eaca7831973bbc |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
924 2:11407b3f1b9c3e76a79c1ec5373924df096f0499 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
925 3:11dd92fe0f39dfdaacdaa5f3997edc533875cfc4 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
926 4:10776689e627b465361ad5c296a20a487e153ca4 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
927 5:a00be79088084cb3aff086ab799f8790e01a976b |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
928 6:a0b0acd79b4498d0052993d35a6a748dd51d13e6 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
929 7:a0457b3450b8e1b778f1163b31a435802987fe5d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
930 8:c56256a09cd28e5764f32e8e2810d0f01e2e357a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
931 9:c5623987d205cd6d9d8389bfc40fff9dbb670b48 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
932 10:c562ddd9c94164376c20b86b0b4991636a3bf84f |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
933 $ hg debugobsolete a00be79088084cb3aff086ab799f8790e01a976b |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
934 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
935 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
936 $ hg debugobsolete c5623987d205cd6d9d8389bfc40fff9dbb670b48 |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
937 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
938 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
939 $ hg debugobsolete c562ddd9c94164376c20b86b0b4991636a3bf84f |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
940 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
941 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
942 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
943 nodes starting with '11' (we don't have the revision number '11' though) |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
944 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
945 $ hg log -r 1:3 -T '{rev}:{shortest(node, 0)}\n' |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
946 1:1142 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
947 2:1140 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
948 3:11d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
949 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
950 '5:a00' is hidden, but still we have two nodes starting with 'a0' |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
951 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
952 $ hg log -r 6:7 -T '{rev}:{shortest(node, 0)}\n' |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
953 6:a0b |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
954 7:a04 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
955 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
956 node '10' conflicts with the revision number '10' even if it is hidden |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
957 (we could exclude hidden revision numbers, but currently we don't) |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
958 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
959 $ hg log -r 4 -T '{rev}:{shortest(node, 0)}\n' |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
960 4:107 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
961 $ hg log -r 4 -T '{rev}:{shortest(node, 0)}\n' --hidden |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
962 4:107 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
963 |
38856
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
964 $ hg --config experimental.revisions.prefixhexnode=yes log -r 4 -T '{rev}:{shortest(node, 0)}\n' |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
965 4:x10 |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
966 $ hg --config experimental.revisions.prefixhexnode=yes log -r 4 -T '{rev}:{shortest(node, 0)}\n' --hidden |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
967 4:x10 |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
968 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
969 node 'c562' should be unique if the other 'c562' nodes are hidden |
30232
362740e05460
templater: use unfiltered changelog to calculate shortest() at constant time
Yuya Nishihara <yuya@tcha.org>
parents:
30231
diff
changeset
|
970 (but we don't try the slow path to filter out hidden nodes for now) |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
971 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
972 $ hg log -r 8 -T '{rev}:{node|shortest}\n' |
30232
362740e05460
templater: use unfiltered changelog to calculate shortest() at constant time
Yuya Nishihara <yuya@tcha.org>
parents:
30231
diff
changeset
|
973 8:c5625 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
974 $ hg log -r 8:10 -T '{rev}:{node|shortest}\n' --hidden |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
975 8:c5625 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
976 9:c5623 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
977 10:c562d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
978 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
979 $ cd .. |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
980 |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
981 Test prefixhexnode when the first character of the hash is 0. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
982 $ hg init hashcollision2 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
983 $ cd hashcollision2 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
984 $ cat <<EOF >> .hg/hgrc |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
985 > [experimental] |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
986 > evolution.createmarkers=True |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
987 > EOF |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
988 $ echo 0 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
989 $ hg ci -qAm 0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
990 $ echo 21 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
991 $ hg ci -qm 21 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
992 $ hg up -q null |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
993 $ hg log -r0: -T '{rev}:{node}\n' |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
994 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
995 1:0cf177ba2b1dc3862a00fb81715fec90950201be |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
996 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
997 we need the 'x' prefix to ensure we aren't colliding with rev0. We identify |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
998 the collision with nullid if we aren't using disambiguatewithin, so we need to set |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
999 that as well. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1000 $ hg --config experimental.revisions.disambiguatewithin='descendants(0)' \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1001 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1002 > log -r 1 -T '{rev}:{shortest(node, 0)}\n' |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1003 1:x0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1004 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1005 $ hg debugobsolete 0cf177ba2b1dc3862a00fb81715fec90950201be |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
1006 1 new obsolescence markers |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1007 obsoleted 1 changesets |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1008 $ hg up -q 0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1009 $ echo 61 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1010 $ hg ci -m 61 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1011 $ hg log -r0: -T '{rev}:{node}\n' |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1012 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1013 2:01384dde84b3a511ae0835f35ac40bd806c99bb8 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1014 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1015 we still have the 'x' prefix because '0' is still the shortest prefix, since |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1016 rev1's '0c' is hidden. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1017 $ hg --config experimental.revisions.disambiguatewithin=0:-1-0 \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1018 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1019 > log -r 0:-1-0 -T '{rev}:{shortest(node, 0)}\n' |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1020 2:x0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1021 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1022 we don't have the 'x' prefix on 2 because '01' is not a synonym for rev1. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1023 $ hg --config experimental.revisions.disambiguatewithin=0:-1-0 \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1024 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1025 > log -r 0:-1-0 -T '{rev}:{shortest(node, 0)}\n' --hidden |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1026 1:0c |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1027 2:01 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1028 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1029 $ cd .. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1030 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1031 Test pad function |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1032 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
1033 $ cd r |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
1034 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1035 $ hg log --template '{pad(rev, 20)} {author|user}\n' |
20670 | 1036 2 test |
1037 1 {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1038 0 test |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1039 |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1040 $ hg log --template '{pad(rev, 20, " ", True)} {author|user}\n' |
20670 | 1041 2 test |
1042 1 {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1043 0 test |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1044 |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1045 $ hg log --template '{pad(rev, 20, "-", False)} {author|user}\n' |
20670 | 1046 2------------------- test |
1047 1------------------- {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1048 0------------------- test |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1049 |
40189
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1050 $ hg log --template '{pad(author, 5, "-", False, True)}\n' |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1051 test- |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1052 {node |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1053 test- |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1054 $ hg log --template '{pad(author, 5, "-", True, True)}\n' |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1055 -test |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1056 hort} |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1057 -test |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1058 |
25509
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1059 Test template string in pad function |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1060 |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1061 $ hg log -r 0 -T '{pad("\{{rev}}", 10)} {author|user}\n' |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1062 {0} test |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1063 |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1064 $ hg log -r 0 -T '{pad(r"\{rev}", 10)} {author|user}\n' |
25597
fd5bc660c9f0
templater: do not reevaluate rawstring as template (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25596
diff
changeset
|
1065 \{rev} test |
25509
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1066 |
28345
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1067 Test width argument passed to pad function |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1068 |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1069 $ hg log -r 0 -T '{pad(rev, "1{"0"}")} {author|user}\n' |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1070 0 test |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1071 $ hg log -r 0 -T '{pad(rev, "not an int")}\n' |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1072 hg: parse error: pad() expects an integer width |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1073 [10] |
28345
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1074 |
31519
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1075 Test invalid fillchar passed to pad function |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1076 |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1077 $ hg log -r 0 -T '{pad(rev, 10, "")}\n' |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1078 hg: parse error: pad() expects a single fill character |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1079 [10] |
31519
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1080 $ hg log -r 0 -T '{pad(rev, 10, "--")}\n' |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1081 hg: parse error: pad() expects a single fill character |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1082 [10] |
31519
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1083 |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1084 Test boolean argument passed to pad function |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1085 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1086 no crash |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1087 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1088 $ hg log -r 0 -T '{pad(rev, 10, "-", "f{"oo"}")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1089 ---------0 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1090 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1091 string/literal |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1092 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1093 $ hg log -r 0 -T '{pad(rev, 10, "-", "false")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1094 ---------0 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1095 $ hg log -r 0 -T '{pad(rev, 10, "-", false)}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1096 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1097 $ hg log -r 0 -T '{pad(rev, 10, "-", "")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1098 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1099 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1100 unknown keyword is evaluated to '' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1101 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1102 $ hg log -r 0 -T '{pad(rev, 10, "-", unknownkeyword)}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1103 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1104 |
29085
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1105 Test separate function |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1106 |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1107 $ hg log -r 0 -T '{separate("-", "", "a", "b", "", "", "c", "")}\n' |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1108 a-b-c |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1109 $ hg log -r 0 -T '{separate(" ", "{rev}:{node|short}", author|user, branch)}\n' |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1110 0:f7769ec2ab97 test default |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1111 $ hg log -r 0 --color=always -T '{separate(" ", "a", label(red, "b"), "c", label(red, ""), "d")}\n' |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1112 a \x1b[0;31mb\x1b[0m c d (esc) |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1113 |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1114 Test boolean expression/literal passed to if function |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1115 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1116 $ hg log -r 0 -T '{if(rev, "rev 0 is True")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1117 rev 0 is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1118 $ hg log -r 0 -T '{if(0, "literal 0 is True as well")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1119 literal 0 is True as well |
38447
b6294c113794
templater: fix truth testing of integer 0 taken from a list/dict
Yuya Nishihara <yuya@tcha.org>
parents:
38435
diff
changeset
|
1120 $ hg log -r 0 -T '{if(min(revset(r"0")), "0 of hybriditem is also True")}\n' |
b6294c113794
templater: fix truth testing of integer 0 taken from a list/dict
Yuya Nishihara <yuya@tcha.org>
parents:
38435
diff
changeset
|
1121 0 of hybriditem is also True |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1122 $ hg log -r 0 -T '{if("", "", "empty string is False")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1123 empty string is False |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1124 $ hg log -r 0 -T '{if(revset(r"0 - 0"), "", "empty list is False")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1125 empty list is False |
38289
f9c426385853
templater: abstract truth testing to fix {if(list_of_empty_strings)}
Yuya Nishihara <yuya@tcha.org>
parents:
38286
diff
changeset
|
1126 $ hg log -r 0 -T '{if(revset(r"0"), "non-empty list is True")}\n' |
f9c426385853
templater: abstract truth testing to fix {if(list_of_empty_strings)}
Yuya Nishihara <yuya@tcha.org>
parents:
38286
diff
changeset
|
1127 non-empty list is True |
f9c426385853
templater: abstract truth testing to fix {if(list_of_empty_strings)}
Yuya Nishihara <yuya@tcha.org>
parents:
38286
diff
changeset
|
1128 $ hg log -r 0 -T '{if(revset(r"0") % "", "list of empty strings is True")}\n' |
f9c426385853
templater: abstract truth testing to fix {if(list_of_empty_strings)}
Yuya Nishihara <yuya@tcha.org>
parents:
38286
diff
changeset
|
1129 list of empty strings is True |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1130 $ hg log -r 0 -T '{if(true, "true is True")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1131 true is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1132 $ hg log -r 0 -T '{if(false, "", "false is False")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1133 false is False |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1134 $ hg log -r 0 -T '{if("false", "non-empty string is True")}\n' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1135 non-empty string is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1136 |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1137 Test ifcontains function |
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1138 |
22843
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1139 $ hg log --template '{rev} {ifcontains(rev, "2 two 0", "is in the string", "is not")}\n' |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1140 2 is in the string |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1141 1 is not |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1142 0 is in the string |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1143 |
28332
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1144 $ hg log -T '{rev} {ifcontains(rev, "2 two{" 0"}", "is in the string", "is not")}\n' |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1145 2 is in the string |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1146 1 is not |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1147 0 is in the string |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1148 |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1149 $ hg log --template '{rev} {ifcontains("a", file_adds, "added a", "did not add a")}\n' |
20670 | 1150 2 did not add a |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1151 1 did not add a |
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1152 0 added a |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1153 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1154 $ hg log --debug -T '{rev}{ifcontains(1, parents, " is parent of 1")}\n' |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1155 2 is parent of 1 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1156 1 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1157 0 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1158 |
38267
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1159 $ hg log -l1 -T '{ifcontains("branch", extras, "t", "f")}\n' |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1160 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1161 $ hg log -l1 -T '{ifcontains("branch", extras % "{key}", "t", "f")}\n' |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1162 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1163 $ hg log -l1 -T '{ifcontains("branc", extras % "{key}", "t", "f")}\n' |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1164 f |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1165 $ hg log -l1 -T '{ifcontains("branc", stringify(extras % "{key}"), "t", "f")}\n' |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1166 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1167 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1168 Test revset function |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1169 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1170 $ hg log --template '{rev} {ifcontains(rev, revset("."), "current rev", "not current rev")}\n' |
20670 | 1171 2 current rev |
1172 1 not current rev | |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1173 0 not current rev |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1174 |
21540
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1175 $ hg log --template '{rev} {ifcontains(rev, revset(". + .^"), "match rev", "not match rev")}\n' |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1176 2 match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1177 1 match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1178 0 not match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1179 |
34659
3edfd472f3cb
templater: fix ifcontains() to handle type mismatch gracefully
Yuya Nishihara <yuya@tcha.org>
parents:
34581
diff
changeset
|
1180 $ hg log -T '{ifcontains(desc, revset(":"), "", "type not match")}\n' -l1 |
3edfd472f3cb
templater: fix ifcontains() to handle type mismatch gracefully
Yuya Nishihara <yuya@tcha.org>
parents:
34581
diff
changeset
|
1181 type not match |
3edfd472f3cb
templater: fix ifcontains() to handle type mismatch gracefully
Yuya Nishihara <yuya@tcha.org>
parents:
34581
diff
changeset
|
1182 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1183 $ hg log --template '{rev} Parents: {revset("parents(%s)", rev)}\n' |
20670 | 1184 2 Parents: 1 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1185 1 Parents: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1186 0 Parents: |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1187 |
22304
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1188 $ cat >> .hg/hgrc <<EOF |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1189 > [revsetalias] |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1190 > myparents(\$1) = parents(\$1) |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1191 > EOF |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1192 $ hg log --template '{rev} Parents: {revset("myparents(%s)", rev)}\n' |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1193 2 Parents: 1 |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1194 1 Parents: 0 |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1195 0 Parents: |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1196 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1197 $ hg log --template 'Rev: {rev}\n{revset("::%s", rev) % "Ancestor: {revision}\n"}\n' |
20670 | 1198 Rev: 2 |
1199 Ancestor: 0 | |
1200 Ancestor: 1 | |
1201 Ancestor: 2 | |
1202 | |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1203 Rev: 1 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1204 Ancestor: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1205 Ancestor: 1 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1206 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1207 Rev: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1208 Ancestor: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1209 |
25637
5eccebe23942
templater: evaluate "query" argument passed to revset()
Yuya Nishihara <yuya@tcha.org>
parents:
25562
diff
changeset
|
1210 $ hg log --template '{revset("TIP"|lower)}\n' -l1 |
5eccebe23942
templater: evaluate "query" argument passed to revset()
Yuya Nishihara <yuya@tcha.org>
parents:
25562
diff
changeset
|
1211 2 |
5eccebe23942
templater: evaluate "query" argument passed to revset()
Yuya Nishihara <yuya@tcha.org>
parents:
25562
diff
changeset
|
1212 |
28333
41373244f4e5
templater: fix revset() to evaluate format arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28332
diff
changeset
|
1213 $ hg log -T '{revset("%s", "t{"ip"}")}\n' -l1 |
41373244f4e5
templater: fix revset() to evaluate format arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28332
diff
changeset
|
1214 2 |
41373244f4e5
templater: fix revset() to evaluate format arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28332
diff
changeset
|
1215 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1216 a list template is evaluated for each item of revset/parents |
26234
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1217 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1218 $ hg log -T '{rev} p: {revset("p1(%s)", rev) % "{rev}:{node|short}"}\n' |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1219 2 p: 1:bcc7ff960b8e |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1220 1 p: 0:f7769ec2ab97 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1221 0 p: |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1222 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1223 $ hg log --debug -T '{rev} p:{parents % " {rev}:{node|short}"}\n' |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1224 2 p: 1:bcc7ff960b8e -1:000000000000 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1225 1 p: 0:f7769ec2ab97 -1:000000000000 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1226 0 p: -1:000000000000 -1:000000000000 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1227 |
26234
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1228 therefore, 'revcache' should be recreated for each rev |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1229 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1230 $ hg log -T '{rev} {file_adds}\np {revset("p1(%s)", rev) % "{file_adds}"}\n' |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1231 2 aa b |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1232 p |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1233 1 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1234 p a |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1235 0 a |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1236 p |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1237 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1238 $ hg log --debug -T '{rev} {file_adds}\np {parents % "{file_adds}"}\n' |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1239 2 aa b |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1240 p |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1241 1 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1242 p a |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1243 0 a |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1244 p |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1245 |
28177
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1246 a revset item must be evaluated as an integer revision, not an offset from tip |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1247 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1248 $ hg log -l 1 -T '{revset("null") % "{rev}:{node|short}"}\n' |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1249 -1:000000000000 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1250 $ hg log -l 1 -T '{revset("%s", "null") % "{rev}:{node|short}"}\n' |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1251 -1:000000000000 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1252 |
29623
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1253 join() should pick '{rev}' from revset items: |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1254 |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1255 $ hg log -R ../a -T '{join(revset("parents(%d)", rev), ", ")}\n' -r6 |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1256 4, 5 |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1257 |
29624
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1258 on the other hand, parents are formatted as '{rev}:{node|formatnode}' by |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1259 default. join() should agree with the default formatting: |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1260 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1261 $ hg log -R ../a -T '{join(parents, ", ")}\n' -r6 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1262 5:13207e5a10d9, 4:bbe44766e73d |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1263 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1264 $ hg log -R ../a -T '{join(parents, ",\n")}\n' -r6 --debug |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1265 5:13207e5a10d9fd28ec424934298e176197f2c67f, |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1266 4:bbe44766e73d5f11ed2177f1838de10c53ef3e74 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1267 |
44589
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1268 for historical reasons, revset() supports old-style list template |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1269 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1270 $ hg log -T '{revset(":")}\n' -l1 \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1271 > --config templates.start_revisions='"["' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1272 > --config templates.end_revisions='"]"' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1273 > --config templates.revision='"{revision}, "' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1274 > --config templates.last_revision='"{revision}"' |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1275 [0, 1, 2] |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1276 $ hg log -T '{revset(":") % " {revision}"}\n' -l1 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1277 0 1 2 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1278 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1279 but a filtered one doesn't |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1280 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1281 $ hg log -T '{filter(revset(":"), ifeq(rev, 1, "", "y"))}\n' -l1 \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1282 > --config templates.start_revisions='"["' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1283 > --config templates.end_revisions='"]"' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1284 > --config templates.revision='"{revision}, "' \ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1285 > --config templates.last_revision='"{revision}"' |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1286 0 2 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1287 $ hg log -T '{filter(revset(":"), ifeq(rev, 1, "", "y")) % "x{revision}"}\n' -l1 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1288 xx |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1289 |
44582
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1290 %d parameter handling: |
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1291 |
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1292 $ hg log -T '{revset("%d", rev)}\n' -r'wdir()' |
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1293 2147483647 |
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1294 $ hg log -T '{revset("%d", rev)}\n' -r'null' |
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1295 -1 |
44583
967e2e81f762
revset: fix crash by repo.revs('%d', tip + 1)
Yuya Nishihara <yuya@tcha.org>
parents:
44582
diff
changeset
|
1296 $ hg log -T '{revset("%d", rev + 1)}\n' -r'tip' |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45895
diff
changeset
|
1297 abort: unknown revision '3' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
1298 [10] |
44583
967e2e81f762
revset: fix crash by repo.revs('%d', tip + 1)
Yuya Nishihara <yuya@tcha.org>
parents:
44582
diff
changeset
|
1299 $ hg log -T '{revset("%d", rev - 1)}\n' -r'null' |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45895
diff
changeset
|
1300 abort: unknown revision '-2' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
1301 [10] |
44582
482a6aac1f15
revset: allow repo.revs('%d', wdirrev)
Yuya Nishihara <yuya@tcha.org>
parents:
43695
diff
changeset
|
1302 |
35561
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1303 Invalid arguments passed to revset() |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1304 |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1305 $ hg log -T '{revset("%whatever", 0)}\n' |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1306 hg: parse error: unexpected revspec format character w |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1307 [10] |
35591
8f1a7adb3225
revsetlang: catch invalid format character with %l prefix
Yuya Nishihara <yuya@tcha.org>
parents:
35561
diff
changeset
|
1308 $ hg log -T '{revset("%lwhatever", files)}\n' |
8f1a7adb3225
revsetlang: catch invalid format character with %l prefix
Yuya Nishihara <yuya@tcha.org>
parents:
35561
diff
changeset
|
1309 hg: parse error: unexpected revspec format character w |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1310 [10] |
35592
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1311 $ hg log -T '{revset("%s %s", 0)}\n' |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1312 hg: parse error: missing argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1313 [10] |
35592
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1314 $ hg log -T '{revset("", 0)}\n' |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1315 hg: parse error: too many revspec arguments specified |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1316 [10] |
35592
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1317 $ hg log -T '{revset("%s", 0, 1)}\n' |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1318 hg: parse error: too many revspec arguments specified |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1319 [10] |
35593
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1320 $ hg log -T '{revset("%", 0)}\n' |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1321 hg: parse error: incomplete revspec format character |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1322 [10] |
35593
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1323 $ hg log -T '{revset("%l", 0)}\n' |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1324 hg: parse error: incomplete revspec format character |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1325 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1326 $ hg log -T '{revset("%d", 'foo')}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1327 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1328 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1329 $ hg log -T '{revset("%ld", files)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1330 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1331 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1332 $ hg log -T '{revset("%ls", 0)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1333 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1334 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1335 $ hg log -T '{revset("%b", 'foo')}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1336 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1337 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1338 $ hg log -T '{revset("%lb", files)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1339 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1340 [10] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1341 $ hg log -T '{revset("%r", 0)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1342 hg: parse error: invalid argument for revspec |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1343 [10] |
35561
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1344 |
44589
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1345 Invalid operation on revset() |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1346 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1347 $ hg log -T '{get(revset(":"), "foo")}\n' |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1348 hg: parse error: not a dictionary |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1349 (get() expects a dict as first argument) |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1350 [10] |
44589
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1351 |
30008
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1352 Test files function |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1353 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1354 $ hg log -T "{rev}\n{join(files('*'), '\n')}\n" |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1355 2 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1356 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1357 aa |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1358 b |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1359 1 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1360 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1361 0 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1362 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1363 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1364 $ hg log -T "{rev}\n{join(files('aa'), '\n')}\n" |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1365 2 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1366 aa |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1367 1 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1368 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1369 0 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1370 |
39367
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1371 |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1372 $ hg log -l1 -T "{files('aa') % '{file}\n'}" |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1373 aa |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1374 $ hg log -l1 -T "{files('aa') % '{path}\n'}" |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1375 aa |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1376 |
38277
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1377 $ hg rm a |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1378 $ hg log -r "wdir()" -T "{rev}\n{join(files('*'), '\n')}\n" |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1379 2147483647 |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1380 aa |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1381 b |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1382 $ hg revert a |
30008
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1383 |
30083
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1384 Test relpath function |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1385 |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1386 $ hg log -r0 -T '{files % "{file|relpath}\n"}' |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1387 a |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1388 $ cd .. |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1389 $ hg log -R r -r0 -T '{files % "{file|relpath}\n"}' |
30732
d4ec69ff652a
tests: update globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
30237
diff
changeset
|
1390 r/a |
27894
a94f7eef3199
templatekw: add {namespaces} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
26856
diff
changeset
|
1391 |
20662
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1392 Test stringify on sub expressions |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1393 |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1394 $ hg log -R a -r 8 --template '{join(files, if("1", if("1", ", ")))}\n' |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1395 fourth, second, third |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1396 $ hg log -R a -r 8 --template '{strip(if("1", if("1", "-abc-")), if("1", if("1", "-")))}\n' |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1397 abc |
20670 | 1398 |
21820
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1399 Test splitlines |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1400 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1401 $ hg log -Gv -R a --template "{splitlines(desc) % 'foo {line}\n'}" |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1402 @ foo Modify, add, remove, rename |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1403 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1404 o foo future |
21820
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1405 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1406 o foo third |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1407 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1408 o foo second |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1409 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1410 o foo merge |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1411 |\ |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1412 | o foo new head |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1413 | | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1414 o | foo new branch |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1415 |/ |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1416 o foo no user, no domain |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1417 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1418 o foo no person |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1419 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1420 o foo other 1 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1421 | foo other 2 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1422 | foo |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1423 | foo other 3 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1424 o foo line 1 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1425 foo line 2 |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1426 |
32039
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1427 $ hg log -R a -r0 -T '{desc|splitlines}\n' |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1428 line 1 line 2 |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1429 $ hg log -R a -r0 -T '{join(desc|splitlines, "|")}\n' |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1430 line 1|line 2 |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1431 |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1432 Test startswith |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1433 $ hg log -Gv -R a --template "{startswith(desc)}" |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1434 hg: parse error: startswith expects two arguments |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1435 [10] |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1436 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1437 $ hg log -Gv -R a --template "{startswith('line', desc)}" |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1438 @ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1439 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1440 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1441 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1442 o |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1443 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1444 o |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1445 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1446 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1447 |\ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1448 | o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1449 | | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1450 o | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1451 |/ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1452 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1453 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1454 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1455 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1456 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1457 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1458 o line 1 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1459 line 2 |
21822
028a48105191
templater: add symbol to error
Ryan McElroy <rmcelroy@fb.com>
parents:
21821
diff
changeset
|
1460 |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1461 Test word function (including index out of bounds graceful failure) |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1462 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1463 $ hg log -Gv -R a --template "{word('1', desc)}" |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1464 @ add, |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1465 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1466 o |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1467 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1468 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1469 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1470 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1471 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1472 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1473 |\ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1474 | o head |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1475 | | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1476 o | branch |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1477 |/ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1478 o user, |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1479 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1480 o person |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1481 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1482 o 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1483 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1484 o 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1485 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1486 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1487 Test word third parameter used as splitter |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1488 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1489 $ hg log -Gv -R a --template "{word('0', desc, 'o')}" |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1490 @ M |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1491 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1492 o future |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1493 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1494 o third |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1495 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1496 o sec |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1497 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1498 o merge |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1499 |\ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1500 | o new head |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1501 | | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1502 o | new branch |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1503 |/ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1504 o n |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1505 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1506 o n |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1507 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1508 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1509 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1510 o line 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1511 line 2 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1512 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1513 Test word error messages for not enough and too many arguments |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1514 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1515 $ hg log -Gv -R a --template "{word('0')}" |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1516 hg: parse error: word expects two or three arguments, got 1 |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1517 [10] |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1518 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1519 $ hg log -Gv -R a --template "{word('0', desc, 'o', 'h', 'b', 'o', 'y')}" |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1520 hg: parse error: word expects two or three arguments, got 7 |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1521 [10] |
24886
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1522 |
25002
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1523 Test word for integer literal |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1524 |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1525 $ hg log -R a --template "{word(2, desc)}\n" -r0 |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1526 line |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1527 |
24886
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1528 Test word for invalid numbers |
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1529 |
25002
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1530 $ hg log -Gv -R a --template "{word('a', desc)}" |
25003
5e584edbb211
templater: update error message of invalid number passed to word() function
Yuya Nishihara <yuya@tcha.org>
parents:
25002
diff
changeset
|
1531 hg: parse error: word expects an integer index |
45895
fc4fb2f17dd4
errors: use exit code 10 for parse errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45055
diff
changeset
|
1532 [10] |
25489
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1533 |
26502
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1534 Test word for out of range |
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1535 |
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1536 $ hg log -R a --template "{word(10000, desc)}" |
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1537 $ hg log -R a --template "{word(-10000, desc)}" |
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1538 |
25489
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1539 Test indent and not adding to empty lines |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1540 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1541 $ hg log -T "-----\n{indent(desc, '>> ', ' > ')}\n" -r 0:1 -R a |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1542 ----- |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1543 > line 1 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1544 >> line 2 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1545 ----- |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1546 > other 1 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1547 >> other 2 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1548 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1549 >> other 3 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1550 |
43694
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1551 Test indent with empty first line |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1552 |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1553 $ hg version -T "{indent('', '>> ')}\n" |
43695
fa246ada356b
templates: make {indent("", " ")} be empty
Martin von Zweigbergk <martinvonz@google.com>
parents:
43694
diff
changeset
|
1554 |
43694
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1555 |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1556 $ hg version -T "{indent(' |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1557 > second', '>> ')}\n" |
43695
fa246ada356b
templates: make {indent("", " ")} be empty
Martin von Zweigbergk <martinvonz@google.com>
parents:
43694
diff
changeset
|
1558 |
43694
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1559 >> second |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1560 |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1561 $ hg version -T "{indent(' |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1562 > second', '>> ', ' > ')}\n" |
43695
fa246ada356b
templates: make {indent("", " ")} be empty
Martin von Zweigbergk <martinvonz@google.com>
parents:
43694
diff
changeset
|
1563 |
43694
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1564 >> second |
0fd9e7a1cf36
tests: document behavior of indent() with empty first line
Martin von Zweigbergk <martinvonz@google.com>
parents:
43051
diff
changeset
|
1565 |
25489
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1566 Test with non-strings like dates |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1567 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1568 $ hg log -T "{indent(date, ' ')}\n" -r 2:3 -R a |
38299
88e7105b5cd9
templater: restore the original string format of {date}
Yuya Nishihara <yuya@tcha.org>
parents:
38289
diff
changeset
|
1569 1200000.00 |
88e7105b5cd9
templater: restore the original string format of {date}
Yuya Nishihara <yuya@tcha.org>
parents:
38289
diff
changeset
|
1570 1300000.00 |
26215
72aad184f061
templater: create string unescape helper (issue4798)
Matt Mackall <mpm@selenic.com>
parents:
26188
diff
changeset
|
1571 |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1572 Test cbor filter: |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1573 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1574 $ cat <<'EOF' > "$TESTTMP/decodecbor.py" |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1575 > from __future__ import absolute_import |
42000
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1576 > from mercurial import ( |
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1577 > dispatch, |
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1578 > ) |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1579 > from mercurial.utils import ( |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1580 > cborutil, |
45055
4c1b4805db57
pycompat: change users of pycompat.{stdin,stdout,stderr} to use procutil.std*
Manuel Jacob <me@manueljacob.de>
parents:
44596
diff
changeset
|
1581 > procutil, |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1582 > stringutil, |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1583 > ) |
42000
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1584 > dispatch.initstdio() |
45055
4c1b4805db57
pycompat: change users of pycompat.{stdin,stdout,stderr} to use procutil.std*
Manuel Jacob <me@manueljacob.de>
parents:
44596
diff
changeset
|
1585 > items = cborutil.decodeall(procutil.stdin.read()) |
4c1b4805db57
pycompat: change users of pycompat.{stdin,stdout,stderr} to use procutil.std*
Manuel Jacob <me@manueljacob.de>
parents:
44596
diff
changeset
|
1586 > procutil.stdout.write(stringutil.pprint(items, indent=1) + b'\n') |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1587 > EOF |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1588 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1589 $ hg log -T "{rev|cbor}" -R a -l2 | "$PYTHON" "$TESTTMP/decodecbor.py" |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1590 [ |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1591 10, |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1592 9 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1593 ] |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1594 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1595 $ hg log -T "{extras|cbor}" -R a -l1 | "$PYTHON" "$TESTTMP/decodecbor.py" |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1596 [ |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1597 { |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1598 'branch': 'default' |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1599 } |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1600 ] |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1601 |
44589
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1602 $ hg log -T "{revset(':')|cbor}" -R a -l1 | "$PYTHON" "$TESTTMP/decodecbor.py" |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1603 [ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1604 [ |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1605 0, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1606 1, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1607 2, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1608 3, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1609 4, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1610 5, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1611 6, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1612 7, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1613 8, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1614 9, |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1615 10 |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1616 ] |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1617 ] |
fc1fa3a07af6
templater: introduce wrapper for smartset (API)
Yuya Nishihara <yuya@tcha.org>
parents:
44583
diff
changeset
|
1618 |
44596
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1619 $ hg log -T "{dict(foo=revset('.'))|cbor}" -R a -l1 | "$PYTHON" "$TESTTMP/decodecbor.py" |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1620 [ |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1621 { |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1622 'foo': [ |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1623 10 |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1624 ] |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1625 } |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1626 ] |
7333e8bb9781
templater: fix cbor() filter to recursively convert smartset to list
Yuya Nishihara <yuya@tcha.org>
parents:
44589
diff
changeset
|
1627 |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1628 json filter should escape HTML tags so that the output can be embedded in hgweb: |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1629 |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1630 $ hg log -T "{'<foo@example.org>'|json}\n" -R a -l1 |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1631 "\u003cfoo@example.org\u003e" |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1632 |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1633 Set up repository for non-ascii encoding tests: |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1634 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1635 $ hg init nonascii |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1636 $ cd nonascii |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39367
diff
changeset
|
1637 $ "$PYTHON" <<EOF |
36504
b075f45456a5
py3: fix test-command-template.t to write files in binary mode
Yuya Nishihara <yuya@tcha.org>
parents:
36445
diff
changeset
|
1638 > open('latin1', 'wb').write(b'\xe9') |
b075f45456a5
py3: fix test-command-template.t to write files in binary mode
Yuya Nishihara <yuya@tcha.org>
parents:
36445
diff
changeset
|
1639 > open('utf-8', 'wb').write(b'\xc3\xa9') |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1640 > EOF |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1641 $ HGENCODING=utf-8 hg branch -q `cat utf-8` |
28239
7279e0132347
templatekw: workaround for utf-8 round-trip of {desc}
Yuya Nishihara <yuya@tcha.org>
parents:
28212
diff
changeset
|
1642 $ HGENCODING=utf-8 hg ci -qAm "non-ascii branch: `cat utf-8`" utf-8 |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1643 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1644 json filter should try round-trip conversion to utf-8: |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1645 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1646 $ HGENCODING=ascii hg log -T "{branch|json}\n" -r0 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1647 "\u00e9" |
28239
7279e0132347
templatekw: workaround for utf-8 round-trip of {desc}
Yuya Nishihara <yuya@tcha.org>
parents:
28212
diff
changeset
|
1648 $ HGENCODING=ascii hg log -T "{desc|json}\n" -r0 |
7279e0132347
templatekw: workaround for utf-8 round-trip of {desc}
Yuya Nishihara <yuya@tcha.org>
parents:
28212
diff
changeset
|
1649 "non-ascii branch: \u00e9" |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1650 |
37947
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1651 json filter should take input as utf-8 if it was converted from utf-8: |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1652 |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1653 $ HGENCODING=latin-1 hg log -T "{branch|json}\n" -r0 |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1654 "\u00e9" |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1655 $ HGENCODING=latin-1 hg log -T "{desc|json}\n" -r0 |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1656 "non-ascii branch: \u00e9" |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1657 |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1658 json filter takes input as utf-8b: |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1659 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1660 $ HGENCODING=ascii hg log -T "{'`cat utf-8`'|json}\n" -l1 |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1661 "\u00e9" |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1662 $ HGENCODING=ascii hg log -T "{'`cat latin1`'|json}\n" -l1 |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1663 "\udce9" |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1664 |
42480
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1665 cbor filter is bytes transparent, which should handle bytes subtypes |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1666 as bytes: |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1667 |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1668 $ HGENCODING=ascii hg log -T "{branch|cbor}" -r0 \ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1669 > | "$PYTHON" "$TESTTMP/decodecbor.py" |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1670 [ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1671 '?' |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1672 ] |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1673 $ HGENCODING=latin-1 hg log -T "{branch|cbor}" -r0 \ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1674 > | "$PYTHON" "$TESTTMP/decodecbor.py" |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1675 [ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1676 '\xe9' |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1677 ] |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1678 |
28209
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1679 utf8 filter: |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1680 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1681 $ HGENCODING=ascii hg log -T "round-trip: {branch|utf8|hex}\n" -r0 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1682 round-trip: c3a9 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1683 $ HGENCODING=latin1 hg log -T "decoded: {'`cat latin1`'|utf8|hex}\n" -l1 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1684 decoded: c3a9 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1685 $ HGENCODING=ascii hg log -T "replaced: {'`cat latin1`'|utf8|hex}\n" -l1 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1686 abort: decoding near * (glob) |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1687 [255] |
37223
08e042f0a67c
templatefilters: declare input type as bytes where appropriate
Yuya Nishihara <yuya@tcha.org>
parents:
37105
diff
changeset
|
1688 $ hg log -T "coerced to string: {rev|utf8}\n" -r0 |
08e042f0a67c
templatefilters: declare input type as bytes where appropriate
Yuya Nishihara <yuya@tcha.org>
parents:
37105
diff
changeset
|
1689 coerced to string: 0 |
28209
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1690 |
31520
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1691 pad width: |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1692 |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1693 $ HGENCODING=utf-8 hg debugtemplate "{pad('`cat utf-8`', 2, '-')}\n" |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1694 \xc3\xa9- (esc) |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1695 |
41720
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1696 read config options: |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1697 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1698 $ hg log -T "{config('templateconfig', 'knob', 'foo')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1699 foo |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1700 $ hg log -T "{config('templateconfig', 'knob', 'foo')}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1701 > --config templateconfig.knob=bar |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1702 bar |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1703 $ hg log -T "{configbool('templateconfig', 'knob', True)}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1704 True |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1705 $ hg log -T "{configbool('templateconfig', 'knob', True)}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1706 > --config templateconfig.knob=0 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1707 False |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1708 $ hg log -T "{configint('templateconfig', 'knob', 123)}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1709 123 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1710 $ hg log -T "{configint('templateconfig', 'knob', 123)}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1711 > --config templateconfig.knob=456 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1712 456 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1713 $ hg log -T "{config('templateconfig', 'knob')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1714 devel-warn: config item requires an explicit default value: 'templateconfig.knob' at: * (glob) |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1715 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1716 $ hg log -T "{configbool('ui', 'interactive')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1717 False |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1718 $ hg log -T "{configbool('ui', 'interactive')}\n" --config ui.interactive=1 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1719 True |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1720 $ hg log -T "{config('templateconfig', 'knob', if(true, 'foo', 'bar'))}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1721 foo |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1722 |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1723 $ cd .. |