Mercurial > hg
annotate tests/test-basic.t @ 47783:085ebc80f84b stable
clone: test local clone in `test-clone-uncompressed.t` too
This is not an uncompressed test but needs to be tested in the same kind of
constraints regarding special file name.
Differential Revision: https://phab.mercurial-scm.org/D11218
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 27 Jul 2021 19:16:30 +0200 |
parents | 036b9b3cc79a |
children | a28a7dcb9158 |
rev | line source |
---|---|
11742 | 1 Create a repository: |
2 | |
37342
4e6a6d0dccee
tests: conditionalize tests based on presence of custom extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37009
diff
changeset
|
3 #if no-extraextensions |
20608
a3ca1d032926
config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents:
17346
diff
changeset
|
4 $ hg config |
47776
036b9b3cc79a
run-tests: use a small timeout for chg instance
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
5 chgserver.idletimeout=60 |
25290
8f88f768e24c
devel: rename 'all' to 'all-warnings' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24751
diff
changeset
|
6 devel.all-warnings=true |
32410
f94d7e3e46a0
devel: activate default-date in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
31964
diff
changeset
|
7 devel.default-date=0 0 |
33426
29653495cece
tests: add extra output for fsmonitor at showconfig
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32940
diff
changeset
|
8 extensions.fsmonitor= (fsmonitor !) |
47279
40b51c28b242
dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents:
46262
diff
changeset
|
9 format.exp-dirstate-v2=1 (dirstate-v2 !) |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
35280
diff
changeset
|
10 largefiles.usercache=$TESTTMP/.cache/largefiles |
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
35280
diff
changeset
|
11 lfs.usercache=$TESTTMP/.cache/lfs |
20608
a3ca1d032926
config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents:
17346
diff
changeset
|
12 ui.slash=True |
a3ca1d032926
config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents:
17346
diff
changeset
|
13 ui.interactive=False |
45826
21733e8c924f
errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents:
42419
diff
changeset
|
14 ui.detailed-exit-code=True |
40470
d6b6f1b441cf
run-tests: define the default merge tool through configuration
Boris Feld <boris.feld@octobus.net>
parents:
40369
diff
changeset
|
15 ui.merge=internal:merge |
21918
10abc3a5c6b2
filemerge: use 'basic' as the default of '[ui] mergemarkers' for safety
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
20608
diff
changeset
|
16 ui.mergemarkers=detailed |
23053
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
21918
diff
changeset
|
17 ui.promptecho=True |
46015
f44b9c72f061
run-tests: allow some slack about 'waiting on lock' message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45826
diff
changeset
|
18 ui.timeout.warn=15 |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30986
diff
changeset
|
19 web.address=localhost |
31010 | 20 web\.ipv6=(?:True|False) (re) |
37009
5890e5872f36
hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
36638
diff
changeset
|
21 web.server-header=testing stub value |
37342
4e6a6d0dccee
tests: conditionalize tests based on presence of custom extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37009
diff
changeset
|
22 #endif |
4e6a6d0dccee
tests: conditionalize tests based on presence of custom extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37009
diff
changeset
|
23 |
13956
ffb5c09ba822
tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents:
13568
diff
changeset
|
24 $ hg init t |
11742 | 25 $ cd t |
26 | |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
27 Prepare a changeset: |
11742 | 28 |
29 $ echo a > a | |
30 $ hg add a | |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
31 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
32 $ hg status |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
33 A a |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
34 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
35 Writes to stdio succeed and fail appropriately |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
36 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
37 #if devfull |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
38 $ hg status 2>/dev/full |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
39 A a |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
40 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
41 $ hg status >/dev/full |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
42 abort: No space left on device |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
43 [255] |
34448
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
44 #endif |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
45 |
35653
48fe4f56a3b4
dispatch: handle IOError when writing to stderr
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35393
diff
changeset
|
46 #if devfull |
34448
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
47 $ hg status >/dev/full 2>&1 |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
48 [255] |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
49 |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
50 $ hg status ENOENT 2>/dev/full |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
51 [255] |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
52 #endif |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
53 |
46175
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
54 On Python 3, stdio may be None: |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
55 |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
56 $ hg debuguiprompt --config ui.interactive=true 0<&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
57 abort: Bad file descriptor |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
58 [255] |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
59 $ hg version -q 0<&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
60 Mercurial Distributed SCM * (glob) |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
61 |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
62 #if py3 |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
63 $ hg version -q 1>&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
64 abort: Bad file descriptor |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
65 [255] |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
66 #else |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
67 $ hg version -q 1>&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
68 #endif |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
69 $ hg unknown -q 1>&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
70 hg: unknown command 'unknown' |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
71 (did you mean debugknown?) |
46262
9c9e0b4b2ca7
error: use detailed exit code 10 for command errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46175
diff
changeset
|
72 [10] |
46175
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
73 |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
74 $ hg version -q 2>&- |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
75 Mercurial Distributed SCM * (glob) |
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
76 $ hg unknown -q 2>&- |
46262
9c9e0b4b2ca7
error: use detailed exit code 10 for command errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46175
diff
changeset
|
77 [10] |
46175
a04c03b0678e
procutil: assign pseudo file object if sys.stdout/stderr is missing
Yuya Nishihara <yuya@tcha.org>
parents:
46015
diff
changeset
|
78 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
79 $ hg commit -m test |
11742 | 80 |
81 This command is ancient: | |
331 | 82 |
11742 | 83 $ hg history |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
84 changeset: 0:acb14030fe0a |
11742 | 85 tag: tip |
86 user: test | |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
87 date: Thu Jan 01 00:00:00 1970 +0000 |
11742 | 88 summary: test |
89 | |
90 | |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
91 Verify that updating to revision 0 via commands.update() works properly |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
92 |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
93 $ cat <<EOF > update_to_rev0.py |
40369
ef6cab7930b3
py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
39707
diff
changeset
|
94 > from mercurial import commands, hg, ui as uimod |
ef6cab7930b3
py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
39707
diff
changeset
|
95 > myui = uimod.ui.load() |
36638
159b04de5fb0
py3: make test-basic.t pass on Python 3
Yuya Nishihara <yuya@tcha.org>
parents:
36247
diff
changeset
|
96 > repo = hg.repository(myui, path=b'.') |
38480
ecaa0ad4ed4f
tests: pass "rev" argument to commands.update() as string
Martin von Zweigbergk <martinvonz@google.com>
parents:
37342
diff
changeset
|
97 > commands.update(myui, repo, rev=b"0") |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
98 > EOF |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
99 $ hg up null |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
100 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39489
diff
changeset
|
101 $ "$PYTHON" ./update_to_rev0.py |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
102 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
103 $ hg identify -n |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
104 0 |
17346
2944a6d35158
check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
105 |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
106 |
11742 | 107 Poke around at hashes: |
108 | |
109 $ hg manifest --debug | |
110 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a | |
111 | |
112 $ hg cat a | |
113 a | |
114 | |
115 Verify should succeed: | |
116 | |
117 $ hg verify | |
118 checking changesets | |
119 checking manifests | |
120 crosschecking files in changesets and manifests | |
121 checking files | |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
38480
diff
changeset
|
122 checked 1 changesets with 1 changes to 1 files |
11742 | 123 |
36247
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
124 Repository root: |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
125 |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
126 $ hg root |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
127 $TESTTMP/t |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
128 $ hg log -l1 -T '{reporoot}\n' |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
129 $TESTTMP/t |
42418
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
130 $ hg root -Tjson | sed 's|\\\\|\\|g' |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
131 [ |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
132 { |
42419
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
133 "hgpath": "$TESTTMP/t/.hg", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
134 "reporoot": "$TESTTMP/t", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
135 "storepath": "$TESTTMP/t/.hg/store" |
42418
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
136 } |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
137 ] |
36247
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
138 |
11742 | 139 At the end... |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
140 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
141 $ cd .. |
40547
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
142 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
143 Status message redirection: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
144 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
145 $ hg init empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
146 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
147 status messages are sent to stdout by default: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
148 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
149 $ hg outgoing -R t empty -Tjson 2>/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
150 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
151 searching for changes |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
152 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
153 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
154 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
155 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
156 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
157 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
158 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
159 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
160 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
161 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
162 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
163 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
164 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
165 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
166 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
167 which can be configured to send to stderr, so the output wouldn't be |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
168 interleaved: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
169 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
170 $ cat <<'EOF' >> "$HGRCPATH" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
171 > [ui] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
172 > message-output = stderr |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
173 > EOF |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
174 $ hg outgoing -R t empty -Tjson 2>/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
175 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
176 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
177 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
178 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
179 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
180 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
181 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
182 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
183 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
184 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
185 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
186 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
187 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
188 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
189 $ hg outgoing -R t empty -Tjson >/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
190 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
191 searching for changes |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
192 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
193 this option should be turned off by HGPLAIN= since it may break scripting use: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
194 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
195 $ HGPLAIN= hg outgoing -R t empty -Tjson 2>/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
196 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
197 searching for changes |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
198 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
199 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
200 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
201 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
202 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
203 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
204 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
205 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
206 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
207 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
208 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
209 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
210 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
211 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
212 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
213 but still overridden by --config: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
214 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
215 $ HGPLAIN= hg outgoing -R t empty -Tjson --config ui.message-output=stderr \ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
216 > 2>/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
217 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
218 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
219 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
220 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
221 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
222 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
223 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
224 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
225 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
226 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
227 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
228 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
229 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
230 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
231 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
232 Invalid ui.message-output option: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
233 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
234 $ hg log -R t --config ui.message-output=bad |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
235 abort: invalid ui.message-output destination: bad |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
236 [255] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
237 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
238 Underlying message streams should be updated when ui.fout/ferr are set: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
239 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
240 $ cat <<'EOF' > capui.py |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
241 > from mercurial import pycompat, registrar |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
242 > cmdtable = {} |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
243 > command = registrar.command(cmdtable) |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
244 > @command(b'capui', norepo=True) |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
245 > def capui(ui): |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
246 > out = ui.fout |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
247 > ui.fout = pycompat.bytesio() |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
248 > ui.status(b'status\n') |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
249 > ui.ferr = pycompat.bytesio() |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
250 > ui.warn(b'warn\n') |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
251 > out.write(b'stdout: %s' % ui.fout.getvalue()) |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
252 > out.write(b'stderr: %s' % ui.ferr.getvalue()) |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
253 > EOF |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
254 $ hg --config extensions.capui=capui.py --config ui.message-output=stdio capui |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
255 stdout: status |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
256 stderr: warn |