Issue #19946: Raise ImportError when the main module cannot be found

by multiprocessing.spawn (before it was raising an AttributeError).
This commit is contained in:
Brett Cannon 2013-12-13 11:43:10 -05:00
parent 774b2e0af2
commit ca7ab7c7f1
2 changed files with 5 additions and 0 deletions

View File

@ -248,6 +248,8 @@ def import_main_path(main_path):
main_module = types.ModuleType(main_name)
# XXX Use a target of main_module?
spec = importlib.find_spec(main_name, path=dirs)
if spec is None:
raise ImportError(name=main_name)
methods = importlib._bootstrap._SpecMethods(spec)
methods.init_module_attrs(main_module)
main_module.__name__ = '__mp_main__'

View File

@ -44,6 +44,9 @@ Core and Builtins
Library
-------
- Issue #19946: multiprocessing.spawn now raises ImportError when the module to
be used as the main module cannot be imported.
- Issue #17919: select.poll.poll() again works with poll.POLLNVAL on AIX.
- Issue #19063: if a Charset's body_encoding was set to None, the email