Mercurial > hg
annotate tests/test-template-functions.t @ 43007:f1dffb37f27c
tests: suppress output from write()
Otherwise it is printed and the test fails with tons of output on
Python 3.
Differential Revision: https://phab.mercurial-scm.org/D6918
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sun, 29 Sep 2019 12:19:45 -0700 |
parents | 34a46d48d24e |
children | da3329fe01e3 |
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') |
6a8ed5c7e112
tests: fold test-template-filters.t into test-template-functions.t
Yuya Nishihara <yuya@tcha.org>
parents:
38434
diff
changeset
|
243 [255] |
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') |
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
286 [255] |
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 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
373 $ cd .. |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
374 |
38434
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
375 latesttag() function: |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
376 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
377 $ hg init latesttag |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
378 $ cd latesttag |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
379 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
380 $ echo a > file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
381 $ hg ci -Am a -d '0 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
382 adding file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
383 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
384 $ echo b >> file |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
385 $ hg ci -m b -d '1 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
386 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
387 $ echo c >> head1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
388 $ hg ci -Am h1c -d '2 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
389 adding head1 |
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 $ hg update -q 1 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
392 $ echo d >> head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
393 $ hg ci -Am h2d -d '3 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
394 adding head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
395 created new head |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
396 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
397 $ echo e >> head2 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
398 $ hg ci -m h2e -d '4 0' |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
399 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
400 $ hg merge -q |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
401 $ hg ci -m merge -d '5 -3600' |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
402 |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
403 $ 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
|
404 $ 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
|
405 $ 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
|
406 $ 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
|
407 $ 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
|
408 $ 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
|
409 |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
410 $ 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
|
411 @ 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
|
412 | |
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
413 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
|
414 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
415 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
|
416 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
417 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
|
418 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
419 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
|
420 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
421 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
|
422 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
423 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
|
424 |\ |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
425 | 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
|
426 | | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
427 | 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
|
428 | | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
429 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
|
430 |/ |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
431 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
|
432 | |
0e15d5ae52cf
tests: use graph log in {latesttag} tests
Martin von Zweigbergk <martinvonz@google.com>
parents:
33542
diff
changeset
|
433 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
|
434 |
26485
43bf9471fae9
templater: introduce {latesttag()} function to match a pattern (issue4184)
Matt Harbison <matt_harbison@yahoo.com>
parents:
26234
diff
changeset
|
435 |
12283
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
436 $ cd .. |
850e089eb41c
tests: unify test-command-template
Adrian Buehlmann <adrian@cadifra.com>
parents:
11656
diff
changeset
|
437 |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
438 Test filter() empty values: |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
439 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
440 $ 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
|
441 other 1 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
442 other 2 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
443 other 3 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
444 $ 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
|
445 0 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
446 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
447 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
|
448 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
449 $ 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
|
450 0 1 2 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
451 |
38449
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
452 Test filter() by expression: |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
453 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
454 $ 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
|
455 other 1 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
456 $ 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
|
457 b=1 |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
458 |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
459 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
|
460 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
461 $ 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
|
462 branch=default |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
463 $ 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
|
464 a |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
465 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
466 Test filter() unsupported arguments: |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
467 |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
468 $ 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
|
469 hg: parse error: filter expects one or two arguments |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
470 [255] |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
471 $ 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
|
472 hg: parse error: date is not iterable |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
473 [255] |
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(rev)}\n' |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
475 hg: parse error: 0 is not iterable |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
476 [255] |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
477 $ 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
|
478 hg: parse error: 'line 1' is not filterable |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
479 [255] |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
480 $ 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
|
481 hg: parse error: '0:a0c8bcbbb45c' is not filterable |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
482 [255] |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
483 $ 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
|
484 hg: parse error: not filterable without template |
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
485 [255] |
38449
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
486 $ 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
|
487 hg: parse error: not filterable by expression |
bc8d925342f0
templater: extend filter() to accept template expression for emptiness test
Yuya Nishihara <yuya@tcha.org>
parents:
38448
diff
changeset
|
488 [255] |
38448
dae829b4de78
templater: introduce filter() function to remove empty items from list
Yuya Nishihara <yuya@tcha.org>
parents:
38447
diff
changeset
|
489 |
38228
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
490 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
|
491 |
8bded7eae26c
templater: consistently join() string-like object per character (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38227
diff
changeset
|
492 $ 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
|
493 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
|
494 $ 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
|
495 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
|
496 |
38227
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
497 Test join() over string |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
498 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
499 $ 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
|
500 1.1 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
501 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
502 Test join() over uniterable |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
503 |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
504 $ 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
|
505 hg: parse error: 11 is not iterable |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
506 [255] |
1c8098cf560a
templater: always join() over a wrapped object (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
37947
diff
changeset
|
507 |
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
|
508 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
|
509 |
ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Yuya Nishihara <yuya@tcha.org>
parents:
34541
diff
changeset
|
510 $ 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
|
511 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
|
512 $ 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
|
513 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
|
514 |
37499
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
515 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
|
516 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
517 $ 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
|
518 at3 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
519 $ 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
|
520 t3 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
521 |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
522 Test min/max of strings: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
523 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
524 $ hg log -R latesttag -l1 -T '{min(desc)}\n' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
525 3 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
526 $ hg log -R latesttag -l1 -T '{max(desc)}\n' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
527 t |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
528 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
529 Test min/max of non-iterable: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
530 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
531 $ hg debugtemplate '{min(1)}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
532 hg: parse error: 1 is not iterable |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
533 (min first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
534 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
535 $ hg debugtemplate '{max(2)}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
536 hg: parse error: 2 is not iterable |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
537 (max first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
538 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
539 |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
540 $ 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
|
541 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
|
542 (min first argument should be an iterable) |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
543 [255] |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
544 $ 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
|
545 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
|
546 (max first argument should be an iterable) |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
547 [255] |
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
548 |
38265
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
549 Test min/max of empty sequence: |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
550 |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
551 $ hg debugtemplate '{min("")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
552 hg: parse error: empty string |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
553 (min first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
554 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
555 $ hg debugtemplate '{max("")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
556 hg: parse error: empty string |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
557 (max first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
558 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
559 $ hg debugtemplate '{min(dict())}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
560 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
561 (min first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
562 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
563 $ hg debugtemplate '{max(dict())}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
564 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
565 (max first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
566 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
567 $ hg debugtemplate '{min(dict() % "")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
568 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
569 (min first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
570 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
571 $ hg debugtemplate '{max(dict() % "")}' |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
572 hg: parse error: empty sequence |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
573 (max first argument should be an iterable) |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
574 [255] |
41ae9b3cbfb9
templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org>
parents:
38243
diff
changeset
|
575 |
37015
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
576 Test min/max of if() result |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
577 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
578 $ cd latesttag |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
579 $ 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
|
580 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
581 $ 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
|
582 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
583 $ 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
|
584 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
585 $ 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
|
586 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
587 $ 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
|
588 9 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
589 $ 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
|
590 10 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
591 $ cd .. |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
592 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
593 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
|
594 |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
595 $ hg debugtemplate '{count(0)}' |
37229
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
596 hg: parse error: not countable |
05db42732fce
templatefilters: handle TypeError by count()
Yuya Nishihara <yuya@tcha.org>
parents:
37227
diff
changeset
|
597 (incompatible use of template filter 'count') |
37015
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
598 [255] |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
599 $ hg debugtemplate '{if(true, "", count(0))}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
600 $ hg debugtemplate '{if(false, count(0), "")}' |
a318bb154d42
templatefuncs: do not stringify result of if*() expression
Yuya Nishihara <yuya@tcha.org>
parents:
36691
diff
changeset
|
601 $ 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
|
602 $ 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
|
603 $ 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
|
604 $ 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
|
605 |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
606 Test search() function: |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
607 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
608 $ 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
|
609 no person |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
610 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
611 $ 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
|
612 person |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
613 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
614 as bool |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
615 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
616 $ 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
|
617 found |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
618 $ 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
|
619 not found |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
620 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
621 match as json |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
622 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
623 $ 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
|
624 {"0": "no person", "1": "no"} |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
625 $ 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
|
626 null |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
627 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
628 group reference |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
629 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
630 $ 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
|
631 NO 706572736f6e |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
632 $ 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
|
633 no |
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"(?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
|
635 no |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
636 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
637 group reference with no match |
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 $ 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
|
640 |
40934
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
641 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
642 bad group names |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
643 |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
644 $ 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
|
645 hg: parse error: search got an invalid pattern: (?P<0>.) |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
646 [255] |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
647 $ 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
|
648 hg: parse error: invalid group 'repo' in search pattern: (?P<repo>.) |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
649 [255] |
d3e688b9ef2e
templatefuncs: add regexp search() function that extracts substring
Yuya Nishihara <yuya@tcha.org>
parents:
40341
diff
changeset
|
650 |
19058
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
651 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
|
652 |
d8d548d868d3
template: call runtemplate on the src argument to sub
Sean Farley <sean.michael.farley@gmail.com>
parents:
18970
diff
changeset
|
653 $ 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
|
654 xx |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
655 |
26188
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
656 $ 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
|
657 hg: parse error: sub got an invalid pattern: [ |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
658 [255] |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
659 $ 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
|
660 hg: parse error: sub got an invalid replacement: \1 |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
661 [255] |
662ea52d5dca
templater: catch regexp error at sub() function
Yuya Nishihara <yuya@tcha.org>
parents:
26128
diff
changeset
|
662 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
663 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
|
664 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
665 $ 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
|
666 at3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
667 t5 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
668 t4 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
669 t3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
670 t2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
671 t1 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
672 merge |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
673 h2e |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
674 h2d |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
675 h1c |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
676 b |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
677 a |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
678 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
679 $ 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
|
680 at3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
681 5 |
33862
fb672eac2702
templatekw: choose {latesttag} by len(changes), not date (issue5659)
Martin von Zweigbergk <martinvonz@google.com>
parents:
33861
diff
changeset
|
682 4 |
19330
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
683 3 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
684 2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
685 1 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
686 merg |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
687 h2 |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
688 h2d |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
689 h1c |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
690 b |
867b9957d895
templater: add strip function with chars as an extra argument
Alexander Plavin <me@aplavin.ru>
parents:
19127
diff
changeset
|
691 a |
20066
64b4f0cd7336
templater: fix escaping in nested string literals (issue4102)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
692 |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
693 Test date format: |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
694 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
695 $ 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
|
696 date: 70 01 01 10 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
697 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
|
698 date: 70 01 01 04 +0000 |
19989
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
699 date: 70 01 01 08 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
700 date: 70 01 01 07 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
701 date: 70 01 01 06 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
702 date: 70 01 01 05 +0100 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
703 date: 70 01 01 04 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
704 date: 70 01 01 03 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
705 date: 70 01 01 02 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
706 date: 70 01 01 01 +0000 |
c38c3fdc8b93
date: allow %z in format (issue4040)
Matt Mackall <mpm@selenic.com>
parents:
19770
diff
changeset
|
707 date: 70 01 01 00 +0000 |
20072 | 708 |
24903
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
709 Test invalid date: |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
710 |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
711 $ 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
|
712 hg: parse error: date expects a date information |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
713 [255] |
09124cce913f
templater: fix crash by passing invalid object to date() function
Yuya Nishihara <yuya@tcha.org>
parents:
24886
diff
changeset
|
714 |
38434
70f551a3f52e
tests: extract test-template-functions.t from test-command-template.t
Yuya Nishihara <yuya@tcha.org>
parents:
38433
diff
changeset
|
715 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
|
716 |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
717 $ hg init r |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
718 $ cd r |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
719 $ echo a > a |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
720 $ hg ci -Am '{rev}' |
3d8bfe2ecf6d
templater: only recursively evaluate string literals as templates (issue4103)
Matt Mackall <mpm@selenic.com>
parents:
20066
diff
changeset
|
721 adding a |
20076
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
722 |
20661
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
723 $ 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
|
724 $ echo aa >> aa |
7e627fe63e5e
templater: avoid recursive evaluation of string literals completely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20079
diff
changeset
|
725 $ 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
|
726 |
28373
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
727 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
|
728 |
9a9dd71e882c
templater: make label() take unknown symbol as color literal
Yuya Nishihara <yuya@tcha.org>
parents:
28349
diff
changeset
|
729 $ 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
|
730 \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
|
731 |
31518
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
732 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
|
733 |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
734 $ hg debugtemplate --color=always \ |
43d6ef658874
color: insert color code after every "\e[0m" (issue5413)
Yuya Nishihara <yuya@tcha.org>
parents:
30732
diff
changeset
|
735 > '{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
|
736 \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
|
737 |
31521
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
738 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
|
739 |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
740 $ hg debugtemplate --color=always \ |
44c591f63458
templater: make pad() strip color codes before computing width (issue5416)
Yuya Nishihara <yuya@tcha.org>
parents:
31520
diff
changeset
|
741 > '{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
|
742 \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
|
743 |
40189
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
744 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
|
745 |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
746 $ hg debugtemplate --color=always \ |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
747 > '{pad(label(red, "scarlet"), 5, truncate=true)}\n' |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
748 scarl |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
749 |
28374
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
750 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
|
751 |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
752 $ 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
|
753 text |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
754 $ 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
|
755 text |
af3bd9d1dbc1
templater: move label() function from color extension
Yuya Nishihara <yuya@tcha.org>
parents:
28373
diff
changeset
|
756 |
20076
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
757 Test branches inside if statement: |
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
758 |
faa4b3fc4197
templater: makes branches work correctly with stringify (issue4108)
Matt Mackall <mpm@selenic.com>
parents:
20067
diff
changeset
|
759 $ 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
|
760 no |
20662
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
761 |
31926
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
762 Test dict constructor: |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
763 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
764 $ 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
|
765 y=f7769ec2ab97 x=0 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
766 $ 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
|
767 x=0 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
768 y=f7769ec2ab97 |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
769 $ 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
|
770 {"x": 0, "y": "f7769ec2ab97"} |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
771 $ hg log -r 0 -T '{dict()|json}\n' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
772 {} |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
773 |
31928
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
774 $ 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
|
775 rev=0 node=f7769ec2ab97 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
776 $ 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
|
777 rev=0 node=f7769ec2ab97 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
778 |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
779 $ 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
|
780 hg: parse error: duplicated dict key 'rev' inferred |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
781 [255] |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
782 $ 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
|
783 hg: parse error: duplicated dict key 'node' inferred |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
784 [255] |
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(1 + 2)}' |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
786 hg: parse error: dict key cannot be inferred |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
787 [255] |
277b3e2d711b
templater: add shorthand for building a dict like {"key": key}
Yuya Nishihara <yuya@tcha.org>
parents:
31927
diff
changeset
|
788 |
31926
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
789 $ hg log -r 0 -T '{dict(x=rev, x=node)}' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
790 hg: parse error: dict got multiple values for keyword argument 'x' |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
791 [255] |
932241b8c644
templater: add dict() constructor
Yuya Nishihara <yuya@tcha.org>
parents:
31887
diff
changeset
|
792 |
24241
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
793 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
|
794 |
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
795 $ 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
|
796 default |
28331
2874db5462d3
templater: fix get() to evaluate arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28270
diff
changeset
|
797 $ 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
|
798 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
|
799 $ 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
|
800 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
|
801 (get() expects a dict as first argument) |
24241
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
802 [255] |
e7baf88c29c3
templatekw: forward _hybrid.get to raw values so that get(extras, key) works
Yuya Nishihara <yuya@tcha.org>
parents:
24240
diff
changeset
|
803 |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
804 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
|
805 |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
806 $ 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
|
807 ["a"] |
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
808 $ 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
|
809 {"branch": "default"} |
38285
8d6109b49b31
templater: introduce a wrapper for date tuple (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
38277
diff
changeset
|
810 $ 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
|
811 [0, 0] |
31882
ba5b74f780d5
templater: make _hybrid provide more list/dict-like methods
Yuya Nishihara <yuya@tcha.org>
parents:
31807
diff
changeset
|
812 |
37499
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
813 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
|
814 |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
815 $ 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
|
816 ["branch"] |
75c13343cf38
templater: wrap result of '%' operation so it never looks like a thunk
Yuya Nishihara <yuya@tcha.org>
parents:
37418
diff
changeset
|
817 |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
818 Test localdate(date, tz) function: |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
819 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
820 $ 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
|
821 1970-01-01 09:00 +0900 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
822 $ 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
|
823 1970-01-01 00:00 +0000 |
29636
84ef4517de03
date: refactor timezone parsing
Matt Mackall <mpm@selenic.com>
parents:
29624
diff
changeset
|
824 $ 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
|
825 hg: parse error: localdate expects a timezone |
84ef4517de03
date: refactor timezone parsing
Matt Mackall <mpm@selenic.com>
parents:
29624
diff
changeset
|
826 [255] |
26128
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
827 $ 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
|
828 1970-01-01 02:00 +0200 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
829 $ 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
|
830 1970-01-01 00:00 +0000 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
831 $ 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
|
832 1970-01-01 00:00 +0000 |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
833 $ 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
|
834 hg: parse error: localdate expects a timezone |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
835 [255] |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
836 $ 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
|
837 hg: parse error: localdate expects a timezone |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
838 [255] |
51f6940d3b4f
templater: add optional timezone argument to localdate()
Yuya Nishihara <yuya@tcha.org>
parents:
26127
diff
changeset
|
839 |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
840 Test shortest(node) function: |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
841 |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
842 $ echo b > b |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
843 $ hg ci -qAm b |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
844 $ hg log --template '{shortest(node)}\n' |
20670 | 845 e777 |
846 bcc7 | |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
847 f776 |
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
848 $ hg log --template '{shortest(node, 10)}\n' |
20670 | 849 e777603221 |
850 bcc7ff960b | |
20369
9c6b86dd2ed2
template: add shortest(node) template function
Durham Goode <durham@fb.com>
parents:
20079
diff
changeset
|
851 f7769ec2ab |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
852 $ 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
|
853 00 |
26105
d67341f55429
templater: introduce unified filter syntax for unary functions
Yuya Nishihara <yuya@tcha.org>
parents:
25862
diff
changeset
|
854 $ 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
|
855 e777 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
856 |
28346
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
857 $ 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
|
858 f7769ec2ab |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
859 $ 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
|
860 hg: parse error: shortest() expects an integer minlength |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
861 [255] |
542d200bd261
templater: fix shortest() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28345
diff
changeset
|
862 |
32684
af854b1b36f8
revlog: add support for partial matching of wdir node id
Yuya Nishihara <yuya@tcha.org>
parents:
32039
diff
changeset
|
863 $ 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
|
864 ffff |
af854b1b36f8
revlog: add support for partial matching of wdir node id
Yuya Nishihara <yuya@tcha.org>
parents:
32039
diff
changeset
|
865 |
37709
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
866 $ 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
|
867 f |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
868 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
869 $ 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
|
870 0123456789012345678901234567890123456789 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
871 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
872 $ 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
|
873 01234567890123456789012345678901234567890123456789 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
874 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
875 $ 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
|
876 not a hex string |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
877 |
7b2955624777
scmutil: make shortesthexnodeidprefix() take a full binary nodeid
Martin von Zweigbergk <martinvonz@google.com>
parents:
37499
diff
changeset
|
878 $ 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
|
879 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
|
880 |
37859
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
881 $ hg log --template '{shortest("ffffffffffffffffffffffffffffffffffffffff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
882 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
883 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
884 $ hg log --template '{shortest("fffffff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
885 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
886 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
887 $ hg log --template '{shortest("ff")}\n' -l1 |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
888 ffff |
66dc9db6ed2c
shortest: make {shortest("fffffffff")} work again
Martin von Zweigbergk <martinvonz@google.com>
parents:
37772
diff
changeset
|
889 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
890 $ cd .. |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
891 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
892 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
|
893 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
894 $ hg init hashcollision |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
895 $ cd hashcollision |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
896 $ cat <<EOF >> .hg/hgrc |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
897 > [experimental] |
34866
1644623ab096
config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents:
34715
diff
changeset
|
898 > evolution.createmarkers=True |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
899 > EOF |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
900 $ echo 0 > a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
901 $ hg ci -qAm 0 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
902 $ 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
|
903 > hg up -q 0 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
904 > echo $i > a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
905 > hg ci -qm $i |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
906 > done |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
907 $ hg up -q null |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
908 $ 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
|
909 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
910 1:11424df6dc1dd4ea255eae2b58eaca7831973bbc |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
911 2:11407b3f1b9c3e76a79c1ec5373924df096f0499 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
912 3:11dd92fe0f39dfdaacdaa5f3997edc533875cfc4 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
913 4:10776689e627b465361ad5c296a20a487e153ca4 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
914 5:a00be79088084cb3aff086ab799f8790e01a976b |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
915 6:a0b0acd79b4498d0052993d35a6a748dd51d13e6 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
916 7:a0457b3450b8e1b778f1163b31a435802987fe5d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
917 8:c56256a09cd28e5764f32e8e2810d0f01e2e357a |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
918 9:c5623987d205cd6d9d8389bfc40fff9dbb670b48 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
919 10:c562ddd9c94164376c20b86b0b4991636a3bf84f |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
920 $ hg debugobsolete a00be79088084cb3aff086ab799f8790e01a976b |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
921 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
922 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
923 $ hg debugobsolete c5623987d205cd6d9d8389bfc40fff9dbb670b48 |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
924 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
925 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
926 $ hg debugobsolete c562ddd9c94164376c20b86b0b4991636a3bf84f |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
927 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33262
diff
changeset
|
928 obsoleted 1 changesets |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
929 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
930 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
|
931 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
932 $ 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
|
933 1:1142 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
934 2:1140 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
935 3:11d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
936 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
937 '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
|
938 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
939 $ 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
|
940 6:a0b |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
941 7:a04 |
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 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
|
944 (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
|
945 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
946 $ 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
|
947 4:107 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
948 $ 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
|
949 4:107 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
950 |
38856
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
951 $ 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
|
952 4:x10 |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
953 $ 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
|
954 4:x10 |
a01200b25da6
shortest: use 'x' prefix to disambiguate from revnum if configured
Martin von Zweigbergk <martinvonz@google.com>
parents:
38449
diff
changeset
|
955 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
956 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
|
957 (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
|
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 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
|
960 8:c5625 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
961 $ 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
|
962 8:c5625 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
963 9:c5623 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
964 10:c562d |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
965 |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
966 $ cd .. |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
967 |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
968 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
|
969 $ hg init hashcollision2 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
970 $ cd hashcollision2 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
971 $ cat <<EOF >> .hg/hgrc |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
972 > [experimental] |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
973 > evolution.createmarkers=True |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
974 > EOF |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
975 $ echo 0 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
976 $ hg ci -qAm 0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
977 $ echo 21 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
978 $ hg ci -qm 21 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
979 $ hg up -q null |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
980 $ 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
|
981 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
982 1:0cf177ba2b1dc3862a00fb81715fec90950201be |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
983 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
984 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
|
985 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
|
986 that as well. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
987 $ 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
|
988 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
989 > 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
|
990 1:x0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
991 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
992 $ hg debugobsolete 0cf177ba2b1dc3862a00fb81715fec90950201be |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42480
diff
changeset
|
993 1 new obsolescence markers |
40341
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
994 obsoleted 1 changesets |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
995 $ hg up -q 0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
996 $ echo 61 > a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
997 $ hg ci -m 61 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
998 $ 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
|
999 0:b4e73ffab476aa0ee32ed81ca51e07169844bc6a |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1000 2:01384dde84b3a511ae0835f35ac40bd806c99bb8 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1001 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1002 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
|
1003 rev1's '0c' is hidden. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1004 $ 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
|
1005 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1006 > 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
|
1007 2:x0 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1008 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1009 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
|
1010 $ 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
|
1011 > --config experimental.revisions.prefixhexnode=yes \ |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1012 > 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
|
1013 1:0c |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1014 2:01 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1015 |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1016 $ cd .. |
d916ed3ca951
revisions: when using prefixhexnode, ensure we prefix "0"
Kyle Lippincott <spectral@google.com>
parents:
40189
diff
changeset
|
1017 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1018 Test pad function |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1019 |
30231
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
1020 $ cd r |
741e5d7f282d
templater: do not use index.partialmatch() directly to calculate shortest()
Yuya Nishihara <yuya@tcha.org>
parents:
30115
diff
changeset
|
1021 |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1022 $ hg log --template '{pad(rev, 20)} {author|user}\n' |
20670 | 1023 2 test |
1024 1 {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1025 0 test |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1026 |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1027 $ hg log --template '{pad(rev, 20, " ", True)} {author|user}\n' |
20670 | 1028 2 test |
1029 1 {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1030 0 test |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1031 |
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1032 $ hg log --template '{pad(rev, 20, "-", False)} {author|user}\n' |
20670 | 1033 2------------------- test |
1034 1------------------- {node|short} | |
20370
aa51392da507
template: add pad function for padding output
Durham Goode <durham@fb.com>
parents:
20369
diff
changeset
|
1035 0------------------- test |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1036 |
40189
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1037 $ 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
|
1038 test- |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1039 {node |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1040 test- |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1041 $ 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
|
1042 -test |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1043 hort} |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1044 -test |
9458dbfa7f33
templatefuncs: add truncate parameter to pad
Mark Thomas <mbthomas@fb.com>
parents:
39707
diff
changeset
|
1045 |
25509
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1046 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
|
1047 |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1048 $ 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
|
1049 {0} test |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1050 |
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1051 $ 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
|
1052 \{rev} test |
25509
576d6c74784b
templater: make pad function evaluate both string and rawstring templates
Yuya Nishihara <yuya@tcha.org>
parents:
25490
diff
changeset
|
1053 |
28345
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1054 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
|
1055 |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1056 $ 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
|
1057 0 test |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1058 $ 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
|
1059 hg: parse error: pad() expects an integer width |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1060 [255] |
d81437c91a26
templater: fix pad() to evaluate int argument and handle error
Yuya Nishihara <yuya@tcha.org>
parents:
28344
diff
changeset
|
1061 |
31519
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1062 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
|
1063 |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1064 $ 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
|
1065 hg: parse error: pad() expects a single fill character |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1066 [255] |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1067 $ 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
|
1068 hg: parse error: pad() expects a single fill character |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1069 [255] |
3725986b151a
templater: reject bad fillchar argument passed to pad()
Yuya Nishihara <yuya@tcha.org>
parents:
31518
diff
changeset
|
1070 |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1071 Test boolean argument passed to pad function |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1072 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1073 no crash |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1074 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1075 $ 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
|
1076 ---------0 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1077 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1078 string/literal |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1079 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1080 $ 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
|
1081 ---------0 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1082 $ 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
|
1083 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1084 $ 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
|
1085 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1086 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1087 unknown keyword is evaluated to '' |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1088 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1089 $ 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
|
1090 0--------- |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1091 |
29085
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1092 Test separate function |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1093 |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1094 $ 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
|
1095 a-b-c |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1096 $ 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
|
1097 0:f7769ec2ab97 test default |
df838803c1d4
templater: add separate() template function
Martin von Zweigbergk <martinvonz@google.com>
parents:
29059
diff
changeset
|
1098 $ 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
|
1099 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
|
1100 |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1101 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
|
1102 |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1103 $ 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
|
1104 rev 0 is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1105 $ 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
|
1106 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
|
1107 $ 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
|
1108 0 of hybriditem is also True |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1109 $ 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
|
1110 empty string is False |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1111 $ 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
|
1112 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
|
1113 $ 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
|
1114 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
|
1115 $ 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
|
1116 list of empty strings is True |
29817
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1117 $ 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
|
1118 true is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1119 $ 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
|
1120 false is False |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1121 $ 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
|
1122 non-empty string is True |
cc11079644fc
templater: make pad() evaluate boolean argument (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
29636
diff
changeset
|
1123 |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1124 Test ifcontains function |
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1125 |
22843
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1126 $ 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
|
1127 2 is in the string |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1128 1 is not |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1129 0 is in the string |
b6531d806de8
templater: fix ifcontains when list is a string (issue4399)
Matt Mackall <mpm@selenic.com>
parents:
22582
diff
changeset
|
1130 |
28332
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1131 $ 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
|
1132 2 is in the string |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1133 1 is not |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1134 0 is in the string |
e91371633127
templater: fix ifcontains() to evaluate items argument eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28331
diff
changeset
|
1135 |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1136 $ hg log --template '{rev} {ifcontains("a", file_adds, "added a", "did not add a")}\n' |
20670 | 1137 2 did not add a |
20518
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1138 1 did not add a |
1e43f15a647f
template: add ifcontains template function
Durham Goode <durham@fb.com>
parents:
20370
diff
changeset
|
1139 0 added a |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1140 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1141 $ 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
|
1142 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
|
1143 1 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1144 0 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1145 |
38267
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1146 $ 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
|
1147 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1148 $ 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
|
1149 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1150 $ 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
|
1151 f |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1152 $ 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
|
1153 t |
fb874fc1d9b4
templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org>
parents:
38265
diff
changeset
|
1154 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1155 Test revset function |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1156 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1157 $ hg log --template '{rev} {ifcontains(rev, revset("."), "current rev", "not current rev")}\n' |
20670 | 1158 2 current rev |
1159 1 not current rev | |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1160 0 not current rev |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1161 |
21540
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1162 $ 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
|
1163 2 match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1164 1 match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1165 0 not match rev |
d8fb835376d1
templates: fix ifcontains against sets with length > 1 (issue4259)
Durham Goode <durham@fb.com>
parents:
21024
diff
changeset
|
1166 |
34659
3edfd472f3cb
templater: fix ifcontains() to handle type mismatch gracefully
Yuya Nishihara <yuya@tcha.org>
parents:
34581
diff
changeset
|
1167 $ 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
|
1168 type not match |
3edfd472f3cb
templater: fix ifcontains() to handle type mismatch gracefully
Yuya Nishihara <yuya@tcha.org>
parents:
34581
diff
changeset
|
1169 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1170 $ hg log --template '{rev} Parents: {revset("parents(%s)", rev)}\n' |
20670 | 1171 2 Parents: 1 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1172 1 Parents: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1173 0 Parents: |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1174 |
22304
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1175 $ 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
|
1176 > [revsetalias] |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1177 > 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
|
1178 > EOF |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1179 $ 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
|
1180 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
|
1181 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
|
1182 0 Parents: |
5678b0e3608f
templater: enable alias predicates to be used in "revset()" function
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
21944
diff
changeset
|
1183 |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1184 $ hg log --template 'Rev: {rev}\n{revset("::%s", rev) % "Ancestor: {revision}\n"}\n' |
20670 | 1185 Rev: 2 |
1186 Ancestor: 0 | |
1187 Ancestor: 1 | |
1188 Ancestor: 2 | |
1189 | |
20519
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1190 Rev: 1 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1191 Ancestor: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1192 Ancestor: 1 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1193 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1194 Rev: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1195 Ancestor: 0 |
cda9d2b6beab
template: add revset() template function
Durham Goode <durham@fb.com>
parents:
20518
diff
changeset
|
1196 |
25637
5eccebe23942
templater: evaluate "query" argument passed to revset()
Yuya Nishihara <yuya@tcha.org>
parents:
25562
diff
changeset
|
1197 $ 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
|
1198 2 |
5eccebe23942
templater: evaluate "query" argument passed to revset()
Yuya Nishihara <yuya@tcha.org>
parents:
25562
diff
changeset
|
1199 |
28333
41373244f4e5
templater: fix revset() to evaluate format arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28332
diff
changeset
|
1200 $ 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
|
1201 2 |
41373244f4e5
templater: fix revset() to evaluate format arguments eagerly
Yuya Nishihara <yuya@tcha.org>
parents:
28332
diff
changeset
|
1202 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1203 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
|
1204 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1205 $ 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
|
1206 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
|
1207 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
|
1208 0 p: |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1209 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1210 $ 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
|
1211 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
|
1212 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
|
1213 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
|
1214 |
26234
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1215 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
|
1216 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1217 $ 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
|
1218 2 aa b |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1219 p |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1220 1 |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1221 p a |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1222 0 a |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1223 p |
e4609ec959f8
templater: switch ctx of list expression to rev of revset() (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
26222
diff
changeset
|
1224 |
28270
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1225 $ 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
|
1226 2 aa b |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1227 p |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1228 1 |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1229 p a |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1230 0 a |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1231 p |
650c9f69a744
templatekw: switch ctx of list expression to rev of {parents} (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
28239
diff
changeset
|
1232 |
28177
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1233 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
|
1234 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1235 $ 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
|
1236 -1:000000000000 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1237 $ 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
|
1238 -1:000000000000 |
ab8107c923b4
templater: evaluate each item of revset() as integer revision
Yuya Nishihara <yuya@tcha.org>
parents:
27994
diff
changeset
|
1239 |
29623
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1240 join() should pick '{rev}' from revset items: |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1241 |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1242 $ 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
|
1243 4, 5 |
33bf8bd8c5b9
templatekw: fix join format of revset() function
Yuya Nishihara <yuya@tcha.org>
parents:
29085
diff
changeset
|
1244 |
29624
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1245 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
|
1246 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
|
1247 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1248 $ 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
|
1249 5:13207e5a10d9, 4:bbe44766e73d |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1250 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1251 $ 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
|
1252 5:13207e5a10d9fd28ec424934298e176197f2c67f, |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1253 4:bbe44766e73d5f11ed2177f1838de10c53ef3e74 |
1a129dd05b7d
templatekw: fix join format of parents keyword (issue5292)
Yuya Nishihara <yuya@tcha.org>
parents:
29623
diff
changeset
|
1254 |
35561
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1255 Invalid arguments passed to revset() |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1256 |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1257 $ 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
|
1258 hg: parse error: unexpected revspec format character w |
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1259 [255] |
35591
8f1a7adb3225
revsetlang: catch invalid format character with %l prefix
Yuya Nishihara <yuya@tcha.org>
parents:
35561
diff
changeset
|
1260 $ 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
|
1261 hg: parse error: unexpected revspec format character w |
8f1a7adb3225
revsetlang: catch invalid format character with %l prefix
Yuya Nishihara <yuya@tcha.org>
parents:
35561
diff
changeset
|
1262 [255] |
35592
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1263 $ 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
|
1264 hg: parse error: missing argument for revspec |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1265 [255] |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1266 $ hg log -T '{revset("", 0)}\n' |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1267 hg: parse error: too many revspec arguments specified |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1268 [255] |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1269 $ 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
|
1270 hg: parse error: too many revspec arguments specified |
0fd617afebc0
revsetlang: check number of arguments passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35591
diff
changeset
|
1271 [255] |
35593
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1272 $ hg log -T '{revset("%", 0)}\n' |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1273 hg: parse error: incomplete revspec format character |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1274 [255] |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1275 $ hg log -T '{revset("%l", 0)}\n' |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1276 hg: parse error: incomplete revspec format character |
850cd045b1df
revsetlang: check incomplete revspec format character
Yuya Nishihara <yuya@tcha.org>
parents:
35592
diff
changeset
|
1277 [255] |
35594
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1278 $ hg log -T '{revset("%d", 'foo')}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1279 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1280 [255] |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1281 $ hg log -T '{revset("%ld", files)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1282 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1283 [255] |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1284 $ hg log -T '{revset("%ls", 0)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1285 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1286 [255] |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1287 $ hg log -T '{revset("%b", 'foo')}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1288 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1289 [255] |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1290 $ hg log -T '{revset("%lb", files)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1291 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1292 [255] |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1293 $ hg log -T '{revset("%r", 0)}\n' |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1294 hg: parse error: invalid argument for revspec |
468d7a1f6633
revsetlang: catch invalid value passed to formatspec()
Yuya Nishihara <yuya@tcha.org>
parents:
35593
diff
changeset
|
1295 [255] |
35561
4c3a4bb31c0e
revsetlang: raise ParseError to report invalid format character
Yuya Nishihara <yuya@tcha.org>
parents:
35470
diff
changeset
|
1296 |
30008
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1297 Test files function |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1298 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1299 $ 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
|
1300 2 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1301 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1302 aa |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1303 b |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1304 1 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1305 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1306 0 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1307 a |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1308 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1309 $ 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
|
1310 2 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1311 aa |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1312 1 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1313 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1314 0 |
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1315 |
39367
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1316 |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1317 $ 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
|
1318 aa |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1319 $ 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
|
1320 aa |
83f8f7b9fa60
templatekw: alias {file} of files list to {path}
Yuya Nishihara <yuya@tcha.org>
parents:
38856
diff
changeset
|
1321 |
38277
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1322 $ hg rm a |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1323 $ 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
|
1324 2147483647 |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1325 aa |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1326 b |
aaed058a0390
context: make workingctx.matches() filter our removed files (API)
Martin von Zweigbergk <martinvonz@google.com>
parents:
38271
diff
changeset
|
1327 $ hg revert a |
30008
e83f89d3b1f7
templates: add built-in files() function
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com>
parents:
29848
diff
changeset
|
1328 |
30083
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1329 Test relpath function |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1330 |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1331 $ 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
|
1332 a |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1333 $ cd .. |
bd1f043d1ea3
templater: add relpath() to convert repo path to relative path (issue5394)
Yuya Nishihara <yuya@tcha.org>
parents:
30008
diff
changeset
|
1334 $ 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
|
1335 r/a |
27894
a94f7eef3199
templatekw: add {namespaces} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
26856
diff
changeset
|
1336 |
20662
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1337 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
|
1338 |
a54c0d830499
templater: apply "stringify()" on sub expression to get string correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20661
diff
changeset
|
1339 $ 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
|
1340 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
|
1341 $ 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
|
1342 abc |
20670 | 1343 |
21820
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1344 Test splitlines |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1345 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1346 $ 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
|
1347 @ 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
|
1348 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1349 o foo future |
21820
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1350 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1351 o foo third |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1352 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1353 o foo second |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1354 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1355 o foo merge |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1356 |\ |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1357 | o foo new head |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1358 | | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1359 o | foo new branch |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1360 |/ |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1361 o foo no user, no domain |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1362 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1363 o foo no person |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1364 | |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1365 o foo other 1 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1366 | foo other 2 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1367 | foo |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1368 | foo other 3 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1369 o foo line 1 |
cce404b0c918
templatefilter: add splitlines function
Ryan McElroy <rmcelroy@fb.com>
parents:
21540
diff
changeset
|
1370 foo line 2 |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1371 |
32039
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1372 $ 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
|
1373 line 1 line 2 |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1374 $ 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
|
1375 line 1|line 2 |
2ab7578e685b
templatefilters: fix crash by string formatting of '{x|splitlines}'
Yuya Nishihara <yuya@tcha.org>
parents:
31928
diff
changeset
|
1376 |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1377 Test startswith |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1378 $ hg log -Gv -R a --template "{startswith(desc)}" |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1379 hg: parse error: startswith expects two arguments |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1380 [255] |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1381 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1382 $ hg log -Gv -R a --template "{startswith('line', desc)}" |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1383 @ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1384 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1385 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1386 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1387 o |
24985
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1388 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1389 o |
21821
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1390 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1391 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1392 |\ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1393 | o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1394 | | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1395 o | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1396 |/ |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1397 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1398 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1399 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1400 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1401 o |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1402 | |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1403 o line 1 |
4a445dc5abff
templater: introduce startswith function
Ryan McElroy <rmcelroy@fb.com>
parents:
21820
diff
changeset
|
1404 line 2 |
21822
028a48105191
templater: add symbol to error
Ryan McElroy <rmcelroy@fb.com>
parents:
21821
diff
changeset
|
1405 |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1406 Test word function (including index out of bounds graceful failure) |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1407 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1408 $ 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
|
1409 @ add, |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1410 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1411 o |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1412 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1413 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1414 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1415 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1416 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1417 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1418 |\ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1419 | o head |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1420 | | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1421 o | branch |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1422 |/ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1423 o user, |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1424 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1425 o person |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1426 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1427 o 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1428 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1429 o 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1430 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1431 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1432 Test word third parameter used as splitter |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1433 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1434 $ 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
|
1435 @ M |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1436 | |
20bff5d09018
tests: add a new commit to test-commandline-template
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
24966
diff
changeset
|
1437 o future |
21846
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1438 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1439 o third |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1440 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1441 o sec |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1442 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1443 o merge |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1444 |\ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1445 | o new head |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1446 | | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1447 o | new branch |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1448 |/ |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1449 o n |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1450 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1451 o n |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1452 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1453 o |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1454 | |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1455 o line 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1456 line 2 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1457 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1458 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
|
1459 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1460 $ hg log -Gv -R a --template "{word('0')}" |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1461 hg: parse error: word expects two or three arguments, got 1 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1462 [255] |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1463 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1464 $ 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
|
1465 hg: parse error: word expects two or three arguments, got 7 |
8f23f8096606
templater: introduce word function
Ryan McElroy <rmcelroy@fb.com>
parents:
21822
diff
changeset
|
1466 [255] |
24886
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1467 |
25002
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1468 Test word for integer literal |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1469 |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1470 $ 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
|
1471 line |
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1472 |
24886
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1473 Test word for invalid numbers |
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1474 |
25002
829faf8ab605
templater: tokenize decimal integer literal (issue4638) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
24985
diff
changeset
|
1475 $ 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
|
1476 hg: parse error: word expects an integer index |
24886
10a13da8840d
templater: fail more gracefully for blank strings to word
Ryan McElroy <rmcelroy@fb.com>
parents:
24853
diff
changeset
|
1477 [255] |
25489
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1478 |
26502
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1479 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
|
1480 |
4ca98a389152
templater: protect word() from crashing on out of range negative value
Matt Harbison <matt_harbison@yahoo.com>
parents:
25862
diff
changeset
|
1481 $ 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
|
1482 $ 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
|
1483 |
25489
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1484 Test indent and not adding to empty lines |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1485 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1486 $ 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
|
1487 ----- |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1488 > line 1 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1489 >> line 2 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1490 ----- |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1491 > other 1 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1492 >> other 2 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1493 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1494 >> other 3 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1495 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1496 Test with non-strings like dates |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1497 |
ef8956aa8755
templater: introduce indent function
Ryan McElroy <rmcelroy@fb.com>
parents:
25349
diff
changeset
|
1498 $ 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
|
1499 1200000.00 |
88e7105b5cd9
templater: restore the original string format of {date}
Yuya Nishihara <yuya@tcha.org>
parents:
38289
diff
changeset
|
1500 1300000.00 |
26215
72aad184f061
templater: create string unescape helper (issue4798)
Matt Mackall <mpm@selenic.com>
parents:
26188
diff
changeset
|
1501 |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1502 Test cbor filter: |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1503 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1504 $ cat <<'EOF' > "$TESTTMP/decodecbor.py" |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1505 > from __future__ import absolute_import |
42000
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1506 > from mercurial import ( |
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1507 > dispatch, |
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1508 > pycompat, |
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1509 > ) |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1510 > from mercurial.utils import ( |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1511 > cborutil, |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1512 > stringutil, |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1513 > ) |
42000
a66965406528
test-template: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org>
parents:
41997
diff
changeset
|
1514 > dispatch.initstdio() |
41997
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1515 > items = cborutil.decodeall(pycompat.stdin.read()) |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1516 > pycompat.stdout.write(stringutil.pprint(items, indent=1) + b'\n') |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1517 > EOF |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1518 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1519 $ 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
|
1520 [ |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1521 10, |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1522 9 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1523 ] |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1524 |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1525 $ 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
|
1526 [ |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1527 { |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1528 'branch': 'default' |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1529 } |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1530 ] |
4df7c4b70e03
templatefilters: add {x|cbor} filter for custom CBOR output
Yuya Nishihara <yuya@tcha.org>
parents:
41720
diff
changeset
|
1531 |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1532 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
|
1533 |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1534 $ 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
|
1535 "\u003cfoo@example.org\u003e" |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1536 |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1537 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
|
1538 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1539 $ hg init nonascii |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1540 $ cd nonascii |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39367
diff
changeset
|
1541 $ "$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
|
1542 > 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
|
1543 > 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
|
1544 > EOF |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1545 $ 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
|
1546 $ 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
|
1547 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1548 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
|
1549 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1550 $ 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
|
1551 "\u00e9" |
28239
7279e0132347
templatekw: workaround for utf-8 round-trip of {desc}
Yuya Nishihara <yuya@tcha.org>
parents:
28212
diff
changeset
|
1552 $ 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
|
1553 "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
|
1554 |
37947
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1555 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
|
1556 |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1557 $ 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
|
1558 "\u00e9" |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1559 $ 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
|
1560 "non-ascii branch: \u00e9" |
3ea3c96ada54
encoding: introduce tagging type for non-lossy non-ASCII string
Yuya Nishihara <yuya@tcha.org>
parents:
37859
diff
changeset
|
1561 |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1562 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
|
1563 |
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1564 $ 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
|
1565 "\u00e9" |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
28209
diff
changeset
|
1566 $ 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
|
1567 "\udce9" |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1568 |
42480
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1569 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
|
1570 as bytes: |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1571 |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1572 $ HGENCODING=ascii hg log -T "{branch|cbor}" -r0 \ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1573 > | "$PYTHON" "$TESTTMP/decodecbor.py" |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1574 [ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1575 '?' |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1576 ] |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1577 $ 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
|
1578 > | "$PYTHON" "$TESTTMP/decodecbor.py" |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1579 [ |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1580 '\xe9' |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1581 ] |
b6387a65851d
cborutil: fix streamencode() to handle subtypes
Yuya Nishihara <yuya@tcha.org>
parents:
42000
diff
changeset
|
1582 |
28209
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1583 utf8 filter: |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1584 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1585 $ 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
|
1586 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
|
1587 $ 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
|
1588 decoded: c3a9 |
8ddf893560fa
templatefilters: add "utf8" to get utf-8 bytes from local-encoding text
Yuya Nishihara <yuya@tcha.org>
parents:
28177
diff
changeset
|
1589 $ 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
|
1590 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
|
1591 [255] |
37223
08e042f0a67c
templatefilters: declare input type as bytes where appropriate
Yuya Nishihara <yuya@tcha.org>
parents:
37105
diff
changeset
|
1592 $ 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
|
1593 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
|
1594 |
31520
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1595 pad width: |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1596 |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1597 $ 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
|
1598 \xc3\xa9- (esc) |
6f150bb19317
templater: make pad() compute actual width
Yuya Nishihara <yuya@tcha.org>
parents:
31519
diff
changeset
|
1599 |
41720
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1600 read config options: |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1601 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1602 $ hg log -T "{config('templateconfig', 'knob', 'foo')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1603 foo |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1604 $ hg log -T "{config('templateconfig', 'knob', 'foo')}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1605 > --config templateconfig.knob=bar |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1606 bar |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1607 $ hg log -T "{configbool('templateconfig', 'knob', True)}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1608 True |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1609 $ hg log -T "{configbool('templateconfig', 'knob', True)}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1610 > --config templateconfig.knob=0 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1611 False |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1612 $ hg log -T "{configint('templateconfig', 'knob', 123)}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1613 123 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1614 $ hg log -T "{configint('templateconfig', 'knob', 123)}\n" \ |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1615 > --config templateconfig.knob=456 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1616 456 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1617 $ hg log -T "{config('templateconfig', 'knob')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1618 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
|
1619 |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1620 $ hg log -T "{configbool('ui', 'interactive')}\n" |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1621 False |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1622 $ 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
|
1623 True |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1624 $ 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
|
1625 foo |
6704696141b8
templates: adding a config() function for template customization
rdamazio@google.com
parents:
40935
diff
changeset
|
1626 |
26856
baa77652be68
templatefilters: try round-trip utf-8 conversion by json filter (issue4933)
Yuya Nishihara <yuya@tcha.org>
parents:
26504
diff
changeset
|
1627 $ cd .. |