Mercurial > hg
annotate tests/test-basic.t @ 46065:56a5ea353182
test-extension: flush diagnostic message to stabilize chg output
Since chg server may create new file object for the attached stdout,
procutil.stdout is not ui.fout and the buffered procutil.stdout data wouldn't
be flushed at all. That's why test-extension.t passes without modification
on Python 2.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 07 Dec 2020 20:12:36 +0900 |
parents | f44b9c72f061 |
children | a04c03b0678e |
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 |
25290
8f88f768e24c
devel: rename 'all' to 'all-warnings' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24751
diff
changeset
|
5 devel.all-warnings=true |
32410
f94d7e3e46a0
devel: activate default-date in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
31964
diff
changeset
|
6 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
|
7 extensions.fsmonitor= (fsmonitor !) |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
35280
diff
changeset
|
8 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
|
9 lfs.usercache=$TESTTMP/.cache/lfs |
20608
a3ca1d032926
config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents:
17346
diff
changeset
|
10 ui.slash=True |
a3ca1d032926
config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents:
17346
diff
changeset
|
11 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
|
12 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
|
13 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
|
14 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
|
15 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
|
16 ui.timeout.warn=15 |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30986
diff
changeset
|
17 web.address=localhost |
31010 | 18 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
|
19 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
|
20 #endif |
4e6a6d0dccee
tests: conditionalize tests based on presence of custom extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37009
diff
changeset
|
21 |
13956
ffb5c09ba822
tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents:
13568
diff
changeset
|
22 $ hg init t |
11742 | 23 $ cd t |
24 | |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
25 Prepare a changeset: |
11742 | 26 |
27 $ echo a > a | |
28 $ hg add a | |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
29 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
30 $ hg status |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
31 A a |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
32 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
33 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
|
34 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
35 #if devfull |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
36 $ hg status 2>/dev/full |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
37 A a |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
38 |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
39 $ hg status >/dev/full |
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
40 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
|
41 [255] |
34448
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
42 #endif |
31964
ebaada96aec3
stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents:
31010
diff
changeset
|
43 |
35653
48fe4f56a3b4
dispatch: handle IOError when writing to stderr
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35393
diff
changeset
|
44 #if devfull |
34448
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
45 $ hg status >/dev/full 2>&1 |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
46 [255] |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
47 |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
48 $ hg status ENOENT 2>/dev/full |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
49 [255] |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
50 #endif |
1f5bd3e1a7fe
test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
33426
diff
changeset
|
51 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
52 $ hg commit -m test |
11742 | 53 |
54 This command is ancient: | |
331 | 55 |
11742 | 56 $ hg history |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
57 changeset: 0:acb14030fe0a |
11742 | 58 tag: tip |
59 user: test | |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11742
diff
changeset
|
60 date: Thu Jan 01 00:00:00 1970 +0000 |
11742 | 61 summary: test |
62 | |
63 | |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
64 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
|
65 |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
66 $ 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
|
67 > 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
|
68 > myui = uimod.ui.load() |
36638
159b04de5fb0
py3: make test-basic.t pass on Python 3
Yuya Nishihara <yuya@tcha.org>
parents:
36247
diff
changeset
|
69 > 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
|
70 > 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
|
71 > EOF |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
72 $ hg up null |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
73 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
|
74 $ "$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
|
75 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
|
76 $ hg identify -n |
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
77 0 |
17346
2944a6d35158
check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
78 |
13568
0b79cf616e65
commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents:
12156
diff
changeset
|
79 |
11742 | 80 Poke around at hashes: |
81 | |
82 $ hg manifest --debug | |
83 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a | |
84 | |
85 $ hg cat a | |
86 a | |
87 | |
88 Verify should succeed: | |
89 | |
90 $ hg verify | |
91 checking changesets | |
92 checking manifests | |
93 crosschecking files in changesets and manifests | |
94 checking files | |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
38480
diff
changeset
|
95 checked 1 changesets with 1 changes to 1 files |
11742 | 96 |
36247
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
97 Repository root: |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
98 |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
99 $ hg root |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
100 $TESTTMP/t |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
101 $ hg log -l1 -T '{reporoot}\n' |
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
102 $TESTTMP/t |
42418
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
103 $ hg root -Tjson | sed 's|\\\\|\\|g' |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
104 [ |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
105 { |
42419
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
106 "hgpath": "$TESTTMP/t/.hg", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
107 "reporoot": "$TESTTMP/t", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42418
diff
changeset
|
108 "storepath": "$TESTTMP/t/.hg/store" |
42418
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
109 } |
9803323048b6
root: add support for -Tformatter option
Yuya Nishihara <yuya@tcha.org>
parents:
40547
diff
changeset
|
110 ] |
36247
48a6b1a22ccf
templatekw: add {reporoot} keyword
Yuya Nishihara <yuya@tcha.org>
parents:
35653
diff
changeset
|
111 |
11742 | 112 At the end... |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
113 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
114 $ cd .. |
40547
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
115 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
116 Status message redirection: |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
117 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
118 $ hg init empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
119 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
120 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
|
121 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
122 $ 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
|
123 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
124 searching for changes |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
125 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
126 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
127 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
128 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
129 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
130 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
131 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
132 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
133 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
134 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
135 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
136 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
137 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
138 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
139 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
140 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
|
141 interleaved: |
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 $ cat <<'EOF' >> "$HGRCPATH" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
144 > [ui] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
145 > message-output = stderr |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
146 > EOF |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
147 $ 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
|
148 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
149 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
150 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
151 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
152 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
153 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
154 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
155 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
156 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
157 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
158 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
159 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
160 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
161 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
162 $ 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
|
163 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
164 searching for changes |
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 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
|
167 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
168 $ 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
|
169 comparing with empty |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
170 searching for changes |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
171 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
172 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
173 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
174 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
175 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
176 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
177 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
178 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
179 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
180 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
181 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
182 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
183 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
184 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
185 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
186 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
|
187 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
188 $ 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
|
189 > 2>/dev/null |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
190 [ |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
191 { |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
192 "bookmarks": [], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
193 "branch": "default", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
194 "date": [0, 0], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
195 "desc": "test", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
196 "node": "acb14030fe0a21b60322c440ad2d20cf7685a376", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
197 "parents": ["0000000000000000000000000000000000000000"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
198 "phase": "draft", |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
199 "rev": 0, |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
200 "tags": ["tip"], |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
201 "user": "test" |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
202 } |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
203 ] |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
204 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
205 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
|
206 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
207 $ 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
|
208 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
|
209 [255] |
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 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
|
212 |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
213 $ 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
|
214 > 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
|
215 > cmdtable = {} |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
216 > 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
|
217 > @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
|
218 > def capui(ui): |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
219 > out = ui.fout |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
220 > 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
|
221 > 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
|
222 > 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
|
223 > 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
|
224 > 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
|
225 > 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
|
226 > EOF |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
227 $ 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
|
228 stdout: status |
840cd57cde32
ui: add config knob to redirect status messages to stderr (API)
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
229 stderr: warn |