# HG changeset patch # User Yuya Nishihara # Date 1500192992 -32400 # Node ID ded3ebae8779382d3b397bc2d9b4999827cac719 # Parent c384ac3ea147adbd590553efb65b453eecfa05ed demandimport: drop hack for old Pythons which had no level argument _import() was added by 868282fa29d8, but it is identical to _origimport() now. diff -r c384ac3ea147 -r ded3ebae8779 hgdemandimport/demandimportpy2.py --- a/hgdemandimport/demandimportpy2.py Sun Jul 16 17:47:10 2017 +0900 +++ b/hgdemandimport/demandimportpy2.py Sun Jul 16 17:16:32 2017 +0900 @@ -46,7 +46,6 @@ level = -1 if sys.version_info[0] >= 3: level = 0 -_import = _origimport def _hgextimport(importfunc, name, globals, *args, **kwargs): try: @@ -99,7 +98,7 @@ def _load(self): if not self._module: head, globals, locals, after, level, modrefs = self._data - mod = _hgextimport(_import, head, globals, locals, None, level) + mod = _hgextimport(_origimport, head, globals, locals, None, level) if mod is self: # In this case, _hgextimport() above should imply # _demandimport(). Otherwise, _hgextimport() never @@ -176,14 +175,14 @@ def _demandimport(name, globals=None, locals=None, fromlist=None, level=level): if locals is None or name in ignore or fromlist == ('*',): # these cases we can't really delay - return _hgextimport(_import, name, globals, locals, fromlist, level) + return _hgextimport(_origimport, name, globals, locals, fromlist, level) elif not fromlist: # import a [as b] if '.' in name: # a.b base, rest = name.split('.', 1) # email.__init__ loading email.mime if globals and globals.get('__name__', None) == base: - return _import(name, globals, locals, fromlist, level) + return _origimport(name, globals, locals, fromlist, level) # if a is already demand-loaded, add b to its submodule list if base in locals: if isinstance(locals[base], _demandmod): diff -r c384ac3ea147 -r ded3ebae8779 tests/test-extension.t --- a/tests/test-extension.t Sun Jul 16 17:47:10 2017 +0900 +++ b/tests/test-extension.t Sun Jul 16 17:16:32 2017 +0900 @@ -1672,7 +1672,7 @@ File "*/hgdemandimport/demandimportpy2.py", line *, in __getattr__ (glob) self._load() File "*/hgdemandimport/demandimportpy2.py", line *, in _load (glob) - mod = _hgextimport(_import, head, globals, locals, None, level) + mod = _hgextimport(_origimport, head, globals, locals, None, level) File "*/hgdemandimport/demandimportpy2.py", line *, in _hgextimport (glob) return importfunc(name, globals, *args, **kwargs) ImportError: No module named bdiff