author | Yuya Nishihara <yuya@tcha.org> |
Thu, 01 Jun 2017 23:05:29 +0900 | |
changeset 32617 | e48cb1c7a902 |
parent 32340 | 9c023179e8d0 |
child 32924 | f044295cdb7a |
permissions | -rw-r--r-- |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
1 |
|
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
2 |
$ cat << EOF > buggylocking.py |
27270
ba5f20450b10
test: update the docstring of 'test-devel-warnings.t' extension
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25630
diff
changeset
|
3 |
> """A small extension that tests our developer warnings |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 |
> """ |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 |
> |
32340
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
6 |
> from mercurial import error, registrar, repair, util |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 |
> |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 |
> cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
32040
diff
changeset
|
9 |
> command = registrar.command(cmdtable) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 |
> |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 |
> @command('buggylocking', [], '') |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 |
> def buggylocking(ui, repo): |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 |
> lo = repo.lock() |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 |
> wl = repo.wlock() |
24392
dc7588ce06b3
tests: avoid deprecation warning
Matt Mackall <mpm@selenic.com>
parents:
24388
diff
changeset
|
15 |
> wl.release() |
dc7588ce06b3
tests: avoid deprecation warning
Matt Mackall <mpm@selenic.com>
parents:
24388
diff
changeset
|
16 |
> lo.release() |
24744
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
17 |
> |
29185
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
18 |
> @command('buggytransaction', [], '') |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
19 |
> def buggylocking(ui, repo): |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
20 |
> tr = repo.transaction('buggy') |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
21 |
> # make sure we rollback the transaction as we don't want to rely on the__del__ |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
22 |
> tr.release() |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
23 |
> |
24744
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
24 |
> @command('properlocking', [], '') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
25 |
> def properlocking(ui, repo): |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
26 |
> """check that reentrance is fine""" |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
27 |
> wl = repo.wlock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
28 |
> lo = repo.lock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
29 |
> tr = repo.transaction('proper') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
30 |
> tr2 = repo.transaction('proper') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
31 |
> lo2 = repo.lock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
32 |
> wl2 = repo.wlock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
33 |
> wl2.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
34 |
> lo2.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
35 |
> tr2.close() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
36 |
> tr.close() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
37 |
> lo.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
38 |
> wl.release() |
24750
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
39 |
> |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
40 |
> @command('nowaitlocking', [], '') |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
41 |
> def nowaitlocking(ui, repo): |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
42 |
> lo = repo.lock() |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
43 |
> wl = repo.wlock(wait=False) |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
44 |
> wl.release() |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
45 |
> lo.release() |
25300
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
46 |
> |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
47 |
> @command('stripintr', [], '') |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
48 |
> def stripintr(ui, repo): |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
49 |
> lo = repo.lock() |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
50 |
> tr = repo.transaction('foobar') |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
51 |
> try: |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
52 |
> repair.strip(repo.ui, repo, [repo['.'].node()]) |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
53 |
> finally: |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
54 |
> lo.release() |
27275
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
55 |
> @command('oldanddeprecated', [], '') |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
56 |
> def oldanddeprecated(ui, repo): |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
57 |
> """test deprecation warning API""" |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
58 |
> def foobar(ui): |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
59 |
> ui.deprecwarn('foorbar is deprecated, go shopping', '42.1337') |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
60 |
> foobar(ui) |
31950
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
61 |
> @command('nouiwarning', [], '') |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
62 |
> def nouiwarning(ui, repo): |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
63 |
> util.nouideprecwarn('this is a test', '13.37') |
32340
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
64 |
> @command('programmingerror', [], '') |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
65 |
> def programmingerror(ui, repo): |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
66 |
> raise error.ProgrammingError('something went wrong', hint='try again') |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
67 |
> EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
68 |
|
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 |
$ cat << EOF >> $HGRCPATH |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 |
> [extensions] |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 |
> buggylocking=$TESTTMP/buggylocking.py |
28498 | 72 |
> mock=$TESTDIR/mockblackbox.py |
73 |
> blackbox= |
|
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
74 |
> [devel] |
25290
8f88f768e24c
devel: rename 'all' to 'all-warnings' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24755
diff
changeset
|
75 |
> all-warnings=1 |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 |
> EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
77 |
|
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 |
$ hg init lock-checker |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 |
$ cd lock-checker |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 |
$ hg buggylocking |
28016
a2be6f0f58fb
tests: relax test-devel-warnings to reduce false positives
timeless <timeless@mozdev.org>
parents:
27275
diff
changeset
|
81 |
devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 |
$ cat << EOF >> $HGRCPATH |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 |
> [devel] |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 |
> all=0 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 |
> check-locks=1 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 |
> EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 |
$ hg buggylocking |
28016
a2be6f0f58fb
tests: relax test-devel-warnings to reduce false positives
timeless <timeless@mozdev.org>
parents:
27275
diff
changeset
|
88 |
devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 |
$ hg buggylocking --traceback |
24755
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
90 |
devel-warn: "wlock" acquired after "lock" at: |
24555
1b97cc5d2272
tests: fix py2.4 glob for devel warnings
Matt Mackall <mpm@selenic.com>
parents:
24392
diff
changeset
|
91 |
*/hg:* in * (glob) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
92 |
*/mercurial/dispatch.py:* in run (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
93 |
*/mercurial/dispatch.py:* in dispatch (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
94 |
*/mercurial/dispatch.py:* in _runcatch (glob) |
32040
0fb78cb90ca7
dispatch: mark callcatch() as a private function
Yuya Nishihara <yuya@tcha.org>
parents:
31950
diff
changeset
|
95 |
*/mercurial/dispatch.py:* in _callcatch (glob) |
30520
4338f87dbf6f
dispatch: move part of callcatch to scmutil
Jun Wu <quark@fb.com>
parents:
29784
diff
changeset
|
96 |
*/mercurial/scmutil.py* in callcatch (glob) |
29761
39149b6036e6
dispatch: split global error handling out so it can be reused
Jun Wu <quark@fb.com>
parents:
29186
diff
changeset
|
97 |
*/mercurial/dispatch.py:* in _runcatchfunc (glob) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
98 |
*/mercurial/dispatch.py:* in _dispatch (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
99 |
*/mercurial/dispatch.py:* in runcommand (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
100 |
*/mercurial/dispatch.py:* in _runcommand (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
101 |
*/mercurial/dispatch.py:* in <lambda> (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
102 |
*/mercurial/util.py:* in check (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
103 |
$TESTTMP/buggylocking.py:* in buggylocking (glob) |
24744
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
104 |
$ hg properlocking |
24750
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
105 |
$ hg nowaitlocking |
25300
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
106 |
|
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
107 |
$ echo a > a |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
108 |
$ hg add a |
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
109 |
$ hg commit -m a |
31645 | 110 |
$ hg stripintr 2>&1 | egrep -v '^(\*\*| )' |
28016
a2be6f0f58fb
tests: relax test-devel-warnings to reduce false positives
timeless <timeless@mozdev.org>
parents:
27275
diff
changeset
|
111 |
saved backup bundle to $TESTTMP/lock-checker/.hg/strip-backup/*-backup.hg (glob) |
31645 | 112 |
Traceback (most recent call last): |
113 |
mercurial.error.ProgrammingError: cannot strip from inside a transaction |
|
25300
678d0bfdd31a
repair: forbid strip from inside a transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25290
diff
changeset
|
114 |
|
27275
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
115 |
$ hg oldanddeprecated |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
116 |
devel-warn: foorbar is deprecated, go shopping |
28016
a2be6f0f58fb
tests: relax test-devel-warnings to reduce false positives
timeless <timeless@mozdev.org>
parents:
27275
diff
changeset
|
117 |
(compatibility will be dropped after Mercurial-42.1337, update your code.) at: $TESTTMP/buggylocking.py:* (oldanddeprecated) (glob) |
25630
c88082baf693
devel-warn: issue a warning for old style revsets
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25300
diff
changeset
|
118 |
|
27275
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
119 |
$ hg oldanddeprecated --traceback |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
120 |
devel-warn: foorbar is deprecated, go shopping |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
121 |
(compatibility will be dropped after Mercurial-42.1337, update your code.) at: |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
122 |
*/hg:* in <module> (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
123 |
*/mercurial/dispatch.py:* in run (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
124 |
*/mercurial/dispatch.py:* in dispatch (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
125 |
*/mercurial/dispatch.py:* in _runcatch (glob) |
32040
0fb78cb90ca7
dispatch: mark callcatch() as a private function
Yuya Nishihara <yuya@tcha.org>
parents:
31950
diff
changeset
|
126 |
*/mercurial/dispatch.py:* in _callcatch (glob) |
30520
4338f87dbf6f
dispatch: move part of callcatch to scmutil
Jun Wu <quark@fb.com>
parents:
29784
diff
changeset
|
127 |
*/mercurial/scmutil.py* in callcatch (glob) |
29761
39149b6036e6
dispatch: split global error handling out so it can be reused
Jun Wu <quark@fb.com>
parents:
29186
diff
changeset
|
128 |
*/mercurial/dispatch.py:* in _runcatchfunc (glob) |
27275
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
129 |
*/mercurial/dispatch.py:* in _dispatch (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
130 |
*/mercurial/dispatch.py:* in runcommand (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
131 |
*/mercurial/dispatch.py:* in _runcommand (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
132 |
*/mercurial/dispatch.py:* in <lambda> (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
133 |
*/mercurial/util.py:* in check (glob) |
f2cd240f2f7c
ui: add a 'deprecwarn' helper to issue deprecation warnings
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27270
diff
changeset
|
134 |
$TESTTMP/buggylocking.py:* in oldanddeprecated (glob) |
31809
35b8bb1ef02b
revset: stop supporting predicate that returns plain list (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31773
diff
changeset
|
135 |
$ hg blackbox -l 7 |
28498 | 136 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated |
137 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> devel-warn: foorbar is deprecated, go shopping |
|
138 |
(compatibility will be dropped after Mercurial-42.1337, update your code.) at: $TESTTMP/buggylocking.py:* (oldanddeprecated) (glob) |
|
139 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated exited 0 after * seconds (glob) |
|
140 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated --traceback |
|
141 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> devel-warn: foorbar is deprecated, go shopping |
|
142 |
(compatibility will be dropped after Mercurial-42.1337, update your code.) at: |
|
143 |
*/hg:* in <module> (glob) |
|
144 |
*/mercurial/dispatch.py:* in run (glob) |
|
145 |
*/mercurial/dispatch.py:* in dispatch (glob) |
|
146 |
*/mercurial/dispatch.py:* in _runcatch (glob) |
|
32040
0fb78cb90ca7
dispatch: mark callcatch() as a private function
Yuya Nishihara <yuya@tcha.org>
parents:
31950
diff
changeset
|
147 |
*/mercurial/dispatch.py:* in _callcatch (glob) |
30520
4338f87dbf6f
dispatch: move part of callcatch to scmutil
Jun Wu <quark@fb.com>
parents:
29784
diff
changeset
|
148 |
*/mercurial/scmutil.py* in callcatch (glob) |
29761
39149b6036e6
dispatch: split global error handling out so it can be reused
Jun Wu <quark@fb.com>
parents:
29186
diff
changeset
|
149 |
*/mercurial/dispatch.py:* in _runcatchfunc (glob) |
28498 | 150 |
*/mercurial/dispatch.py:* in _dispatch (glob) |
151 |
*/mercurial/dispatch.py:* in runcommand (glob) |
|
152 |
*/mercurial/dispatch.py:* in _runcommand (glob) |
|
153 |
*/mercurial/dispatch.py:* in <lambda> (glob) |
|
154 |
*/mercurial/util.py:* in check (glob) |
|
155 |
$TESTTMP/buggylocking.py:* in oldanddeprecated (glob) |
|
156 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated --traceback exited 0 after * seconds (glob) |
|
31809
35b8bb1ef02b
revset: stop supporting predicate that returns plain list (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31773
diff
changeset
|
157 |
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> blackbox -l 7 |
29185
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
158 |
|
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
159 |
Test programming error failure: |
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
160 |
|
29186
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
161 |
$ hg buggytransaction 2>&1 | egrep -v '^ ' |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
162 |
** Unknown exception encountered with possibly-broken third-party extension buggylocking |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
163 |
** which supports versions unknown of Mercurial. |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
164 |
** Please disable buggylocking and try your action again. |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
165 |
** If that fixes the bug please report it to the extension author. |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
166 |
** Python * (glob) |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
167 |
** Mercurial Distributed SCM (*) (glob) |
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
168 |
** Extensions loaded: * (glob) |
32340
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
169 |
** ProgrammingError: transaction requires locking |
29186
e0fc0ed41935
transaction: turn lack of locking into a hard failure (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29185
diff
changeset
|
170 |
Traceback (most recent call last): |
30574 | 171 |
mercurial.error.ProgrammingError: transaction requires locking |
29185
28e7f590be2d
test: extract develwarn transaction testing in its own command
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29147
diff
changeset
|
172 |
|
32340
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
173 |
$ hg programmingerror 2>&1 | egrep -v '^ ' |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
174 |
** Unknown exception encountered with possibly-broken third-party extension buggylocking |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
175 |
** which supports versions unknown of Mercurial. |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
176 |
** Please disable buggylocking and try your action again. |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
177 |
** If that fixes the bug please report it to the extension author. |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
178 |
** Python * (glob) |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
179 |
** Mercurial Distributed SCM (*) (glob) |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
180 |
** Extensions loaded: * (glob) |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
181 |
** ProgrammingError: something went wrong |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
182 |
** (try again) |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
183 |
Traceback (most recent call last): |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
184 |
mercurial.error.ProgrammingError: something went wrong |
9c023179e8d0
error: add hint to ProgrammingError
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
185 |
|
31950
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
186 |
Old style deprecation warning |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
187 |
|
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
188 |
$ hg nouiwarning |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
189 |
$TESTTMP/buggylocking.py:61: DeprecationWarning: this is a test |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
190 |
(compatibility will be dropped after Mercurial-13.37, update your code.) |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
191 |
util.nouideprecwarn('this is a test', '13.37') |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
192 |
|
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
193 |
(disabled outside of test run) |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
194 |
|
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
195 |
$ HGEMITWARNINGS= hg nouiwarning |
cc70c6dbac30
util: add a way to issue deprecation warning without a UI object
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31809
diff
changeset
|
196 |
|
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
197 |
$ cd .. |