Mercurial > hg
annotate tests/test-bad-extension.t @ 44261:04a3ae7aba14
chg: force-set LC_CTYPE on server start to actual value from the environment
Python 3.7+ will "coerce" the LC_CTYPE variable in many instances, and this can
cause issues with chg being able to start up. D7550 attempted to fix this, but a
combination of a misreading of the way that python3.7 does the coercion and an
untested state (LC_CTYPE being set to an invalid value) meant that this was
still not quite working.
This change will cause differences between chg and hg: hg will have the LC_CTYPE
environment variable coerced, while chg will not. This is unlikely to cause any
detectable behavior differences in what Mercurial itself outputs, but it does
have two known effects:
- When using hg, the coerced LC_CTYPE will be passed to subprocesses, even
non-python ones. Using chg will remove the coercion, and this will not
happen. This is arguably more correct behavior on chg's part.
- On macOS, if you set your region to Brazil but your language to English,
this isn't representable in locale strings, so macOS sets LC_CTYPE=UTF-8. If
this value is passed along when ssh'ing to a non-macOS machine, some
functions (such as locale.setlocale()) may raise an exception due to an
unsupported locale setting. This is most easily encountered when doing an
interactive commit/split/etc. when using ui.interface=curses.
Differential Revision: https://phab.mercurial-scm.org/D8039
author | Kyle Lippincott <spectral@google.com> |
---|---|
date | Wed, 29 Jan 2020 13:39:50 -0800 |
parents | 5ed1abd0ea26 |
children | 8cab8db59b6c |
rev | line source |
---|---|
40996
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
1 $ filterlog () { |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
2 > sed -e 's!^[0-9/]* [0-9:]* ([0-9]*)>!YYYY/MM/DD HH:MM:SS (PID)>!' |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
3 > } |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
4 |
31957
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
5 ensure that failing ui.atexit handlers report sensibly |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
6 |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
7 $ cat > $TESTTMP/bailatexit.py <<EOF |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
8 > from mercurial import util |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
9 > def bail(): |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
10 > raise RuntimeError('ui.atexit handler exception') |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
11 > |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
12 > def extsetup(ui): |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
13 > ui.atexit(bail) |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
14 > EOF |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
15 $ hg -q --config extensions.bailatexit=$TESTTMP/bailatexit.py \ |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
16 > help help |
40346
943248e47864
commands: adjust metavariables as appropriate
Anton Shestakov <av6@dwimlabs.net>
parents:
40263
diff
changeset
|
17 hg help [-eck] [-s PLATFORM] [TOPIC] |
31957
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
18 |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
19 show help for a given topic or a help overview |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
20 error in exit handlers: |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
21 Traceback (most recent call last): |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
22 File "*/mercurial/dispatch.py", line *, in _runexithandlers (glob) |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
23 func(*args, **kwargs) |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
24 File "$TESTTMP/bailatexit.py", line *, in bail (glob) |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
25 raise RuntimeError('ui.atexit handler exception') |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
26 RuntimeError: ui.atexit handler exception |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
27 [255] |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
28 |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
29 $ rm $TESTTMP/bailatexit.py |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
30 |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
31 another bad extension |
84f9eb9758c0
atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents:
30027
diff
changeset
|
32 |
11858
934c7e91c126
tests: unify test-bad-extension
Martin Geisler <mg@lazybytes.net>
parents:
6204
diff
changeset
|
33 $ echo 'raise Exception("bit bucket overflow")' > badext.py |
28083
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
34 $ abspathexc=`pwd`/badext.py |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
35 |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
36 $ cat >baddocext.py <<EOF |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
37 > """ |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
38 > baddocext is bad |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
39 > """ |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
40 > EOF |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
41 $ abspathdoc=`pwd`/baddocext.py |
3014
01454af644b8
load extensions only after the ui object has been completely initialized
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
42 |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
43 $ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
44 > [extensions] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
45 > gpg = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
46 > hgext.gpg = |
28083
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
47 > badext = $abspathexc |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
48 > baddocext = $abspathdoc |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
49 > badext2 = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
14286
diff
changeset
|
50 > EOF |
3014
01454af644b8
load extensions only after the ui object has been completely initialized
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
51 |
26239
f39953663cc9
test-bad-extension: reduce dependencies on other things
timeless@mozdev.org
parents:
25364
diff
changeset
|
52 $ hg -q help help 2>&1 |grep extension |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12376
diff
changeset
|
53 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow |
40236
9b3470dd9870
tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents:
40186
diff
changeset
|
54 *** failed to import extension badext2: No module named *badext2* (glob) |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
55 |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
56 show traceback |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
57 |
40237
772c1145bcef
tests: expand our coverage of errors in Python 3 for bad extensions
Augie Fackler <augie@google.com>
parents:
40236
diff
changeset
|
58 $ hg -q help help --traceback 2>&1 | egrep ' extension|^Exception|Traceback|ImportError|ModuleNotFound' |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
59 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
60 Traceback (most recent call last): |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
61 Exception: bit bucket overflow |
40236
9b3470dd9870
tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents:
40186
diff
changeset
|
62 *** failed to import extension badext2: No module named *badext2* (glob) |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
63 Traceback (most recent call last): |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
64 ImportError: No module named badext2 (no-py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
65 ImportError: No module named 'hgext.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
66 ModuleNotFoundError: No module named 'hgext.badext2' (py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
67 Traceback (most recent call last): (py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
68 ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
69 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
70 Traceback (most recent call last): (py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
71 ImportError: No module named 'badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
72 ModuleNotFoundError: No module named 'badext2' (py36 !) |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
73 |
28155
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
74 names of extensions failed to load can be accessed via extensions.notloaded() |
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
75 |
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
76 $ cat <<EOF > showbadexts.py |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31957
diff
changeset
|
77 > from mercurial import commands, extensions, registrar |
28155
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
78 > cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31957
diff
changeset
|
79 > command = registrar.command(cmdtable) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32337
diff
changeset
|
80 > @command(b'showbadexts', norepo=True) |
28155
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
81 > def showbadexts(ui, *pats, **opts): |
40186
9cbc2579f5be
tests: fix up test-bad-extension.t's inline extension
Augie Fackler <augie@google.com>
parents:
39511
diff
changeset
|
82 > ui.write(b'BADEXTS: %s\n' % b' '.join(sorted(extensions.notloaded()))) |
28155
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
83 > EOF |
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
84 $ hg --config extensions.badexts=showbadexts.py showbadexts 2>&1 | grep '^BADEXTS' |
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
85 BADEXTS: badext badext2 |
7f430b2ac7fd
extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents:
28083
diff
changeset
|
86 |
39112
f2e645dc6a67
tests: conditionalize extension tests for extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38798
diff
changeset
|
87 #if no-extraextensions |
38727
fcb517ff9562
debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents:
38532
diff
changeset
|
88 show traceback for ImportError of hgext.name if devel.debug.extensions is set |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
89 |
38727
fcb517ff9562
debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents:
38532
diff
changeset
|
90 $ (hg help help --traceback --debug --config devel.debug.extensions=yes 2>&1) \ |
26239
f39953663cc9
test-bad-extension: reduce dependencies on other things
timeless@mozdev.org
parents:
25364
diff
changeset
|
91 > | grep -v '^ ' \ |
40996
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
92 > | filterlog \ |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
93 > | egrep 'extension..[^p]|^Exception|Traceback|ImportError|^YYYY|not import|ModuleNotFound' |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
94 YYYY/MM/DD HH:MM:SS (PID)> loading extensions |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
95 YYYY/MM/DD HH:MM:SS (PID)> - processing 5 entries |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
96 YYYY/MM/DD HH:MM:SS (PID)> - loading extension: gpg |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
97 YYYY/MM/DD HH:MM:SS (PID)> > gpg extension loaded in * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
98 YYYY/MM/DD HH:MM:SS (PID)> - validating extension tables: gpg |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
99 YYYY/MM/DD HH:MM:SS (PID)> - invoking registered callbacks: gpg |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
100 YYYY/MM/DD HH:MM:SS (PID)> > callbacks completed in * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
101 YYYY/MM/DD HH:MM:SS (PID)> - loading extension: badext |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
102 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
103 Traceback (most recent call last): |
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
104 Exception: bit bucket overflow |
40996
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
105 YYYY/MM/DD HH:MM:SS (PID)> - loading extension: baddocext |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
106 YYYY/MM/DD HH:MM:SS (PID)> > baddocext extension loaded in * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
107 YYYY/MM/DD HH:MM:SS (PID)> - validating extension tables: baddocext |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
108 YYYY/MM/DD HH:MM:SS (PID)> - invoking registered callbacks: baddocext |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
109 YYYY/MM/DD HH:MM:SS (PID)> > callbacks completed in * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
110 YYYY/MM/DD HH:MM:SS (PID)> - loading extension: badext2 |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
111 YYYY/MM/DD HH:MM:SS (PID)> - could not import hgext.badext2 (No module named *badext2*): trying hgext3rd.badext2 (glob) |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
112 Traceback (most recent call last): |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
113 ImportError: No module named badext2 (no-py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
114 ImportError: No module named 'hgext.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
115 ModuleNotFoundError: No module named 'hgext.badext2' (py36 !) |
40996
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
116 YYYY/MM/DD HH:MM:SS (PID)> - could not import hgext3rd.badext2 (No module named *badext2*): trying badext2 (glob) |
28541
4b81487a01d4
extensions: also search for extension in the 'hgext3rd' package
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
28338
diff
changeset
|
117 Traceback (most recent call last): |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
118 ImportError: No module named badext2 (no-py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
119 ImportError: No module named 'hgext.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
120 ModuleNotFoundError: No module named 'hgext.badext2' (py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
121 Traceback (most recent call last): (py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
122 ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
123 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !) |
40236
9b3470dd9870
tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents:
40186
diff
changeset
|
124 *** failed to import extension badext2: No module named *badext2* (glob) |
25364
de23a552fc23
extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents:
23172
diff
changeset
|
125 Traceback (most recent call last): |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
126 ImportError: No module named 'hgext.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
127 ModuleNotFoundError: No module named 'hgext.badext2' (py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
128 Traceback (most recent call last): (py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
129 ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
130 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
131 Traceback (most recent call last): (py3 !) |
43191
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
132 ModuleNotFoundError: No module named 'badext2' (py36 !) |
5ed1abd0ea26
py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents:
40996
diff
changeset
|
133 ImportError: No module named 'badext2' (py3 no-py36 !) |
40263
8cf459d8b111
py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents:
40237
diff
changeset
|
134 ImportError: No module named badext2 (no-py3 !) |
40996
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
135 YYYY/MM/DD HH:MM:SS (PID)> > loaded 2 extensions, total time * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
136 YYYY/MM/DD HH:MM:SS (PID)> - loading configtable attributes |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
137 YYYY/MM/DD HH:MM:SS (PID)> - executing uisetup hooks |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
138 YYYY/MM/DD HH:MM:SS (PID)> - running uisetup for gpg |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
139 YYYY/MM/DD HH:MM:SS (PID)> > uisetup for gpg took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
140 YYYY/MM/DD HH:MM:SS (PID)> - running uisetup for baddocext |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
141 YYYY/MM/DD HH:MM:SS (PID)> > uisetup for baddocext took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
142 YYYY/MM/DD HH:MM:SS (PID)> > all uisetup took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
143 YYYY/MM/DD HH:MM:SS (PID)> - executing extsetup hooks |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
144 YYYY/MM/DD HH:MM:SS (PID)> - running extsetup for gpg |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
145 YYYY/MM/DD HH:MM:SS (PID)> > extsetup for gpg took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
146 YYYY/MM/DD HH:MM:SS (PID)> - running extsetup for baddocext |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
147 YYYY/MM/DD HH:MM:SS (PID)> > extsetup for baddocext took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
148 YYYY/MM/DD HH:MM:SS (PID)> > all extsetup took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
149 YYYY/MM/DD HH:MM:SS (PID)> - executing remaining aftercallbacks |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
150 YYYY/MM/DD HH:MM:SS (PID)> > remaining aftercallbacks completed in * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
151 YYYY/MM/DD HH:MM:SS (PID)> - loading extension registration objects |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
152 YYYY/MM/DD HH:MM:SS (PID)> > extension registration object loading took * (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
153 YYYY/MM/DD HH:MM:SS (PID)> > extension baddocext take a total of * to load (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
154 YYYY/MM/DD HH:MM:SS (PID)> > extension gpg take a total of * to load (glob) |
6f2510b581a0
extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents:
40440
diff
changeset
|
155 YYYY/MM/DD HH:MM:SS (PID)> extension loading complete |
39112
f2e645dc6a67
tests: conditionalize extension tests for extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38798
diff
changeset
|
156 #endif |
28083
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
157 |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
158 confirm that there's no crash when an extension's documentation is bad |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
159 |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
160 $ hg help --keyword baddocext |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
161 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow |
40236
9b3470dd9870
tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents:
40186
diff
changeset
|
162 *** failed to import extension badext2: No module named *badext2* (glob) |
28083
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
163 Topics: |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
164 |
550097d01ca3
tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents:
27538
diff
changeset
|
165 extensions Using Additional Features |