diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2020-03-07 17:29:52 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2020-03-07 17:29:52 -0500 |
commit | 9aa3c8e9cdfa0f83a4a7c37735d973dfca6244f7 (patch) | |
tree | 9fe353b64712755637c3cc461a275ae2b1ba7520 /coverage/backward.py | |
parent | 9bc95add4ecf4af1fd3193b1317b53268453dfe2 (diff) | |
download | python-coveragepy-git-9aa3c8e9cdfa0f83a4a7c37735d973dfca6244f7.tar.gz |
Simplify the importlib backwardness
Diffstat (limited to 'coverage/backward.py')
-rw-r--r-- | coverage/backward.py | 46 |
1 files changed, 3 insertions, 43 deletions
diff --git a/coverage/backward.py b/coverage/backward.py index 227de5fa..be1d00aa 100644 --- a/coverage/backward.py +++ b/coverage/backward.py @@ -19,34 +19,6 @@ else: path_types = (bytes, str, os.PathLike) -# imp was deprecated in Python 3.3 -try: - import importlib - import importlib.util - imp = None -except ImportError: - importlib = None - -# We only want to use importlib if it has everything we need. -try: - importlib_util_find_spec = importlib.util.find_spec -except Exception: - import imp - importlib_util_find_spec = None - -# What is the .pyc magic number for this version of Python? -try: - PYC_MAGIC_NUMBER = importlib.util.MAGIC_NUMBER -except AttributeError: - PYC_MAGIC_NUMBER = imp.get_magic() - - -def invalidate_import_caches(): - """Invalidate any import caches that may or may not exist.""" - if importlib and hasattr(importlib, "invalidate_caches"): - importlib.invalidate_caches() - - def import_local_file(modname, modfile=None): """Import a local file as a module. @@ -55,23 +27,11 @@ def import_local_file(modname, modfile=None): import if it isn't in the current directory. """ - try: - from importlib.machinery import SourceFileLoader - except ImportError: - SourceFileLoader = None + from importlib.machinery import SourceFileLoader if modfile is None: modfile = modname + '.py' - if SourceFileLoader: - # pylint: disable=no-value-for-parameter, deprecated-method - mod = SourceFileLoader(modname, modfile).load_module() - else: - for suff in imp.get_suffixes(): # pragma: part covered - if suff[0] == '.py': - break - - with open(modfile, 'r') as f: - # pylint: disable=undefined-loop-variable - mod = imp.load_module(modname, f, modfile, suff) + # pylint: disable=no-value-for-parameter, deprecated-method + mod = SourceFileLoader(modname, modfile).load_module() return mod |