hgdemandimport/__init__.py
changeset 37843 670eb4fa1b86
parent 33860 3cfc9070245f
child 43076 2372284d9457
equal deleted inserted replaced
37840:853001c84114 37843:670eb4fa1b86
    19 if sys.version_info[0] >= 3:
    19 if sys.version_info[0] >= 3:
    20     from . import demandimportpy3 as demandimport
    20     from . import demandimportpy3 as demandimport
    21 else:
    21 else:
    22     from . import demandimportpy2 as demandimport
    22     from . import demandimportpy2 as demandimport
    23 
    23 
    24 # Extensions can add to this list if necessary.
    24 # Full module names which can't be lazy imported.
    25 ignore = [
    25 # Extensions can add to this set.
       
    26 IGNORES = {
    26     '__future__',
    27     '__future__',
    27     '_hashlib',
    28     '_hashlib',
    28     # ImportError during pkg_resources/__init__.py:fixup_namespace_package
    29     # ImportError during pkg_resources/__init__.py:fixup_namespace_package
    29     '_imp',
    30     '_imp',
    30     '_xmlplus',
    31     '_xmlplus',
    53     # setuptools 8 expects this module to explode early when not on windows
    54     # setuptools 8 expects this module to explode early when not on windows
    54     'distutils.msvc9compiler',
    55     'distutils.msvc9compiler',
    55     '__builtin__',
    56     '__builtin__',
    56     'builtins',
    57     'builtins',
    57     'urwid.command_map', # for pudb
    58     'urwid.command_map', # for pudb
    58     ]
    59 }
    59 
    60 
    60 _pypy = '__pypy__' in sys.builtin_module_names
    61 _pypy = '__pypy__' in sys.builtin_module_names
    61 
    62 
    62 if _pypy:
    63 if _pypy:
    63     ignore.extend([
    64     # _ctypes.pointer is shadowed by "from ... import pointer" (PyPy 5)
    64         # _ctypes.pointer is shadowed by "from ... import pointer" (PyPy 5)
    65     IGNORES.add('_ctypes.pointer')
    65         '_ctypes.pointer',
       
    66     ])
       
    67 
    66 
    68 demandimport.init(ignore)
    67 demandimport.init(IGNORES)
    69 
    68 
    70 # Re-export.
    69 # Re-export.
    71 isenabled = demandimport.isenabled
    70 isenabled = demandimport.isenabled
    72 disable = demandimport.disable
    71 disable = demandimport.disable
    73 deactivated = demandimport.deactivated
    72 deactivated = demandimport.deactivated