summaryrefslogtreecommitdiff
path: root/coverage/inorout.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2021-05-01 17:53:27 -0400
committerNed Batchelder <ned@nedbatchelder.com>2021-05-01 17:53:27 -0400
commitbfd2b7585e64f4766e4eec315f94d187e2d4f976 (patch)
tree67e94be7cad9f3a147d96f2e8066ed6864135f32 /coverage/inorout.py
parent3d43c74cd2dd8c66c29572bc04a4b0de3e206364 (diff)
downloadpython-coveragepy-git-bfd2b7585e64f4766e4eec315f94d187e2d4f976.tar.gz
refactor: move the remaining backward.py code, no more backward.py
Diffstat (limited to 'coverage/inorout.py')
-rw-r--r--coverage/inorout.py40
1 files changed, 9 insertions, 31 deletions
diff --git a/coverage/inorout.py b/coverage/inorout.py
index 554d34c4..f4d99772 100644
--- a/coverage/inorout.py
+++ b/coverage/inorout.py
@@ -3,6 +3,7 @@
"""Determining whether files are being measured/reported or not."""
+import importlib.util
import inspect
import itertools
import os
@@ -13,7 +14,6 @@ import sysconfig
import traceback
from coverage import env
-from coverage.backward import importlib_util_find_spec
from coverage.disposition import FileDisposition, disposition_init
from coverage.files import TreeMatcher, FnmatchMatcher, ModuleMatcher
from coverage.files import prep_patterns, find_python_files, canonical_filename
@@ -109,37 +109,15 @@ def module_has_file(mod):
def file_for_module(modulename):
"""Find the file for `modulename`, or return None."""
- if importlib_util_find_spec:
- filename = None
- try:
- spec = importlib_util_find_spec(modulename)
- except ImportError:
- pass
- else:
- if spec is not None:
- filename = spec.origin
- return filename
+ filename = None
+ try:
+ spec = importlib.util.find_spec(modulename)
+ except ImportError:
+ pass
else:
- import imp
- openfile = None
- glo, loc = globals(), locals()
- try:
- # Search for the module - inside its parent package, if any - using
- # standard import mechanics.
- if '.' in modulename:
- packagename, name = modulename.rsplit('.', 1)
- package = __import__(packagename, glo, loc, ['__path__'])
- searchpath = package.__path__
- else:
- packagename, name = None, modulename
- searchpath = None # "top-level search" in imp.find_module()
- openfile, pathname, _ = imp.find_module(name, searchpath)
- return pathname
- except ImportError:
- return None
- finally:
- if openfile:
- openfile.close()
+ if spec is not None:
+ filename = spec.origin
+ return filename
def add_stdlib_paths(paths):