##// END OF EJS Templates
demandimport: make it possible to disable by setting HGDEMANDIMPORT=disable...
Mads Kiilerich -
r21025:54af51c1 default
parent child Browse files
Show More
@@ -24,7 +24,7 b' These imports will not be delayed:'
24 24 b = __import__(a)
25 25 '''
26 26
27 import __builtin__
27 import __builtin__, os
28 28 _origimport = __import__
29 29
30 30 nothing = object()
@@ -167,7 +167,8 b' def isenabled():'
167 167
168 168 def enable():
169 169 "enable global demand-loading of modules"
170 __builtin__.__import__ = _demandimport
170 if os.environ.get('HGDEMANDIMPORT') != 'disable':
171 __builtin__.__import__ = _demandimport
171 172
172 173 def disable():
173 174 "disable global demand-loading of modules"
@@ -37,3 +37,9 b' print "fred =", f(fred)'
37 37 print "re =", f(re)
38 38 print "re.stderr =", f(re.stderr)
39 39 print "re =", f(re)
40
41 demandimport.disable()
42 os.environ['HGDEMANDIMPORT'] = 'disable'
43 demandimport.enable()
44 from mercurial import node
45 print "node =", f(node)
@@ -13,3 +13,4 b" fred = <proxied module 're'>"
13 13 re = <unloaded module 'sys'>
14 14 re.stderr = <open file '<whatever>', mode 'w' at 0x?>
15 15 re = <proxied module 'sys'>
16 node = <module 'mercurial.node' from '?'>
General Comments 0
You need to be logged in to leave comments. Login now