mirror of
https://github.com/python/cpython.git
synced 2025-11-25 04:34:37 +00:00
Issue #2377: Make importlib the implementation of __import__().
importlib._bootstrap is now frozen into Python/importlib.h and stored as _frozen_importlib in sys.modules. Py_Initialize() loads the frozen code along with sys and imp and then uses _frozen_importlib._install() to set builtins.__import__() w/ _frozen_importlib.__import__().
This commit is contained in:
parent
d2cbd90539
commit
fd0741555b
38 changed files with 3635 additions and 637 deletions
|
|
@ -81,7 +81,8 @@ def makepath(*paths):
|
|||
def abs_paths():
|
||||
"""Set all module __file__ and __cached__ attributes to an absolute path"""
|
||||
for m in set(sys.modules.values()):
|
||||
if hasattr(m, '__loader__'):
|
||||
if (getattr(getattr(m, '__loader__', None), '__module__', None) !=
|
||||
'_frozen_importlib'):
|
||||
continue # don't mess with a PEP 302-supplied __file__
|
||||
try:
|
||||
m.__file__ = os.path.abspath(m.__file__)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue