summaryrefslogtreecommitdiff
path: root/coverage/misc.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2023-01-03 15:21:15 -0500
committerNed Batchelder <ned@nedbatchelder.com>2023-01-03 15:29:00 -0500
commit4f3ccf213d813bb57775b2643b8bae5e08cbbbd0 (patch)
treefb113cb24362ee3fd67825867874ce3aa713b55e /coverage/misc.py
parent98301ed240a141592573c2ed239e006d42a26161 (diff)
downloadpython-coveragepy-git-4f3ccf213d813bb57775b2643b8bae5e08cbbbd0.tar.gz
refactor: a better way to have maybe-importable third-party modules
Diffstat (limited to 'coverage/misc.py')
-rw-r--r--coverage/misc.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/coverage/misc.py b/coverage/misc.py
index 1e4b4e74..bd1767ca 100644
--- a/coverage/misc.py
+++ b/coverage/misc.py
@@ -83,14 +83,16 @@ def import_third_party(modname):
modname (str): the name of the module to import.
Returns:
- The imported module, or None if the module couldn't be imported.
+ The imported module, and a boolean indicating if the module could be imported.
+
+ If the boolean is False, the module returned is not the one you want: don't use it.
"""
with sys_modules_saved():
try:
- return importlib.import_module(modname)
+ return importlib.import_module(modname), True
except ImportError:
- return None
+ return sys, False
def nice_pair(pair):