summaryrefslogtreecommitdiff
path: root/coverage/execfile.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2021-05-11 19:32:32 -0400
committerNed Batchelder <ned@nedbatchelder.com>2021-05-11 19:32:32 -0400
commit01cbb8751f98e5a7de79699444cbc03647691616 (patch)
treee9166b5deede0ac25b3e3c1c6705a3510f0c40db /coverage/execfile.py
parent06cb51b39620e2140f915393f0f41b281594e05b (diff)
downloadpython-coveragepy-git-01cbb8751f98e5a7de79699444cbc03647691616.tar.gz
fix: Python 3.8.10 changed how __file__ is reported when running directories
Diffstat (limited to 'coverage/execfile.py')
-rw-r--r--coverage/execfile.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/coverage/execfile.py b/coverage/execfile.py
index 2ca9f55f..2a3776bf 100644
--- a/coverage/execfile.py
+++ b/coverage/execfile.py
@@ -136,6 +136,11 @@ class PyRunner:
# directory.
for ext in [".py", ".pyc", ".pyo"]:
try_filename = os.path.join(self.arg0, "__main__" + ext)
+ # 3.8.10 changed how files are reported when running a
+ # directory. But I'm not sure how far this change is going to
+ # spread, so I'll just hard-code it here for now.
+ if env.PYVERSION >= (3, 8, 10):
+ try_filename = os.path.abspath(try_filename)
if os.path.exists(try_filename):
self.arg0 = try_filename
break