Mercurial > hg
view tests/test-lrucachedict.py.out @ 37844:8fb9985382be
pycompat: export queue module instead of symbols in module (API)
Previously, pycompat and util re-exported individual symbols from the
queue module. This had the side-effect of forcing the loading of the
queue module whenever pycompat/util was imported.
These symbols aren't used very often. So importing the module to
get a handle on the symbols is wasteful.
This commit changes pycompat so it no longer exports the individual
symbols in the queue module. Instead, we make the imported module
a "public" symbol. We drop the individual symbol aliases from the
util module. All consumers are updated to use pycompat.queue.* instead.
This change makes 300 invocations of `hg log -r. -T '{rev}\n'` a little
faster:
before: 18.44s
after: 17.87s
Differential Revision: https://phab.mercurial-scm.org/D3441
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sat, 05 May 2018 18:35:16 -0700 |
parents | 6cd3044985c2 |
children |
line wrap: on
line source
'a' in d: True d['a']: va 'b' in d: True d['b']: vb 'c' in d: True d['c']: vc 'd' in d: True d['d']: vd 'a' in d: False 'b' in d: True d['b']: vb 'c' in d: True d['c']: vc 'd' in d: True d['d']: vd 'e' in d: True d['e']: ve 'b' in d: True d['b']: vb2 'c' in d: True d['c']: vc2 'd' in d: True d['d']: vd 'e' in d: False 'f' in d: True d['f']: vf 'b' in d: False 'c' in d: False 'd' in d: False 'e' in d: False 'f' in d: False 'a' in d: True d['a']: 1 'b' in d: True d['b']: 2 All of these should be present: 'a' in dc: True dc['a']: va3 'b' in dc: True dc['b']: vb3 'c' in dc: True dc['c']: vc3 'd' in dc: True dc['d']: vd3 All of these except 'a' should be present: 'a' in dc: False 'b' in dc: True dc['b']: vb3 'c' in dc: True dc['c']: vc3 'd' in dc: True dc['d']: vd3 'e' in dc: True dc['e']: ve3 These should be in reverse alphabetical order and read 'v?3': d['d']: vd3 d['c']: vc3 d['b']: vb3 d['a']: va3