comparison mercurial/policy.py @ 33925:2c37f9dabc32

encoding: add fast path of jsonescape() (issue5533) This isn't highly optimized as it copies characters one by one, but seems reasonably simple and not slow. (with mercurial repo) $ export HGRCPATH=/dev/null HGPLAIN= $ hg log --time --config experimental.stabilization=all -Tjson > /dev/null (original) time: real 6.830 secs (user 6.740+0.000 sys 0.080+0.000) time: real 6.690 secs (user 6.650+0.000 sys 0.040+0.000) time: real 6.700 secs (user 6.640+0.000 sys 0.060+0.000) (this patch) time: real 5.630 secs (user 5.550+0.000 sys 0.070+0.000) time: real 5.700 secs (user 5.650+0.000 sys 0.050+0.000) time: real 5.690 secs (user 5.640+0.000 sys 0.050+0.000)
author Yuya Nishihara <yuya@tcha.org>
date Sun, 23 Apr 2017 14:47:52 +0900
parents f5fc54e7e467
children f4433f2713d0
comparison
equal deleted inserted replaced
33924:b9101467d88b 33925:2c37f9dabc32
73 (r'cext', r'base85'): 1, 73 (r'cext', r'base85'): 1,
74 (r'cext', r'bdiff'): 1, 74 (r'cext', r'bdiff'): 1,
75 (r'cext', r'diffhelpers'): 1, 75 (r'cext', r'diffhelpers'): 1,
76 (r'cext', r'mpatch'): 1, 76 (r'cext', r'mpatch'): 1,
77 (r'cext', r'osutil'): 1, 77 (r'cext', r'osutil'): 1,
78 (r'cext', r'parsers'): 1, 78 (r'cext', r'parsers'): 2,
79 } 79 }
80 80
81 # map import request to other package or module 81 # map import request to other package or module
82 _modredirects = { 82 _modredirects = {
83 (r'cext', r'charencode'): (r'cext', r'parsers'), 83 (r'cext', r'charencode'): (r'cext', r'parsers'),