coveragepy
coveragepy copied to clipboard
PyPy 3.9 nightlies are failing some tests
https://github.com/nedbat/coveragepy/runs/7574680068?check_suite_focus=true
Output from the failing test
_______________ EnvironmentTest.test_coverage_run_is_like_python _______________
[gw0] linux -- Python 3.9.12 /home/runner/work/coveragepy/coveragepy/.tox/pypy3/bin/python
self = <tests.test_process.EnvironmentTest object at 0x0000000004fc7da8>
def test_coverage_run_is_like_python(self):
with open(TRY_EXECFILE) as f:
self.make_file("run_me.py", f.read())
expected = self.run_command("python run_me.py")
actual = self.run_command("coverage run run_me.py")
> self.assert_tryexecfile_output(expected, actual)
/home/runner/work/coveragepy/coveragepy/tests/test_process.py:683:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <tests.test_process.EnvironmentTest object at 0x0000000004fc7da8>
expected = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
actual = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
def assert_tryexecfile_output(self, expected, actual):
"""Assert that the output we got is a successful run of try_execfile.py.
`expected` and `actual` must be the same, modulo a few slight known
platform differences.
"""
# First, is this even credible try_execfile.py output?
assert '"DATA": "xyzzy"' in actual
if env.JYTHON: # pragma: only jython
# Argv0 is different for Jython, remove that from the comparison.
expected = re_lines_text(r'\s+"argv0":', expected, match=False)
actual = re_lines_text(r'\s+"argv0":', actual, match=False)
> assert actual == expected
E assert '{\n "DATA..."\n ]\n}\n' == '{\n "DATA..."\n ]\n}\n'
E Skipping 2391 identical leading characters in diff, use -v to show
E - file__": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339/run_me.py",
E + file__": "run_me.py",
E "__loader__ exists": true,
E "__loader__.fullname": "__main__",
E "__main__.DATA": "xyzzy",
E "__name__": "__main__",
E "__package__": null,
E "__spec__ exists": false,
E "argv0": "run_me.py",
E "argv1-n": [],
E "os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
E "path": [
E "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
E "/home/runner/work/coveragepy/coveragepy/tests/modules",
E "/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
E "/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
E "/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
E "/home/runner/work/coveragepy/coveragepy"
E ]
E }
/home/runner/work/coveragepy/coveragepy/tests/test_process.py:676: AssertionError
----------------------------- Captured stdout call -----------------------------
{
"DATA": "xyzzy",
"FN_VAL": "my_fn('fooey')",
"__builtins__.dir": [
"ArithmeticError AssertionError AttributeError BaseException BlockingIOError BrokenPipeError BufferError BytesWarning ChildProcessError ConnectionAbortedError ConnectionError ConnectionRefusedError ConnectionResetError",
"DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FileExistsError FileNotFoundError FloatingPointError FutureWarning",
"GeneratorExit IOError ImportError ImportWarning IndentationError IndexError InterruptedError IsADirectoryError",
"KeyError KeyboardInterrupt LookupError MemoryError ModuleNotFoundError NameError None NoneType NotADirectoryError NotImplemented NotImplementedError",
"OSError OverflowError PendingDeprecationWarning PermissionError ProcessLookupError RecursionError ReferenceError ResourceWarning RuntimeError RuntimeWarning",
"StopAsyncIteration StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TimeoutError True TypeError",
"UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning",
"ValueError Warning ZeroDivisionError __build_class__ __builtins__ __debug__ __doc__ __import__ __loader__ __name__ __package__ __spec__",
"abs all any ascii bin bool breakpoint bytearray bytes",
"callable chr classmethod compile complex copyright credits delattr dict dir divmod",
"enumerate eval exec exit filter float format frozenset getattr globals",
"hasattr hash help hex id input int isinstance issubclass iter",
"len license list locals map max memoryview min next object oct open ord",
"pow print property quit range repr reversed round",
"sequenceiterator set setattr slice sorted staticmethod str sum super tuple type vars zip"
],
"__builtins__.has_open": true,
"__doc__": "Test file for run_python_file.\n\nThis file is executed two ways::\n\n $ coverage run try_execfile.py\n\nand::\n\n $ python try_execfile.py\n\nThe output is compared to see that the program execution context is the same\nunder coverage and under Python.\n\nIt is not crucial that the execution be identical, there are some differences\nthat are OK. This program canonicalizes the output to gloss over those\ndifferences and get a clean diff.\n\n",
"__file__": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339/run_me.py",
"__loader__ exists": true,
"__loader__.fullname": "__main__",
"__main__.DATA": "xyzzy",
"__name__": "__main__",
"__package__": null,
"__spec__ exists": false,
"argv0": "run_me.py",
"argv1-n": [],
"os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
"path": [
"/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
"/home/runner/work/coveragepy/coveragepy/tests/modules",
"/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
"/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
"/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
"/home/runner/work/coveragepy/coveragepy"
]
}
{
"DATA": "xyzzy",
"FN_VAL": "my_fn('fooey')",
"__builtins__.dir": [
"ArithmeticError AssertionError AttributeError BaseException BlockingIOError BrokenPipeError BufferError BytesWarning ChildProcessError ConnectionAbortedError ConnectionError ConnectionRefusedError ConnectionResetError",
"DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FileExistsError FileNotFoundError FloatingPointError FutureWarning",
"GeneratorExit IOError ImportError ImportWarning IndentationError IndexError InterruptedError IsADirectoryError",
"KeyError KeyboardInterrupt LookupError MemoryError ModuleNotFoundError NameError None NoneType NotADirectoryError NotImplemented NotImplementedError",
"OSError OverflowError PendingDeprecationWarning PermissionError ProcessLookupError RecursionError ReferenceError ResourceWarning RuntimeError RuntimeWarning",
"StopAsyncIteration StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TimeoutError True TypeError",
"UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning",
"ValueError Warning ZeroDivisionError __build_class__ __builtins__ __debug__ __doc__ __import__ __loader__ __name__ __package__ __spec__",
"abs all any ascii bin bool breakpoint bytearray bytes",
"callable chr classmethod compile complex copyright credits delattr dict dir divmod",
"enumerate eval exec exit filter float format frozenset getattr globals",
"hasattr hash help hex id input int isinstance issubclass iter",
"len license list locals map max memoryview min next object oct open ord",
"pow print property quit range repr reversed round",
"sequenceiterator set setattr slice sorted staticmethod str sum super tuple type vars zip"
],
"__builtins__.has_open": true,
"__doc__": "Test file for run_python_file.\n\nThis file is executed two ways::\n\n $ coverage run try_execfile.py\n\nand::\n\n $ python try_execfile.py\n\nThe output is compared to see that the program execution context is the same\nunder coverage and under Python.\n\nIt is not crucial that the execution be identical, there are some differences\nthat are OK. This program canonicalizes the output to gloss over those\ndifferences and get a clean diff.\n\n",
"__file__": "run_me.py",
"__loader__ exists": true,
"__loader__.fullname": "__main__",
"__main__.DATA": "xyzzy",
"__name__": "__main__",
"__package__": null,
"__spec__ exists": false,
"argv0": "run_me.py",
"argv1-n": [],
"os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
"path": [
"/tmp/pytest-of-runner/pytest-0/popen-gw0/t339",
"/home/runner/work/coveragepy/coveragepy/tests/modules",
"/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
"/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
"/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
"/home/runner/work/coveragepy/coveragepy"
]
}
__________ EnvironmentTest.test_coverage_run_far_away_is_like_python ___________
[gw0] linux -- Python 3.9.12 /home/runner/work/coveragepy/coveragepy/.tox/pypy3/bin/python
self = <tests.test_process.EnvironmentTest object at 0x0000000004fc7be8>
def test_coverage_run_far_away_is_like_python(self):
with open(TRY_EXECFILE) as f:
self.make_file("sub/overthere/prog.py", f.read())
expected = self.run_command("python sub/overthere/prog.py")
actual = self.run_command("coverage run sub/overthere/prog.py")
> self.assert_tryexecfile_output(expected, actual)
/home/runner/work/coveragepy/coveragepy/tests/test_process.py:690:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <tests.test_process.EnvironmentTest object at 0x0000000004fc7be8>
expected = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
actual = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
def assert_tryexecfile_output(self, expected, actual):
"""Assert that the output we got is a successful run of try_execfile.py.
`expected` and `actual` must be the same, modulo a few slight known
platform differences.
"""
# First, is this even credible try_execfile.py output?
assert '"DATA": "xyzzy"' in actual
if env.JYTHON: # pragma: only jython
# Argv0 is different for Jython, remove that from the comparison.
expected = re_lines_text(r'\s+"argv0":', expected, match=False)
actual = re_lines_text(r'\s+"argv0":', actual, match=False)
> assert actual == expected
E assert '{\n "DATA..."\n ]\n}\n' == '{\n "DATA..."\n ]\n}\n'
E Skipping 2391 identical leading characters in diff, use -v to show
E - file__": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340/sub/overthere/prog.py",
E + file__": "sub/overthere/prog.py",
E "__loader__ exists": true,
E "__loader__.fullname": "__main__",
E "__main__.DATA": "xyzzy",
E "__name__": "__main__",
E "__package__": null,
E "__spec__ exists": false,
E "argv0": "sub/overthere/prog.py",
E "argv1-n": [],
E "os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340",
E "path": [
E "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340/sub/overthere",
E "/home/runner/work/coveragepy/coveragepy/tests/modules",
E "/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
E "/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
E "/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
E "/home/runner/work/coveragepy/coveragepy"
E ]
E }
/home/runner/work/coveragepy/coveragepy/tests/test_process.py:676: AssertionError
----------------------------- Captured stdout call -----------------------------
{
"DATA": "xyzzy",
"FN_VAL": "my_fn('fooey')",
"__builtins__.dir": [
"ArithmeticError AssertionError AttributeError BaseException BlockingIOError BrokenPipeError BufferError BytesWarning ChildProcessError ConnectionAbortedError ConnectionError ConnectionRefusedError ConnectionResetError",
"DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FileExistsError FileNotFoundError FloatingPointError FutureWarning",
"GeneratorExit IOError ImportError ImportWarning IndentationError IndexError InterruptedError IsADirectoryError",
"KeyError KeyboardInterrupt LookupError MemoryError ModuleNotFoundError NameError None NoneType NotADirectoryError NotImplemented NotImplementedError",
"OSError OverflowError PendingDeprecationWarning PermissionError ProcessLookupError RecursionError ReferenceError ResourceWarning RuntimeError RuntimeWarning",
"StopAsyncIteration StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TimeoutError True TypeError",
"UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning",
"ValueError Warning ZeroDivisionError __build_class__ __builtins__ __debug__ __doc__ __import__ __loader__ __name__ __package__ __spec__",
"abs all any ascii bin bool breakpoint bytearray bytes",
"callable chr classmethod compile complex copyright credits delattr dict dir divmod",
"enumerate eval exec exit filter float format frozenset getattr globals",
"hasattr hash help hex id input int isinstance issubclass iter",
"len license list locals map max memoryview min next object oct open ord",
"pow print property quit range repr reversed round",
"sequenceiterator set setattr slice sorted staticmethod str sum super tuple type vars zip"
],
"__builtins__.has_open": true,
"__doc__": "Test file for run_python_file.\n\nThis file is executed two ways::\n\n $ coverage run try_execfile.py\n\nand::\n\n $ python try_execfile.py\n\nThe output is compared to see that the program execution context is the same\nunder coverage and under Python.\n\nIt is not crucial that the execution be identical, there are some differences\nthat are OK. This program canonicalizes the output to gloss over those\ndifferences and get a clean diff.\n\n",
"__file__": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340/sub/overthere/prog.py",
"__loader__ exists": true,
"__loader__.fullname": "__main__",
"__main__.DATA": "xyzzy",
"__name__": "__main__",
"__package__": null,
"__spec__ exists": false,
"argv0": "sub/overthere/prog.py",
"argv1-n": [],
"os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340",
"path": [
"/tmp/pytest-of-runner/pytest-0/popen-gw0/t340/sub/overthere",
"/home/runner/work/coveragepy/coveragepy/tests/modules",
"/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
"/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
"/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
"/home/runner/work/coveragepy/coveragepy"
]
}
{
"DATA": "xyzzy",
"FN_VAL": "my_fn('fooey')",
"__builtins__.dir": [
"ArithmeticError AssertionError AttributeError BaseException BlockingIOError BrokenPipeError BufferError BytesWarning ChildProcessError ConnectionAbortedError ConnectionError ConnectionRefusedError ConnectionResetError",
"DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FileExistsError FileNotFoundError FloatingPointError FutureWarning",
"GeneratorExit IOError ImportError ImportWarning IndentationError IndexError InterruptedError IsADirectoryError",
"KeyError KeyboardInterrupt LookupError MemoryError ModuleNotFoundError NameError None NoneType NotADirectoryError NotImplemented NotImplementedError",
"OSError OverflowError PendingDeprecationWarning PermissionError ProcessLookupError RecursionError ReferenceError ResourceWarning RuntimeError RuntimeWarning",
"StopAsyncIteration StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TimeoutError True TypeError",
"UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning",
"ValueError Warning ZeroDivisionError __build_class__ __builtins__ __debug__ __doc__ __import__ __loader__ __name__ __package__ __spec__",
"abs all any ascii bin bool breakpoint bytearray bytes",
"callable chr classmethod compile complex copyright credits delattr dict dir divmod",
"enumerate eval exec exit filter float format frozenset getattr globals",
"hasattr hash help hex id input int isinstance issubclass iter",
"len license list locals map max memoryview min next object oct open ord",
"pow print property quit range repr reversed round",
"sequenceiterator set setattr slice sorted staticmethod str sum super tuple type vars zip"
],
"__builtins__.has_open": true,
"__doc__": "Test file for run_python_file.\n\nThis file is executed two ways::\n\n $ coverage run try_execfile.py\n\nand::\n\n $ python try_execfile.py\n\nThe output is compared to see that the program execution context is the same\nunder coverage and under Python.\n\nIt is not crucial that the execution be identical, there are some differences\nthat are OK. This program canonicalizes the output to gloss over those\ndifferences and get a clean diff.\n\n",
"__file__": "sub/overthere/prog.py",
"__loader__ exists": true,
"__loader__.fullname": "__main__",
"__main__.DATA": "xyzzy",
"__name__": "__main__",
"__package__": null,
"__spec__ exists": false,
"argv0": "sub/overthere/prog.py",
"argv1-n": [],
"os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t340",
"path": [
"/tmp/pytest-of-runner/pytest-0/popen-gw0/t340/sub/overthere",
"/home/runner/work/coveragepy/coveragepy/tests/modules",
"/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
"/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
"/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
"/home/runner/work/coveragepy/coveragepy"
]
}
_______________ EnvironmentTest.test_coverage_zip_is_like_python _______________
[gw0] linux -- Python 3.9.12 /home/runner/work/coveragepy/coveragepy/.tox/pypy3/bin/python
self = <tests.test_process.EnvironmentTest object at 0x0000000005450cd0>
def test_coverage_zip_is_like_python(self):
# Test running coverage from a zip file itself. Some environments
# (windows?) zip up the coverage main to be used as the coverage
# command.
with open(TRY_EXECFILE) as f:
self.make_file("run_me.py", f.read())
expected = self.run_command("python run_me.py")
cov_main = os.path.join(TESTS_DIR, "covmain.zip")
actual = self.run_command(f"python {cov_main} run run_me.py")
> self.assert_tryexecfile_output(expected, actual)
/home/runner/work/coveragepy/coveragepy/tests/test_process.py:814:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <tests.test_process.EnvironmentTest object at 0x0000000005450cd0>
expected = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
actual = '{\n "DATA": "xyzzy",\n "FN_VAL": "my_fn(\'fooey\')",\n "__builtins__.dir": [\n "ArithmeticError Asser...agepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",\n "/home/runner/work/coveragepy/coveragepy"\n ]\n}\n'
def assert_tryexecfile_output(self, expected, actual):
"""Assert that the output we got is a successful run of try_execfile.py.
`expected` and `actual` must be the same, modulo a few slight known
platform differences.
"""
# First, is this even credible try_execfile.py output?
assert '"DATA": "xyzzy"' in actual
if env.JYTHON: # pragma: only jython
# Argv0 is different for Jython, remove that from the comparison.
expected = re_lines_text(r'\s+"argv0":', expected, match=False)
actual = re_lines_text(r'\s+"argv0":', actual, match=False)
> assert actual == expected
E assert '{\n "DATA..."\n ]\n}\n' == '{\n "DATA..."\n ]\n}\n'
E Skipping 2391 identical leading characters in diff, use -v to show
E - file__": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t345/run_me.py",
E + file__": "run_me.py",
E "__loader__ exists": true,
E "__loader__.fullname": "__main__",
E "__main__.DATA": "xyzzy",
E "__name__": "__main__",
E "__package__": null,
E "__spec__ exists": false,
E "argv0": "run_me.py",
E "argv1-n": [],
E "os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t345",
E "path": [
E "/tmp/pytest-of-runner/pytest-0/popen-gw0/t345",
E "/home/runner/work/coveragepy/coveragepy/tests/modules",
E "/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
E "/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
E "/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
E "/home/runner/work/coveragepy/coveragepy"
E ]
E }
"DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FileExistsError FileNotFoundError FloatingPointError FutureWarning",
"GeneratorExit IOError ImportError ImportWarning IndentationError IndexError InterruptedError IsADirectoryError",
"KeyError KeyboardInterrupt LookupError MemoryError ModuleNotFoundError NameError None NoneType NotADirectoryError NotImplemented NotImplementedError",
"OSError OverflowError PendingDeprecationWarning PermissionError ProcessLookupError RecursionError ReferenceError ResourceWarning RuntimeError RuntimeWarning",
"StopAsyncIteration StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TimeoutError True TypeError",
"UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning",
"ValueError Warning ZeroDivisionError __build_class__ __builtins__ __debug__ __doc__ __import__ __loader__ __name__ __package__ __spec__",
"abs all any ascii bin bool breakpoint bytearray bytes",
"callable chr classmethod compile complex copyright credits delattr dict dir divmod",
"enumerate eval exec exit filter float format frozenset getattr globals",
"hasattr hash help hex id input int isinstance issubclass iter",
"len license list locals map max memoryview min next object oct open ord",
"pow print property quit range repr reversed round",
"sequenceiterator set setattr slice sorted staticmethod str sum super tuple type vars zip"
],
"__builtins__.has_open": true,
"__doc__": "Test file for run_python_file.\n\nThis file is executed two ways::\n\n $ coverage run try_execfile.py\n\nand::\n\n $ python try_execfile.py\n\nThe output is compared to see that the program execution context is the same\nunder coverage and under Python.\n\nIt is not crucial that the execution be identical, there are some differences\nthat are OK. This program canonicalizes the output to gloss over those\ndifferences and get a clean diff.\n\n",
"__file__": "run_me.py",
"__loader__ exists": true,
"__loader__.fullname": "__main__",
"__main__.DATA": "xyzzy",
"__name__": "__main__",
"__package__": null,
"__spec__ exists": false,
"argv0": "run_me.py",
"argv1-n": [],
"os.getcwd": "/tmp/pytest-of-runner/pytest-0/popen-gw0/t345",
"path": [
"/tmp/pytest-of-runner/pytest-0/popen-gw0/t345",
"/home/runner/work/coveragepy/coveragepy/tests/modules",
"/home/runner/work/coveragepy/coveragepy/tests/zipmods.zip",
"/home/runner/work/_temp/d215a1b9-f5e4-4eb6-821d-d7e97a227b19/pypy-c-jit-105940-15252b4b5bb2-linux64/lib/pypy3.9",
"/home/runner/work/coveragepy/coveragepy/.tox/pypy3/lib/pypy3.9/site-packages",
"/home/runner/work/coveragepy/coveragepy"
]
}
PyPy3.9 started reporting sys.argv[0] as an absolute file rather than relative. But it still shows relative files in tracebacks.
I've xfail'ed two tests so the nightly tests can succeed.
https://foss.heptapod.net/pypy/pypy/-/issues/3792 is the PyPy issue.
This was fixed a while back, and the tests un-xfailed in 37ac634031e0cf43c4fe63249f79c025609b53a2