##// END OF EJS Templates
logcmdutil: rewrite jsonchangeset printer to be backed by jsonformatter...
logcmdutil: rewrite jsonchangeset printer to be backed by jsonformatter This is a bit slower than the original implementation, but I don't think that would actually matter. It's still faster than full templating. $ hg log -Tjson -r0:5000 --time > /dev/null (orig) time: real 1.550 secs (user 1.500+0.000 sys 0.040+0.000) (new) time: real 1.810 secs (user 1.740+0.000 sys 0.070+0.000) cf. $ hg log -Tdefault -r0:5000 --time > /dev/null time: real 4.980 secs (user 4.850+0.000 sys 0.130+0.000) $ hg log -r0:5000 --time > /dev/null time: real 2.340 secs (user 2.220+0.000 sys 0.100+0.000) $ hg log -r0:5000 -q --time > /dev/null time: real 0.750 secs (user 0.670+0.000 sys 0.070+0.000) The test output changes because keys are sorted alphabetically.

File last commit:

r36305:57c671cf default
r37790:814151cd default
Show More
test-issue4074.t
29 lines | 508 B | text/troff | Tads3Lexer
Matt Mackall
bdiff: balance recursion to avoid quadratic behavior (issue4704)...
r29014 #require no-pure
A script to generate nasty diff worst-case scenarios:
$ cat > s.py <<EOF
> import random
Pulkit Goyal
py3: use range instead of xrange in tests/test-issue4074.t...
r36305 > for x in range(100000):
Matt Mackall
bdiff: balance recursion to avoid quadratic behavior (issue4704)...
r29014 > print
> if random.randint(0, 100) >= 50:
> x += 1
Augie Fackler
tests: clean up many print statements to be print functions instead...
r33687 > print(hex(x))
Matt Mackall
bdiff: balance recursion to avoid quadratic behavior (issue4704)...
r29014 > EOF
$ hg init a
$ cd a
Check in a big file:
Augie Fackler
cleanup: use $PYTHON to run python in many more tests...
r32940 $ $PYTHON ../s.py > a
Matt Mackall
bdiff: balance recursion to avoid quadratic behavior (issue4704)...
r29014 $ hg ci -qAm0
Modify it:
Augie Fackler
cleanup: use $PYTHON to run python in many more tests...
r32940 $ $PYTHON ../s.py > a
Matt Mackall
bdiff: balance recursion to avoid quadratic behavior (issue4704)...
r29014
Time a check-in, should never take more than 10 seconds user time:
$ hg ci --time -m1
time: real .* secs .user [0-9][.].* sys .* (re)