##// END OF EJS Templates
extensions: register functions always at loading extension (issue5601)...
extensions: register functions always at loading extension (issue5601) Before this patch, functions defined in extensions are registered via extra loaders only in _dispatch(). Therefore, loading extensions in other code paths like below omits registration of functions. - WSGI service - operation across repositories (e.g. subrepo) - test-duplicateoptions.py, using extensions.loadall() directly To register functions always at loading new extension, this patch moves implementation for extra loading from dispatch._dispatch() to extensions.loadall(). AFAIK, only commands module causes cyclic dependency between extensions module, but this patch imports all related modules just before extra loading in loadall(), in order to centralize them. This patch makes extensions.py depend on many other modules, even though extensions.py itself doesn't. It should be avoided if possible, but I don't have any better idea. Some other places like below aren't reasonable for extra loading, IMHO. - specific function in newly added module: existing callers of extensions.loadall() should invoke it, too - hg.repository() or so: no-repo commands aren't covered by this. BTW, this patch removes _loaded.add(name) on relocation, because dispatch._loaded is used only for extraloaders (for similar reason, "exts" variable is removed, too).

File last commit:

r32940:75be1499 default
r33052:45b0e9d0 default
Show More
test-debugcommands.t
155 lines | 5.0 KiB | text/troff | Tads3Lexer
/ tests / test-debugcommands.t
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 $ cat << EOF >> $HGRCPATH
> [format]
> usegeneraldelta=yes
> EOF
Patrick Mezard
debugrevlog: handle numrevs == numfull case (issue3537)...
r17188 $ hg init debugrevlog
$ cd debugrevlog
$ echo a > a
$ hg ci -Am adda
adding a
$ hg debugrevlog -m
format : 1
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 flags : inline, generaldelta
Patrick Mezard
debugrevlog: handle numrevs == numfull case (issue3537)...
r17188
revisions : 1
merges : 0 ( 0.00%)
normal : 1 (100.00%)
revisions : 1
full : 1 (100.00%)
deltas : 0 ( 0.00%)
revision size : 44
full : 44 (100.00%)
deltas : 0 ( 0.00%)
Gregory Szorc
commands: print chunk type in debugrevlog...
r30452 chunks : 1
0x75 (u) : 1 (100.00%)
chunks size : 44
0x75 (u) : 44 (100.00%)
Patrick Mezard
debugrevlog: handle numrevs == numfull case (issue3537)...
r17188 avg chain length : 0
Gregory Szorc
commands.debugrevlog: report max chain length...
r24503 max chain length : 0
Patrick Mezard
debugrevlog: handle numrevs == numfull case (issue3537)...
r17188 compression ratio : 0
uncompressed data size (min/max/avg) : 43 / 43 / 43
full revision size (min/max/avg) : 44 / 44 / 44
delta size (min/max/avg) : 0 / 0 / 0
Mads Kiilerich
util: introduce util.debugstacktrace for showing a stack trace without crashing...
r20244
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547 Test debugindex, with and without the --debug flag
$ hg debugindex a
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 rev offset length ..... linkrev nodeid p1 p2 (re)
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547 0 0 3 .... 0 b789fdd96dc2 000000000000 000000000000 (re)
$ hg --debug debugindex a
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 rev offset length ..... linkrev nodeid p1 p2 (re)
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547 0 0 3 .... 0 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 (re)
$ hg debugindex -f 1 a
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 rev flag offset length size ..... link p1 p2 nodeid (re)
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547 0 0000 0 3 2 .... 0 -1 -1 b789fdd96dc2 (re)
$ hg --debug debugindex -f 1 a
Pierre-Yves David
test: enable generaldelta in 'test-debugcommand.t'...
r26918 rev flag offset length size ..... link p1 p2 nodeid (re)
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547 0 0000 0 3 2 .... 0 -1 -1 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 (re)
Gregory Szorc
commands: add debugdeltachain command...
r27263 debugdelta chain basic output
$ hg debugdeltachain -m
rev chain# chainlen prev delta size rawsize chainsize ratio lindist extradist extraratio
0 1 1 -1 base 44 43 44 1.02326 44 0 0.00000
$ hg debugdeltachain -m -T '{rev} {chainid} {chainlen}\n'
0 1 1
$ hg debugdeltachain -m -Tjson
[
{
"chainid": 1,
"chainlen": 1,
"chainratio": 1.02325581395,
"chainsize": 44,
"compsize": 44,
"deltatype": "base",
"extradist": 0,
"extraratio": 0.0,
"lindist": 44,
"prevrev": -1,
"rev": 0,
"uncompsize": 43
}
]
Kyle Lippincott
debugindex: respect --debug flag to show full nodeids
r23547
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 Test max chain len
$ cat >> $HGRCPATH << EOF
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 > [format]
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 > maxchainlen=4
> EOF
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "This test checks if maxchainlen config value is respected also it can serve as basic test for debugrevlog -d <file>.\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "b\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "c\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "d\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "e\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf "f\n" >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf 'g\n' >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
Augie Fackler
localrepo: rename revlog.maxchainlen to format.maxchainlen...
r23256 $ printf 'h\n' >> a
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ hg ci -m a
$ hg debugrevlog -d a
# rev p1rev p2rev start end deltastart base p1 p2 rawsize totalsize compression heads chainlen
0 -1 -1 0 ??? 0 0 0 0 ??? ???? ? 1 0 (glob)
1 0 -1 ??? ??? 0 0 0 0 ??? ???? ? 1 1 (glob)
2 1 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 2 (glob)
3 2 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 3 (glob)
4 3 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 4 (glob)
5 4 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 0 (glob)
6 5 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 1 (glob)
7 6 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 2 (glob)
8 7 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 3 (glob)
Pierre-Yves David
caches: introduce a 'debugupdatecaches' command...
r32265
Yuya Nishihara
revlog: map rev(wdirid) to WdirUnsupported exception...
r32657 Test WdirUnsupported exception
$ hg debugdata -c ffffffffffffffffffffffffffffffffffffffff
abort: working directory revision cannot be specified
[255]
Pierre-Yves David
caches: introduce a 'debugupdatecaches' command...
r32265 Test cache warming command
$ rm -rf .hg/cache/
$ hg debugupdatecaches --debug
Pierre-Yves David
caches: move the 'updating the branch cache' message in 'updatecaches'...
r32267 updating the branch cache
Pierre-Yves David
caches: introduce a 'debugupdatecaches' command...
r32265 $ ls -r .hg/cache/*
.hg/cache/rbc-revs-v1
.hg/cache/rbc-names-v1
.hg/cache/branch2-served
Mateusz Kwapich
revlog: add config variable for limiting delta-chain length...
r23255 $ cd ..
Mads Kiilerich
util: introduce util.debugstacktrace for showing a stack trace without crashing...
r20244
Test internal debugstacktrace command
$ cat > debugstacktrace.py << EOF
> from mercurial.util import debugstacktrace, dst, sys
> def f():
Mads Kiilerich
tests: rework util.debugstacktrace tests...
r31313 > debugstacktrace(f=sys.stdout)
> g()
Mads Kiilerich
util: introduce util.debugstacktrace for showing a stack trace without crashing...
r20244 > def g():
Mads Kiilerich
tests: rework util.debugstacktrace tests...
r31313 > dst('hello from g\\n', skip=1)
> h()
> def h():
Mads Kiilerich
util: add debugstacktrace depth limit...
r31315 > dst('hi ...\\nfrom h hidden in g', 1, depth=2)
Mads Kiilerich
tests: rework util.debugstacktrace tests...
r31313 > f()
Mads Kiilerich
util: introduce util.debugstacktrace for showing a stack trace without crashing...
r20244 > EOF
Augie Fackler
cleanup: use $PYTHON to run python in many more tests...
r32940 $ $PYTHON debugstacktrace.py
Mads Kiilerich
util: introduce util.debugstacktrace for showing a stack trace without crashing...
r20244 stacktrace at:
Mads Kiilerich
tests: rework util.debugstacktrace tests...
r31313 debugstacktrace.py:10 in * (glob)
debugstacktrace.py:3 in f
Mads Kiilerich
util: strip trailing newline from debugstacktrace message...
r31314 hello from g at:
Mads Kiilerich
tests: rework util.debugstacktrace tests...
r31313 debugstacktrace.py:10 in * (glob)
debugstacktrace.py:4 in f
hi ...
from h hidden in g at:
Mads Kiilerich
util: add debugstacktrace depth limit...
r31315 debugstacktrace.py:4 in f
debugstacktrace.py:7 in g