Show More
@@ -24,8 +24,9 b' These imports will not be delayed:' | |||||
24 | b = __import__(a) |
|
24 | b = __import__(a) | |
25 | ''' |
|
25 | ''' | |
26 |
|
26 | |||
27 |
import |
|
27 | import os, sys | |
28 | from contextlib import contextmanager |
|
28 | from contextlib import contextmanager | |
|
29 | import __builtin__ as builtins | |||
29 |
|
30 | |||
30 | _origimport = __import__ |
|
31 | _origimport = __import__ | |
31 |
|
32 | |||
@@ -36,7 +37,7 b' try:' | |||||
36 | level = -1 |
|
37 | level = -1 | |
37 | if sys.version_info[0] >= 3: |
|
38 | if sys.version_info[0] >= 3: | |
38 | level = 0 |
|
39 | level = 0 | |
39 |
_origimport( |
|
40 | _origimport(builtins.__name__, {}, {}, None, level) | |
40 | except TypeError: # no level argument |
|
41 | except TypeError: # no level argument | |
41 | def _import(name, globals, locals, fromlist, level): |
|
42 | def _import(name, globals, locals, fromlist, level): | |
42 | "call _origimport with no level argument" |
|
43 | "call _origimport with no level argument" | |
@@ -171,16 +172,16 b' ignore = [' | |||||
171 | ] |
|
172 | ] | |
172 |
|
173 | |||
173 | def isenabled(): |
|
174 | def isenabled(): | |
174 |
return |
|
175 | return builtins.__import__ == _demandimport | |
175 |
|
176 | |||
176 | def enable(): |
|
177 | def enable(): | |
177 | "enable global demand-loading of modules" |
|
178 | "enable global demand-loading of modules" | |
178 | if os.environ.get('HGDEMANDIMPORT') != 'disable': |
|
179 | if os.environ.get('HGDEMANDIMPORT') != 'disable': | |
179 |
|
|
180 | builtins.__import__ = _demandimport | |
180 |
|
181 | |||
181 | def disable(): |
|
182 | def disable(): | |
182 | "disable global demand-loading of modules" |
|
183 | "disable global demand-loading of modules" | |
183 |
|
|
184 | builtins.__import__ = _origimport | |
184 |
|
185 | |||
185 | @contextmanager |
|
186 | @contextmanager | |
186 | def deactivated(): |
|
187 | def deactivated(): |
General Comments 0
You need to be logged in to leave comments.
Login now