mirror of https://github.com/python/cpython.git
Namespace packages _bootstrap.ModuleSpec.loader attributes are no longer None (#10376)
Namespace packages _bootstrap.ModuleSpec.loader attributes are no longer `None` _after_ calling the importlib._bootstrap._init_module_attrs function. See: * https://stackoverflow.com/questions/52869541/namespace-package-spec-loader-and-loader-attributes-not-set-to-none * https://bugs.python.org/issue35181
This commit is contained in:
parent
dde3eebdaa
commit
ee88af3f4f
|
@ -345,12 +345,11 @@ of what happens during the loading portion of import::
|
|||
_init_module_attrs(spec, module)
|
||||
|
||||
if spec.loader is None:
|
||||
if spec.submodule_search_locations is not None:
|
||||
# namespace package
|
||||
sys.modules[spec.name] = module
|
||||
else:
|
||||
# unsupported
|
||||
raise ImportError
|
||||
# unsupported
|
||||
raise ImportError
|
||||
if spec.origin is None and spec.submodule_search_locations is not None:
|
||||
# namespace package
|
||||
sys.modules[spec.name] = module
|
||||
elif not hasattr(spec.loader, 'exec_module'):
|
||||
module = spec.loader.load_module(spec.name)
|
||||
# Set __loader__ and __package__ if missing.
|
||||
|
|
Loading…
Reference in New Issue