[Python-checkins] cpython (merge 3.5 -> default): Merge for issue #26186
brett.cannon
python-checkins at python.org
Sat Feb 20 21:37:11 EST 2016
https://hg.python.org/cpython/rev/86fc6cdd65de
changeset: 100280:86fc6cdd65de
parent: 100278:8f72bf88f471
parent: 100279:9f1e680896ef
user: Brett Cannon <brett at python.org>
date: Sat Feb 20 18:37:04 2016 -0800
summary:
Merge for issue #26186
files:
Lib/importlib/abc.py | 1 -
Lib/importlib/util.py | 5 -----
Lib/test/test_importlib/test_lazy.py | 1 +
Misc/NEWS | 3 +++
4 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/Lib/importlib/abc.py b/Lib/importlib/abc.py
--- a/Lib/importlib/abc.py
+++ b/Lib/importlib/abc.py
@@ -4,7 +4,6 @@
from . import machinery
try:
import _frozen_importlib
-# import _frozen_importlib_external
except ImportError as exc:
if exc.name != '_frozen_importlib':
raise
diff --git a/Lib/importlib/util.py b/Lib/importlib/util.py
--- a/Lib/importlib/util.py
+++ b/Lib/importlib/util.py
@@ -263,11 +263,6 @@
def __check_eager_loader(loader):
if not hasattr(loader, 'exec_module'):
raise TypeError('loader must define exec_module()')
- elif hasattr(loader.__class__, 'create_module'):
- if abc.Loader.create_module != loader.__class__.create_module:
- # Only care if create_module() is overridden in a subclass of
- # importlib.abc.Loader.
- raise TypeError('loader cannot define create_module()')
@classmethod
def factory(cls, loader):
diff --git a/Lib/test/test_importlib/test_lazy.py b/Lib/test/test_importlib/test_lazy.py
--- a/Lib/test/test_importlib/test_lazy.py
+++ b/Lib/test/test_importlib/test_lazy.py
@@ -54,6 +54,7 @@
def test_init(self):
with self.assertRaises(TypeError):
+ # Classes that dono't define exec_module() trigger TypeError.
util.LazyLoader(object)
def new_module(self, source_code=None):
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -185,6 +185,9 @@
Library
-------
+
+Issue #26186: Remove an invalid type check in importlib.util.LazyLoader.
+
- Issue #26367: importlib.__init__() raises ImportError like
builtins.__import__() when ``level`` is specified but without an accompanying
package specified.
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list