Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unable to read from stdin when using cpython 3.13 #13170

Closed
4 tasks done
15r10nk opened this issue Jan 29, 2025 · 12 comments · Fixed by #13176
Closed
4 tasks done

unable to read from stdin when using cpython 3.13 #13170

15r10nk opened this issue Jan 29, 2025 · 12 comments · Fixed by #13176

Comments

@15r10nk
Copy link
Contributor

15r10nk commented Jan 29, 2025

  • a detailed description of the bug or problem you are having
  • output of pip list from the virtual environment you are using
  • pytest and operating system versions
  • minimal example if possible

I ask the user in inline-snapshot for approval if he wants to fix the snapshot values, but this does not work for cpython 3.13.
I can only reproduce this problem with pytest.

The problem can be reproduced like this:

conftest.py

def pytest_terminal_summary(config):

    capture = config.pluginmanager.getplugin("capturemanager")

    capture.suspend_global_capture(in_=True)

    print("Enter 'hi'")
    value = input()
    print()
    print("value:",repr(value))
    assert value == "hi"


    capture.resume_global_capture()

test_example.py

def example():
    print("unimportant example")

Running pytest asks for "hi" but value will always be an empty string no matter what you type.

But it work when you use pytest -s and type "hi" or echo hi | pytest.

I can only reproduce this problem using cpython 3.13, it worked for older versions.

uv pip list:

Package   Version
--------- -------
iniconfig 2.0.0
packaging 24.2
pluggy    1.5.0
pytest    8.3.4

os: linux/debian

@The-Compiler
Copy link
Member

Are you using an uv-installed Python as well? If so, can you try with a vanilla upstream Python 3.13? I suspect this is the same underlying issue as #12888.

@The-Compiler The-Compiler added the status: needs information reporter needs to provide more information; can be closed after 2 or more weeks of inactivity label Jan 29, 2025
@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 29, 2025

You are right. I compiled v3.13.1 myself and the example worked.

@The-Compiler
Copy link
Member

I actually can't reproduce with this example even with an uv-managed Python 3.13.0 (uv venv -p 3.13 --python-preference=only-managed .venv).

From what I could gather this should only be happening if something does import readline, which shouldn't be the case here. Could you show the full output of running python -v -m pytest with this reproducer?

@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 29, 2025

I removed all existing venvs and created a new one

❯ ls
.rw-r--r-- 300 frank 29 Jan 06:34 conftest.py
.rw-r--r--  50 frank 28 Okt  2024 test_example.py

projects/bugs/pytest_capture via 🐍 v3.8.3 (.venv)
❯ uv venv -p 3.13 --python-preference=only-managed .venv
Using CPython 3.13.1
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate.fish

projects/bugs/pytest_capture via 🐍 v3.13.1 (.venv)
❯ source .venv/bin/activate.fish

projects/bugs/pytest_capture via 🐍 v3.13.1 (.venv)
❯ uv pip install pytest
Resolved 4 packages in 8ms
Installed 4 packages in 14ms
 + iniconfig==2.0.0
 + packaging==24.2
 + pluggy==1.5.0
 + pytest==8.3.4

projects/bugs/pytest_capture via 🐍 v3.13.1 (.venv)
❯ python -v -m pytest
import _frozen_importlib # frozen
import _imp # builtin
import '_thread' # <class '_frozen_importlib.BuiltinImporter'>
import '_warnings' # <class '_frozen_importlib.BuiltinImporter'>
import '_weakref' # <class '_frozen_importlib.BuiltinImporter'>
import '_io' # <class '_frozen_importlib.BuiltinImporter'>
import 'marshal' # <class '_frozen_importlib.BuiltinImporter'>
import 'posix' # <class '_frozen_importlib.BuiltinImporter'>
import '_frozen_importlib_external' # <class '_frozen_importlib.FrozenImporter'>
# installing zipimport hook
import 'time' # <class '_frozen_importlib.BuiltinImporter'>
import 'zipimport' # <class '_frozen_importlib.FrozenImporter'>
# installed zipimport hook
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/__init__.cpython-313.pyc'
import '_codecs' # <class '_frozen_importlib.BuiltinImporter'>
import 'codecs' # <class '_frozen_importlib.FrozenImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/aliases.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/aliases.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/aliases.cpython-313.pyc'
import 'encodings.aliases' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35bda0d0>
import 'encodings' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35b552b0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/utf_8.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/utf_8.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/utf_8.cpython-313.pyc'
import 'encodings.utf_8' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35bda210>
import '_signal' # <class '_frozen_importlib.BuiltinImporter'>
import '_abc' # <class '_frozen_importlib.BuiltinImporter'>
import 'abc' # <class '_frozen_importlib.FrozenImporter'>
import 'io' # <class '_frozen_importlib.FrozenImporter'>
import '_stat' # <class '_frozen_importlib.BuiltinImporter'>
import 'stat' # <class '_frozen_importlib.FrozenImporter'>
import '_collections_abc' # <class '_frozen_importlib.FrozenImporter'>
import 'errno' # <class '_frozen_importlib.BuiltinImporter'>
import 'genericpath' # <class '_frozen_importlib.FrozenImporter'>
import 'posixpath' # <class '_frozen_importlib.FrozenImporter'>
import 'os' # <class '_frozen_importlib.FrozenImporter'>
import '_sitebuiltins' # <class '_frozen_importlib.FrozenImporter'>
Processing global site-packages
Adding directory: '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages'
Processing .pth file: '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_virtualenv.pth'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/utf_8_sig.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/utf_8_sig.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/encodings/__pycache__/utf_8_sig.cpython-313.pyc'
import 'encodings.utf_8_sig' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35bca060>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_virtualenv.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/__pycache__/_virtualenv.cpython-313.pyc'
import '_virtualenv' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35bcb100>
Processing user site-packages
Processing global site-packages
Adding directory: '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages'
Processing .pth file: '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_virtualenv.pth'
import 'site' # <class '_frozen_importlib.FrozenImporter'>
Python 3.13.1 (main, Jan 14 2025, 22:47:38) [Clang 19.1.6 ] on linux
Type "help", "copyright", "credits" or "license" for more information.
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/__init__.cpython-313.pyc'
import 'importlib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35770dd0>
import 'importlib.machinery' # <class '_frozen_importlib.FrozenImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/_abc.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/_abc.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/_abc.cpython-313.pyc'
import 'importlib._abc' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35765590>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/types.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/types.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/types.cpython-313.pyc'
import 'types' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357656a0>
import 'importlib.util' # <class '_frozen_importlib.FrozenImporter'>
import 'runpy' # <class '_frozen_importlib.FrozenImporter'>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pytest/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pytest/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/__future__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__future__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/__future__.cpython-313.pyc'
import '__future__' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357507d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_version.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/_version.cpython-313.pyc'
import '_pytest._version' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357898d0>
import '_pytest' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357515e0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/code.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/__pycache__/code.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/ast.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/ast.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/ast.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/enum.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/enum.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/enum.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/functools.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/functools.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/functools.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/collections/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/collections/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/collections/__pycache__/__init__.cpython-313.pyc'
import 'itertools' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/keyword.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/keyword.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/keyword.cpython-313.pyc'
import 'keyword' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357cb750>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/operator.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/operator.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/operator.cpython-313.pyc'
import '_operator' # <class '_frozen_importlib.BuiltinImporter'>
import 'operator' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35673140>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/reprlib.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/reprlib.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/reprlib.cpython-313.pyc'
import 'reprlib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357ae1d0>
import '_collections' # <class '_frozen_importlib.BuiltinImporter'>
import 'collections' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357ca710>
import '_functools' # <class '_frozen_importlib.BuiltinImporter'>
import 'functools' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35660050>
import 'enum' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35660310>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_compiler.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/_compiler.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_compiler.cpython-313.pyc'
import '_sre' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_parser.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/_parser.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_parser.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_constants.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/_constants.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_constants.cpython-313.pyc'
import 're._constants' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35657bd0>
import 're._parser' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35657770>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_casefix.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/_casefix.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/re/__pycache__/_casefix.cpython-313.pyc'
import 're._casefix' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3561e150>
import 're._compiler' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357ad6d0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/copyreg.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/copyreg.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/copyreg.cpython-313.pyc'
import 'copyreg' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3561fdd0>
import 're' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35b66690>
import '_ast' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/contextlib.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/contextlib.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/contextlib.cpython-313.pyc'
import 'contextlib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35650110>
import 'ast' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35b66810>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/dataclasses.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/dataclasses.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/dataclasses.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/copy.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/copy.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/copy.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/weakref.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/weakref.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/weakref.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_weakrefset.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/_weakrefset.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_weakrefset.cpython-313.pyc'
import '_weakrefset' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d6030>
import 'weakref' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d5850>
import 'copy' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d5190>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/inspect.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/inspect.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/inspect.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/dis.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/dis.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/dis.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/opcode.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/opcode.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/opcode.cpython-313.pyc'
import '_opcode' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_opcode_metadata.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/_opcode_metadata.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_opcode_metadata.cpython-313.pyc'
import '_opcode_metadata' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35541910>
import 'opcode' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35541790>
import 'dis' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d6b70>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/linecache.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/linecache.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/linecache.cpython-313.pyc'
import 'linecache' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355420f0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/tokenize.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/tokenize.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/tokenize.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/token.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/token.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/token.cpython-313.pyc'
import 'token' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35542930>
import '_tokenize' # <class '_frozen_importlib.BuiltinImporter'>
import 'tokenize' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355422d0>
import 'inspect' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d5790>
import 'dataclasses' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356506b0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/_abc.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/_abc.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/glob.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/glob.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/glob.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/fnmatch.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/fnmatch.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/fnmatch.cpython-313.pyc'
import 'fnmatch' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3559c0b0>
import 'glob' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355433b0>
import 'pathlib._abc' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d4e90>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/_local.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pathlib/__pycache__/_local.cpython-313.pyc'
import 'ntpath' # <class '_frozen_importlib.FrozenImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/warnings.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/warnings.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/warnings.cpython-313.pyc'
import 'warnings' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3559cfb0>
import 'pwd' # <class '_frozen_importlib.BuiltinImporter'>
import 'grp' # <class '_frozen_importlib.BuiltinImporter'>
import 'pathlib._local' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3559c6b0>
import 'pathlib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d46b0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/traceback.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/traceback.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/traceback.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/textwrap.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/textwrap.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/textwrap.cpython-313.pyc'
import 'textwrap' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3559ea50>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_colorize.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/_colorize.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_colorize.cpython-313.pyc'
import '_colorize' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f4170>
import 'traceback' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c356d7b90>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/typing.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/typing.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/typing.cpython-313.pyc'
import '_typing' # <class '_frozen_importlib.BuiltinImporter'>
import 'typing' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f4350>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_version.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_version.cpython-313.pyc'
import 'pluggy._version' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f7350>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_hooks.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_hooks.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_result.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_result.cpython-313.pyc'
import 'pluggy._result' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35428bf0>
import 'pluggy._hooks' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f7c50>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_manager.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_manager.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_tracing.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_tracing.cpython-313.pyc'
import 'pluggy._tracing' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35429d90>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_callers.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_warnings.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/__pycache__/_warnings.cpython-313.pyc'
import 'pluggy._warnings' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35429f70>
import 'pluggy._callers' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35429e50>
import 'pluggy._manager' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35428dd0>
import 'pluggy' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f6b70>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/source.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_code/__pycache__/source.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bisect.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/bisect.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bisect.cpython-313.pyc'
import '_bisect' # <class '_frozen_importlib.BuiltinImporter'>
import 'bisect' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3542a210>
import '_pytest._code.source' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c355f59d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/terminalwriter.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__pycache__/terminalwriter.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/shutil.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/shutil.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/shutil.cpython-313.pyc'
import 'zlib' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bz2.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/bz2.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bz2.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_compression.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/_compression.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/_compression.cpython-313.pyc'
import '_compression' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ac830>
import '_bz2' # <class '_frozen_importlib.BuiltinImporter'>
import 'bz2' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3542bd10>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/lzma.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/lzma.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/lzma.cpython-313.pyc'
import '_lzma' # <class '_frozen_importlib.BuiltinImporter'>
import 'lzma' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354accb0>
import 'shutil' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3542b3b0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/compat.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/compat.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/py.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/__pycache__/py.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/__pycache__/__init__.cpython-313.pyc'
import '_pytest._py' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354adb50>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/error.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/__pycache__/error.cpython-313.pyc'
import '_pytest._py.error' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354adaf0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/path.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_py/__pycache__/path.cpython-313.pyc'
import 'atexit' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/uuid.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/uuid.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/uuid.cpython-313.pyc'
import '_uuid' # <class '_frozen_importlib.BuiltinImporter'>
import 'uuid' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ae3f0>
import '_pytest._py.path' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354adbb0>
import 'py' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ada90>
import '_pytest.compat' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ac1d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/wcwidth.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__pycache__/wcwidth.cpython-313.pyc'
import 'unicodedata' # <class '_frozen_importlib.BuiltinImporter'>
import '_pytest._io.wcwidth' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ae990>
import '_pytest._io.terminalwriter' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3542a2d0>
import '_pytest._io' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35429f10>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/saferepr.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__pycache__/saferepr.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/pprint.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pprint.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/pprint.cpython-313.pyc'
import 'pprint' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353e0f50>
import '_pytest._io.saferepr' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3542a1b0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/deprecated.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/deprecated.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/warning_types.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/warning_types.cpython-313.pyc'
import '_pytest.warning_types' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353e11f0>
import '_pytest.deprecated' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c354ad4f0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/pathlib.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/pathlib.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/outcomes.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/outcomes.cpython-313.pyc'
import '_pytest.outcomes' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353e2090>
import '_pytest.pathlib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353e0ad0>
import '_pytest._code.code' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c357bf930>
import '_pytest._code' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3578a430>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/rewrite.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/__pycache__/rewrite.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/abc.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/abc.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/__pycache__/abc.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/_common.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/_common.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/_common.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/tempfile.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/tempfile.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/tempfile.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/random.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/random.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/random.cpython-313.pyc'
import 'math' # <class '_frozen_importlib.BuiltinImporter'>
import '_random' # <class '_frozen_importlib.BuiltinImporter'>
import 'random' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35341c70>
import 'tempfile' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35341910>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/abc.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/abc.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/abc.cpython-313.pyc'
import 'importlib.resources.abc' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35341f10>
import 'importlib.resources._common' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35341070>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/_functional.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/_functional.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/resources/__pycache__/_functional.cpython-313.pyc'
import 'importlib.resources._functional' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353417f0>
import 'importlib.resources' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35340b90>
import 'importlib.abc' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35340770>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/struct.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/struct.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/struct.cpython-313.pyc'
import '_struct' # <class '_frozen_importlib.BuiltinImporter'>
import 'struct' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35342b70>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/util.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/__pycache__/util.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/pprint.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_io/__pycache__/pprint.cpython-313.pyc'
import '_pytest._io.pprint' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35342ff0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/argparse.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/argparse.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/argparse.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/gettext.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/gettext.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/gettext.cpython-313.pyc'
import 'gettext' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35343e90>
import 'argparse' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35343cb0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/decoder.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/decoder.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/decoder.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/scanner.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/scanner.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/scanner.cpython-313.pyc'
import '_json' # <class '_frozen_importlib.BuiltinImporter'>
import 'json.scanner' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c6690>
import 'json.decoder' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c5f10>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/encoder.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/encoder.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/json/__pycache__/encoder.cpython-313.pyc'
import 'json.encoder' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c6270>
import 'json' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c48f0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/email/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/email/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/email/__pycache__/__init__.cpython-313.pyc'
import 'email' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c6f30>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/__pycache__/__init__.cpython-313.pyc'
import 'binascii' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/threading.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/threading.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/threading.cpython-313.pyc'
import 'threading' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c7530>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/__pycache__/glob.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/glob.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/zipfile/_path/__pycache__/glob.cpython-313.pyc'
import 'zipfile._path.glob' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352809b0>
import 'zipfile._path' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35281850>
import 'zipfile' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c6e70>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_meta.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/_meta.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_meta.cpython-313.pyc'
import 'importlib.metadata._meta' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35280950>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_collections.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/_collections.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_collections.cpython-313.pyc'
import 'importlib.metadata._collections' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35282450>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_functools.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/_functools.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_functools.cpython-313.pyc'
import 'importlib.metadata._functools' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35282a50>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_itertools.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/_itertools.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/importlib/metadata/__pycache__/_itertools.cpython-313.pyc'
import 'importlib.metadata._itertools' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35282b10>
import 'importlib.metadata' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352f11f0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/shlex.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/shlex.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/shlex.cpython-313.pyc'
import 'shlex' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352c6750>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/compat.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__pycache__/compat.cpython-313.pyc'
import '_pytest.config.compat' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35282f30>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/exceptions.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__pycache__/exceptions.cpython-313.pyc'
import '_pytest.config.exceptions' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c352831d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/findpaths.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__pycache__/findpaths.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/exceptions.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/__pycache__/exceptions.cpython-313.pyc'
import 'iniconfig.exceptions' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35283e90>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/_parse.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/iniconfig/__pycache__/_parse.cpython-313.pyc'
import 'iniconfig._parse' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35283ef0>
import 'iniconfig' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35283650>
import '_pytest.config.findpaths' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35283230>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/argparsing.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__pycache__/argparsing.cpython-313.pyc'
import '_pytest.config.argparsing' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35283170>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/hookspec.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/hookspec.cpython-313.pyc'
import '_pytest.hookspec' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521c4d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/stash.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/stash.cpython-313.pyc'
import '_pytest.stash' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521d910>
import '_pytest.config' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35343110>
import '_pytest.assertion.util' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35342bd0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/main.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/main.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/nodes.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/nodes.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/__init__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/__pycache__/__init__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/expression.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/__pycache__/expression.cpython-313.pyc'
import '_pytest.mark.expression' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521ee70>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/structures.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/mark/__pycache__/structures.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/scope.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/scope.cpython-313.pyc'
import '_pytest.scope' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c350e85f0>
import '_pytest.mark.structures' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c350e8110>
import '_pytest.mark' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521ec90>
import '_pytest.nodes' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521e8d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/reports.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/reports.cpython-313.pyc'
import '_pytest.reports' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521e930>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/runner.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/runner.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bdb.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/bdb.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/bdb.cpython-313.pyc'
import 'bdb' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c350eaed0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/timing.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/timing.cpython-313.pyc'
import '_pytest.timing' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c350ebbf0>
import '_pytest.runner' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c350ead50>
import '_pytest.main' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35342ed0>
import '_pytest.assertion.rewrite' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3576aff0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/truncate.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/assertion/__pycache__/truncate.cpython-313.pyc'
import '_pytest.assertion.truncate' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c353405f0>
import '_pytest.assertion' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3576a270>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/cacheprovider.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/cacheprovider.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/fixtures.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/fixtures.cpython-313.pyc'
import '_pytest.fixtures' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35138170>
import '_pytest.cacheprovider' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3576a990>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/capture.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/capture.cpython-313.pyc'
import '_pytest.capture' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3521e870>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/debugging.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/debugging.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/result.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/result.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/result.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/util.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/util.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/util.cpython-313.pyc'
import 'unittest.util' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35161eb0>
import 'unittest.result' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35161310>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/case.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/case.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/case.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/difflib.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/difflib.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/difflib.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/heapq.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/heapq.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/heapq.cpython-313.pyc'
import '_heapq' # <class '_frozen_importlib.BuiltinImporter'>
import 'heapq' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35163f50>
import 'difflib' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c351624b0>
import 'unittest.case' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35162270>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/suite.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/suite.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/suite.cpython-313.pyc'
import 'unittest.suite' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c351639b0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/loader.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/loader.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/loader.cpython-313.pyc'
import 'unittest.loader' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc0b30>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/main.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/main.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/main.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/runner.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/runner.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/runner.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/signals.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/signals.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/unittest/__pycache__/signals.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/signal.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/signal.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/signal.cpython-313.pyc'
import 'signal' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc1a30>
import 'unittest.signals' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc1790>
import 'unittest.runner' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc1250>
import 'unittest.main' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc0770>
import 'unittest' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35161d30>
import '_pytest.debugging' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35138f50>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/doctest.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/doctest.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/platform.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/platform.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/platform.cpython-313.pyc'
import 'platform' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc1d30>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/python.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/python.cpython-313.pyc'
# destroy empty_module
import '_pytest.python' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc2270>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/python_api.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/python_api.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/decimal.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/decimal.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/decimal.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/numbers.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/numbers.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/numbers.cpython-313.pyc'
import 'numbers' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3507f110>
import '_decimal' # <class '_frozen_importlib.BuiltinImporter'>
import 'decimal' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3507c590>
import '_pytest.python_api' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3507d550>
import '_pytest.doctest' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35160b90>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/freeze_support.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/freeze_support.cpython-313.pyc'
import '_pytest.freeze_support' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34fc11f0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/legacypath.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/legacypath.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/subprocess.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/subprocess.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/subprocess.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/locale.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/locale.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/locale.cpython-313.pyc'
import '_locale' # <class '_frozen_importlib.BuiltinImporter'>
import 'locale' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f30d70>
import 'fcntl' # <class '_frozen_importlib.BuiltinImporter'>
import '_posixsubprocess' # <class '_frozen_importlib.BuiltinImporter'>
import 'select' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/selectors.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/selectors.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/selectors.cpython-313.pyc'
import 'selectors' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f30ef0>
import 'subprocess' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f30a10>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/monkeypatch.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/monkeypatch.cpython-313.pyc'
import '_pytest.monkeypatch' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f30ad0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/pytester.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/pytester.cpython-313.pyc'
import 'gc' # <class '_frozen_importlib.BuiltinImporter'>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/tmpdir.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/tmpdir.cpython-313.pyc'
import '_pytest.tmpdir' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f33110>
import '_pytest.pytester' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f31790>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/terminal.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/terminal.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/datetime.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/datetime.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/datetime.cpython-313.pyc'
import '_datetime' # <class '_frozen_importlib.BuiltinImporter'>
import 'datetime' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34ea21b0>
import '_pytest.terminal' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f330b0>
import '_pytest.legacypath' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c3507c470>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/logging.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/logging.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/logging/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/logging/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/logging/__pycache__/__init__.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/string.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/string.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/string.cpython-313.pyc'
import '_string' # <class '_frozen_importlib.BuiltinImporter'>
import 'string' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f0a150>
import 'logging' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f095b0>
import '_pytest.logging' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f30890>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/recwarn.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/recwarn.cpython-313.pyc'
import '_pytest.recwarn' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34f300b0>
import 'pytest' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c35742650>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pytest/__main__.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pytest/__pycache__/__main__.cpython-313.pyc'
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/helpconfig.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/helpconfig.cpython-313.pyc'
import '_pytest.helpconfig' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e30b90>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/unittest.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/unittest.cpython-313.pyc'
import '_pytest.unittest' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e30bf0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/skipping.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/skipping.cpython-313.pyc'
import '_pytest.skipping' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e30cb0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/pastebin.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/pastebin.cpython-313.pyc'
import '_pytest.pastebin' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e30ef0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/junitxml.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/junitxml.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/__pycache__/__init__.cpython-313.pyc'
import 'xml' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e32510>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/__init__.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__init__.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/__init__.cpython-313.pyc'
import 'xml.etree' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e323f0>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/ElementTree.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/ElementTree.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/ElementTree.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/ElementPath.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/ElementPath.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/xml/etree/__pycache__/ElementPath.cpython-313.pyc'
import 'xml.etree.ElementPath' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e33a10>
import 'pyexpat' # <class '_frozen_importlib.BuiltinImporter'>
import '_elementtree' # <class '_frozen_importlib.BuiltinImporter'>
import 'xml.etree.ElementTree' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e32330>
import '_pytest.junitxml' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e31fd0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/setuponly.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/setuponly.cpython-313.pyc'
import '_pytest.setuponly' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34e30b30>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/setupplan.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/setupplan.cpython-313.pyc'
import '_pytest.setupplan' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df01d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/stepwise.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/stepwise.cpython-313.pyc'
import '_pytest.stepwise' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df1730>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/warnings.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/warnings.cpython-313.pyc'
import '_pytest.warnings' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df2210>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/python_path.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/python_path.cpython-313.pyc'
import '_pytest.python_path' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df1a90>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/unraisableexception.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/unraisableexception.cpython-313.pyc'
import '_pytest.unraisableexception' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df2450>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/threadexception.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/threadexception.cpython-313.pyc'
import '_pytest.threadexception' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df26f0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/faulthandler.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/faulthandler.cpython-313.pyc'
import '_pytest.faulthandler' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df28d0>
# code object from /home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/_argcomplete.py
# created '/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/__pycache__/_argcomplete.cpython-313.pyc'
import '_pytest._argcomplete' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df20f0>
import 'faulthandler' # <class '_frozen_importlib.BuiltinImporter'>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/pdb.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/pdb.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/pdb.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/cmd.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/cmd.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/cmd.cpython-313.pyc'
import 'cmd' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df3290>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/code.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/code.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/code.cpython-313.pyc'
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/codeop.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/codeop.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/codeop.cpython-313.pyc'
import 'codeop' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34ca1430>
import 'code' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34ca1010>
# /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/rlcompleter.cpython-313.pyc matches /home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/rlcompleter.py
# code object from '/home/frank/.local/share/uv/python/cpython-3.13.1-linux-x86_64-gnu/lib/python3.13/__pycache__/rlcompleter.cpython-313.pyc'
import 'readline' # <class '_frozen_importlib.BuiltinImporter'>
import 'rlcompleter' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34ca13d0>
import 'pdb' # <_frozen_importlib_external.SourceFileLoader object at 0x7f3c34df2f90>
================================================================================================ test session starts ================================================================================================
platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
rootdir: /home/frank/projects/bugs/pytest_capture
collected 0 items

Enter 'hi'
hi

name: ''
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pytest/__main__.py", line 9, in <module>
    raise SystemExit(pytest.console_main())
                     ~~~~~~~~~~~~~~~~~~~^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__init__.py", line 201, in console_main
    code = main()
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/config/__init__.py", line 175, in main
    ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config)
                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall
    res = hook_impl.function(*args)
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/main.py", line 330, in pytest_cmdline_main
    return wrap_session(config, _main)
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/main.py", line 318, in wrap_session
    config.hook.pytest_sessionfinish(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        session=session, exitstatus=session.exitstatus
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall
    teardown.throw(exception)  # type: ignore[union-attr]
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/logging.py", line 868, in pytest_sessionfinish
    return (yield)
            ^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 124, in _multicall
    teardown.send(result)  # type: ignore[union-attr]
    ~~~~~~~~~~~~~^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/terminal.py", line 903, in pytest_sessionfinish
    self.config.hook.pytest_terminal_summary(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        terminalreporter=self, exitstatus=exitstatus, config=self.config
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall
    teardown.throw(exception)  # type: ignore[union-attr]
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/terminal.py", line 925, in pytest_terminal_summary
    return (yield)
            ^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall
    teardown.throw(exception)  # type: ignore[union-attr]
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/_pytest/warnings.py", line 132, in pytest_terminal_summary
    return (yield)
            ^^^^^
  File "/home/frank/projects/bugs/pytest_capture/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall
    res = hook_impl.function(*args)
  File "/home/frank/projects/bugs/pytest_capture/conftest.py", line 13, in pytest_terminal_summary
    assert value == "hi"
AssertionError: assert '' == 'hi'
# clear sys.path_importer_cache
# clear sys.path_hooks
# clear builtins._
# clear sys.path
# clear sys.argv
# clear sys.ps1
# clear sys.ps2
# clear sys.last_exc
# clear sys.last_type
# clear sys.last_value
# clear sys.last_traceback
# clear sys.__interactivehook__
# clear sys.meta_path
# restore sys.stdin
# restore sys.stdout
# restore sys.stderr
# cleanup[2] removing sys
# cleanup[2] removing builtins
# cleanup[2] removing _frozen_importlib
# cleanup[2] removing _imp
# cleanup[2] removing _thread
# cleanup[2] removing _warnings
# cleanup[2] removing _weakref
# cleanup[2] removing _io
# cleanup[2] removing marshal
# cleanup[2] removing posix
# cleanup[2] removing _frozen_importlib_external
# cleanup[2] removing time
# cleanup[2] removing zipimport
# destroy zipimport
# cleanup[2] removing _codecs
# cleanup[2] removing codecs
# cleanup[2] removing encodings.aliases
# cleanup[2] removing encodings
# cleanup[2] removing encodings.utf_8
# cleanup[2] removing _signal
# cleanup[2] removing _abc
# cleanup[2] removing abc
# cleanup[2] removing io
# cleanup[2] removing __main__
# cleanup[2] removing _stat
# cleanup[2] removing stat
# cleanup[2] removing _collections_abc
# cleanup[2] removing errno
# cleanup[2] removing genericpath
# cleanup[2] removing posixpath
# cleanup[2] removing os.path
# cleanup[2] removing os
# cleanup[2] removing _sitebuiltins
# cleanup[2] removing encodings.utf_8_sig
# cleanup[2] removing _virtualenv
# destroy _virtualenv
# cleanup[2] removing site
# destroy site
# cleanup[2] removing importlib._bootstrap
# cleanup[2] removing importlib._bootstrap_external
# cleanup[2] removing importlib
# cleanup[2] removing importlib.machinery
# cleanup[2] removing importlib._abc
# cleanup[2] removing types
# cleanup[2] removing importlib.util
# cleanup[2] removing runpy
# destroy runpy
# cleanup[2] removing __future__
# cleanup[2] removing _pytest._version
# cleanup[2] removing _pytest
# cleanup[2] removing collections.abc
# cleanup[2] removing itertools
# cleanup[2] removing keyword
# cleanup[2] removing _operator
# cleanup[2] removing operator
# cleanup[2] removing reprlib
# cleanup[2] removing _collections
# cleanup[2] removing collections
# cleanup[2] removing _functools
# cleanup[2] removing functools
# cleanup[2] removing enum
# cleanup[2] removing _sre
# cleanup[2] removing re._constants
# cleanup[2] removing re._parser
# cleanup[2] removing re._casefix
# cleanup[2] removing re._compiler
# cleanup[2] removing copyreg
# cleanup[2] removing re
# cleanup[2] removing _ast
# destroy _ast
# cleanup[2] removing contextlib
# cleanup[2] removing ast
# cleanup[2] removing _weakrefset
# destroy _weakrefset
# cleanup[2] removing weakref
# cleanup[2] removing copy
# cleanup[2] removing _opcode
# cleanup[2] removing _opcode_metadata
# destroy _opcode_metadata
# cleanup[2] removing opcode
# destroy opcode
# cleanup[2] removing dis
# cleanup[2] removing linecache
# cleanup[2] removing token
# cleanup[2] removing _tokenize
# cleanup[2] removing tokenize
# cleanup[2] removing inspect
# cleanup[2] removing dataclasses
# cleanup[2] removing fnmatch
# cleanup[2] removing glob
# cleanup[2] removing pathlib._abc
# cleanup[2] removing ntpath
# cleanup[2] removing warnings
# cleanup[2] removing pwd
# cleanup[2] removing grp
# cleanup[2] removing pathlib._local
# cleanup[2] removing pathlib
# cleanup[2] removing textwrap
# cleanup[2] removing _colorize
# cleanup[2] removing traceback
# cleanup[2] removing _typing
# cleanup[2] removing typing
# destroy typing
# cleanup[2] removing pluggy._version
# cleanup[2] removing pluggy._result
# cleanup[2] removing pluggy._hooks
# cleanup[2] removing pluggy._tracing
# cleanup[2] removing pluggy._warnings
# cleanup[2] removing pluggy._callers
# cleanup[2] removing pluggy._manager
# cleanup[2] removing pluggy
# cleanup[2] removing _bisect
# cleanup[2] removing bisect
# destroy bisect
# cleanup[2] removing _pytest._code.source
# cleanup[2] removing zlib
# cleanup[2] removing _compression
# cleanup[2] removing _bz2
# cleanup[2] removing bz2
# cleanup[2] removing _lzma
# cleanup[2] removing lzma
# cleanup[2] removing shutil
# cleanup[2] removing _pytest._py
# cleanup[2] removing _pytest._py.error
# cleanup[2] removing atexit
# cleanup[2] removing _uuid
# cleanup[2] removing uuid
# cleanup[2] removing _pytest._py.path
# cleanup[2] removing py.error
# cleanup[2] removing py.path
# cleanup[2] removing py
# cleanup[2] removing _pytest.compat
# cleanup[2] removing unicodedata
# cleanup[2] removing _pytest._io.wcwidth
# cleanup[2] removing _pytest._io.terminalwriter
# cleanup[2] removing _pytest._io
# cleanup[2] removing pprint
# cleanup[2] removing _pytest._io.saferepr
# cleanup[2] removing _pytest.warning_types
# cleanup[2] removing _pytest.deprecated
# cleanup[2] removing _pytest.outcomes
# cleanup[2] removing _pytest.pathlib
# cleanup[2] removing _pytest._code.code
# cleanup[2] removing _pytest._code
# cleanup[2] removing math
# cleanup[2] removing _random
# cleanup[2] removing random
# destroy random
# cleanup[2] removing tempfile
# cleanup[2] removing importlib.resources.abc
# cleanup[2] removing importlib.resources._common
# cleanup[2] removing importlib.resources._functional
# cleanup[2] removing importlib.resources
# cleanup[2] removing importlib.abc
# cleanup[2] removing _struct
# cleanup[2] removing struct
# cleanup[2] removing _pytest._io.pprint
# cleanup[2] removing gettext
# destroy gettext
# cleanup[2] removing argparse
# cleanup[2] removing _json
# cleanup[2] removing json.scanner
# cleanup[2] removing json.decoder
# cleanup[2] removing json.encoder
# cleanup[2] removing json
# cleanup[2] removing email
# cleanup[2] removing binascii
# cleanup[2] removing threading
# cleanup[2] removing zipfile._path.glob
# cleanup[2] removing zipfile._path
# cleanup[2] removing zipfile
# cleanup[2] removing importlib.metadata._meta
# cleanup[2] removing importlib.metadata._collections
# cleanup[2] removing importlib.metadata._functools
# cleanup[2] removing importlib.metadata._itertools
# cleanup[2] removing importlib.metadata
# cleanup[2] removing shlex
# cleanup[2] removing _pytest.config.compat
# cleanup[2] removing _pytest.config.exceptions
# cleanup[2] removing iniconfig.exceptions
# cleanup[2] removing iniconfig._parse
# cleanup[2] removing iniconfig
# cleanup[2] removing _pytest.config.findpaths
# cleanup[2] removing _pytest.config.argparsing
# cleanup[2] removing _pytest.hookspec
# cleanup[2] removing _pytest.stash
# cleanup[2] removing _pytest.config
# cleanup[2] removing _pytest.assertion.util
# cleanup[2] removing _pytest.mark.expression
# cleanup[2] removing _pytest.scope
# cleanup[2] removing _pytest.mark.structures
# cleanup[2] removing _pytest.mark
# cleanup[2] removing _pytest.nodes
# cleanup[2] removing _pytest.reports
# cleanup[2] removing bdb
# cleanup[2] removing _pytest.timing
# cleanup[2] removing _pytest.runner
# cleanup[2] removing _pytest.main
# cleanup[2] removing _pytest.assertion.rewrite
# cleanup[2] removing _pytest.assertion.truncate
# cleanup[2] removing _pytest.assertion
# cleanup[2] removing _pytest.fixtures
# cleanup[2] removing _pytest.cacheprovider
# cleanup[2] removing _pytest.capture
# cleanup[2] removing unittest.util
# cleanup[2] removing unittest.result
# cleanup[2] removing _heapq
# cleanup[2] removing heapq
# destroy heapq
# cleanup[2] removing difflib
# cleanup[2] removing unittest.case
# cleanup[2] removing unittest.suite
# cleanup[2] removing unittest.loader
# cleanup[2] removing signal
# cleanup[2] removing unittest.signals
# cleanup[2] removing unittest.runner
# cleanup[2] removing unittest.main
# destroy unittest.main
# cleanup[2] removing unittest
# cleanup[2] removing _pytest.debugging
# cleanup[2] removing platform
# cleanup[2] removing _pytest.python
# cleanup[2] removing numbers
# destroy numbers
# cleanup[2] removing _decimal
# cleanup[2] removing decimal
# destroy decimal
# cleanup[2] removing _pytest.python_api
# cleanup[2] removing _pytest.doctest
# cleanup[2] removing _pytest.freeze_support
# cleanup[2] removing _locale
# cleanup[2] removing locale
# cleanup[2] removing fcntl
# cleanup[2] removing _posixsubprocess
# cleanup[2] removing select
# cleanup[2] removing selectors
# cleanup[2] removing subprocess
# cleanup[2] removing _pytest.monkeypatch
# cleanup[2] removing gc
# cleanup[2] removing _pytest.tmpdir
# cleanup[2] removing _pytest.pytester
# cleanup[2] removing _datetime
# cleanup[2] removing datetime
# cleanup[2] removing _pytest.terminal
# cleanup[2] removing _pytest.legacypath
# cleanup[2] removing _string
# cleanup[2] removing string
# cleanup[2] removing logging
# cleanup[2] removing _pytest.logging
# cleanup[2] removing _pytest.recwarn
# cleanup[2] removing pytest
# cleanup[2] removing _pytest.helpconfig
# cleanup[2] removing _pytest.unittest
# cleanup[2] removing _pytest.skipping
# cleanup[2] removing _pytest.pastebin
# cleanup[2] removing xml
# destroy xml
# cleanup[2] removing xml.etree
# destroy xml.etree
# cleanup[2] removing xml.etree.ElementPath
# cleanup[2] removing pyexpat.errors
# cleanup[2] removing pyexpat.model
# cleanup[2] removing pyexpat
# cleanup[2] removing _elementtree
# cleanup[2] removing xml.etree.ElementTree
# cleanup[2] removing _pytest.junitxml
# cleanup[2] removing _pytest.setuponly
# cleanup[2] removing _pytest.setupplan
# cleanup[2] removing _pytest.stepwise
# cleanup[2] removing _pytest.warnings
# cleanup[2] removing _pytest.python_path
# cleanup[2] removing _pytest.unraisableexception
# cleanup[2] removing _pytest.threadexception
# cleanup[2] removing _pytest.faulthandler
# cleanup[2] removing _pytest._argcomplete
# cleanup[2] removing conftest
# cleanup[2] removing faulthandler
# cleanup[2] removing cmd
# cleanup[2] removing codeop
# cleanup[2] removing code
# cleanup[2] removing readline
# cleanup[2] removing rlcompleter
# destroy rlcompleter
# cleanup[2] removing pdb
# destroy pdb
# cleanup[2] removing test_example
# destroy _sitebuiltins
# destroy _datetime
# destroy pyexpat.errors
# destroy pyexpat.model
# destroy pyexpat
# destroy faulthandler
# destroy cmd
# destroy code
# destroy codeop
# destroy string
# destroy __future__
# destroy __main__
# destroy test_example
# destroy conftest
# cleanup[3] wiping readline
# cleanup[3] wiping _pytest._argcomplete
# cleanup[3] wiping _pytest.faulthandler
# cleanup[3] wiping _pytest.threadexception
# cleanup[3] wiping _pytest.unraisableexception
# cleanup[3] wiping _pytest.python_path
# cleanup[3] wiping _pytest.warnings
# cleanup[3] wiping _pytest.stepwise
# cleanup[3] wiping _pytest.setupplan
# cleanup[3] wiping _pytest.setuponly
# cleanup[3] wiping _pytest.junitxml
# destroy xml.etree.ElementTree
# cleanup[3] wiping _elementtree
# cleanup[3] wiping xml.etree.ElementPath
# cleanup[3] wiping _pytest.pastebin
# cleanup[3] wiping _pytest.skipping
# cleanup[3] wiping _pytest.unittest
# cleanup[3] wiping _pytest.helpconfig
# destroy pytest
# cleanup[3] wiping _pytest.recwarn
# cleanup[3] wiping _pytest.logging
# destroy logging
# cleanup[3] wiping _string
# cleanup[3] wiping _pytest.legacypath
# cleanup[3] wiping _pytest.terminal
# destroy datetime
# cleanup[3] wiping _pytest.pytester
# destroy subprocess
# cleanup[3] wiping _pytest.tmpdir
# cleanup[3] wiping gc
# destroy gc
# cleanup[3] wiping _pytest.monkeypatch
# cleanup[3] wiping selectors
# cleanup[3] wiping select
# cleanup[3] wiping _posixsubprocess
# cleanup[3] wiping fcntl
# cleanup[3] wiping locale
# destroy encodings
# cleanup[3] wiping _locale
# destroy _locale
# cleanup[3] wiping _pytest.freeze_support
# cleanup[3] wiping _pytest.doctest
# destroy platform
# cleanup[3] wiping _pytest.python_api
# cleanup[3] wiping _decimal
# cleanup[3] wiping _pytest.python
# cleanup[3] wiping _pytest.debugging
# destroy unittest
# cleanup[3] wiping unittest.runner
# cleanup[3] wiping unittest.signals
# cleanup[3] wiping signal
# cleanup[3] wiping unittest.loader
# cleanup[3] wiping unittest.suite
# cleanup[3] wiping unittest.case
# destroy difflib
# cleanup[3] wiping _heapq
# cleanup[3] wiping unittest.result
# cleanup[3] wiping unittest.util
# cleanup[3] wiping _pytest.capture
# cleanup[3] wiping _pytest.cacheprovider
# cleanup[3] wiping _pytest.fixtures
# cleanup[3] wiping _pytest.assertion
# destroy _pytest.assertion.rewrite
# destroy _pytest.assertion.truncate
# cleanup[3] wiping _pytest.main
# cleanup[3] wiping _pytest.runner
# destroy bdb
# cleanup[3] wiping _pytest.timing
# cleanup[3] wiping _pytest.reports
# cleanup[3] wiping _pytest.nodes
# cleanup[3] wiping _pytest.mark
# destroy _pytest.mark.expression
# destroy _pytest.mark.structures
# cleanup[3] wiping _pytest.scope
# cleanup[3] wiping _pytest.assertion.util
# cleanup[3] wiping _pytest.config
# destroy glob
# destroy shlex
# destroy _pytest.config.compat
# destroy _pytest.config.exceptions
# destroy _pytest.config.findpaths
# destroy _pytest.config.argparsing
# cleanup[3] wiping _pytest.stash
# cleanup[3] wiping _pytest.hookspec
# cleanup[3] wiping iniconfig
# destroy iniconfig._parse
# destroy iniconfig.exceptions
# cleanup[3] wiping importlib.metadata
# destroy importlib.metadata._meta
# destroy importlib.metadata._collections
# destroy importlib.metadata._functools
# destroy importlib.metadata._itertools
# destroy json
# destroy email
# cleanup[3] wiping zipfile
# destroy zipfile._path
# destroy bz2
# destroy lzma
# cleanup[3] wiping zipfile._path.glob
# cleanup[3] wiping threading
# cleanup[3] wiping binascii
# destroy binascii
# cleanup[3] wiping json.encoder
# cleanup[3] wiping json.decoder
# cleanup[3] wiping json.scanner
# cleanup[3] wiping _json
# cleanup[3] wiping argparse
# cleanup[3] wiping _pytest._io.pprint
# cleanup[3] wiping struct
# cleanup[3] wiping _struct
# cleanup[3] wiping importlib.abc
# cleanup[3] wiping importlib.resources
# destroy importlib.resources._common
# destroy importlib.resources._functional
# destroy importlib.resources.abc
# cleanup[3] wiping tempfile
# cleanup[3] wiping _random
# cleanup[3] wiping math
# cleanup[3] wiping _pytest._code
# destroy _pytest._code.source
# destroy _pytest._code.code
# cleanup[3] wiping _pytest.pathlib
# cleanup[3] wiping _pytest.outcomes
# cleanup[3] wiping _pytest.deprecated
# cleanup[3] wiping _pytest.warning_types
# cleanup[3] wiping _pytest._io.saferepr
# destroy pprint
# destroy reprlib
# cleanup[3] wiping _pytest._io
# destroy _pytest._io.wcwidth
# destroy _pytest._io.terminalwriter
# destroy _pytest._io.saferepr
# destroy _pytest._io.pprint
# cleanup[3] wiping unicodedata
# cleanup[3] wiping _pytest.compat
# destroy py
# cleanup[3] wiping py.path
# destroy uuid
# cleanup[3] wiping py.error
# cleanup[3] wiping _pytest._py.path
# cleanup[3] wiping _uuid
# cleanup[3] wiping atexit
# cleanup[3] wiping _pytest._py.error
# cleanup[3] wiping _pytest._py
# destroy _pytest._py.error
# destroy _pytest._py.path
# cleanup[3] wiping shutil
# cleanup[3] wiping _lzma
# cleanup[3] wiping _bz2
# cleanup[3] wiping _compression
# cleanup[3] wiping zlib
# cleanup[3] wiping _bisect
# cleanup[3] wiping pluggy
# destroy pluggy._version
# destroy pluggy._result
# destroy pluggy._hooks
# destroy pluggy._warnings
# destroy pluggy._callers
# destroy pluggy._manager
# cleanup[3] wiping pluggy._tracing
# cleanup[3] wiping _typing
# cleanup[3] wiping traceback
# destroy _colorize
# cleanup[3] wiping textwrap
# cleanup[3] wiping pathlib
# destroy pathlib._abc
# destroy pathlib._local
# cleanup[3] wiping grp
# cleanup[3] wiping pwd
# cleanup[3] wiping warnings
# cleanup[3] wiping ntpath
# cleanup[3] wiping fnmatch
# cleanup[3] wiping dataclasses
# destroy copy
# cleanup[3] wiping inspect
# destroy dis
# destroy linecache
# destroy token
# cleanup[3] wiping tokenize
# cleanup[3] wiping _tokenize
# cleanup[3] wiping _opcode
# cleanup[3] wiping weakref
# cleanup[3] wiping ast
# cleanup[3] wiping contextlib
# cleanup[3] wiping re
# destroy re._constants
# destroy re._casefix
# destroy re._compiler
# cleanup[3] wiping copyreg
# cleanup[3] wiping re._parser
# cleanup[3] wiping _sre
# cleanup[3] wiping enum
# cleanup[3] wiping functools
# cleanup[3] wiping _functools
# cleanup[3] wiping collections
# destroy _collections_abc
# cleanup[3] wiping _collections
# cleanup[3] wiping operator
# cleanup[3] wiping _operator
# cleanup[3] wiping keyword
# cleanup[3] wiping itertools
# cleanup[3] wiping _pytest
# destroy _pytest._version
# destroy _pytest._py
# destroy _pytest._io
# destroy _pytest._code
# destroy _pytest._argcomplete
# destroy _pytest.compat
# destroy _pytest.warning_types
# destroy _pytest.deprecated
# destroy _pytest.outcomes
# destroy _pytest.pathlib
# destroy _pytest.hookspec
# destroy _pytest.stash
# destroy _pytest.config
# destroy _pytest.scope
# destroy _pytest.mark
# destroy _pytest.nodes
# destroy _pytest.reports
# destroy _pytest.timing
# destroy _pytest.runner
# destroy _pytest.main
# destroy _pytest.assertion
# destroy _pytest.fixtures
# destroy _pytest.cacheprovider
# destroy _pytest.capture
# destroy _pytest.debugging
# destroy _pytest.python
# destroy _pytest.python_api
# destroy _pytest.doctest
# destroy _pytest.freeze_support
# destroy _pytest.monkeypatch
# destroy _pytest.tmpdir
# destroy _pytest.pytester
# destroy _pytest.terminal
# destroy _pytest.legacypath
# destroy _pytest.logging
# destroy _pytest.recwarn
# destroy _pytest.helpconfig
# destroy _pytest.unittest
# destroy _pytest.skipping
# destroy _pytest.pastebin
# destroy _pytest.junitxml
# destroy _pytest.setuponly
# destroy _pytest.setupplan
# destroy _pytest.stepwise
# destroy _pytest.warnings
# destroy _pytest.python_path
# destroy _pytest.unraisableexception
# destroy _pytest.threadexception
# destroy _pytest.faulthandler
# cleanup[3] wiping importlib.util
# cleanup[3] wiping types
# cleanup[3] wiping importlib._abc
# cleanup[3] wiping importlib.machinery
# cleanup[3] wiping importlib
# destroy importlib._abc
# destroy importlib.machinery
# destroy importlib.util
# destroy importlib.resources
# destroy importlib.abc
# destroy importlib.metadata
# cleanup[3] wiping importlib._bootstrap_external
# cleanup[3] wiping importlib._bootstrap
# destroy _frozen_importlib_external
# cleanup[3] wiping encodings.utf_8_sig
# cleanup[3] wiping os
# cleanup[3] wiping os.path
# destroy genericpath
# cleanup[3] wiping posixpath
# cleanup[3] wiping errno
# cleanup[3] wiping stat
# cleanup[3] wiping _stat
# cleanup[3] wiping io
# cleanup[3] wiping abc
# cleanup[3] wiping _abc
# cleanup[3] wiping _signal
# destroy _signal
# cleanup[3] wiping encodings.utf_8
# cleanup[3] wiping encodings.aliases
# cleanup[3] wiping codecs
# cleanup[3] wiping _codecs
# cleanup[3] wiping time
# cleanup[3] wiping posix
# cleanup[3] wiping marshal
# cleanup[3] wiping _io
# cleanup[3] wiping _weakref
# cleanup[3] wiping _warnings
# cleanup[3] wiping _thread
# cleanup[3] wiping _imp
# destroy _imp
# cleanup[3] wiping _frozen_importlib
# cleanup[3] wiping sys
# cleanup[3] wiping builtins
# destroy readline
# destroy sys.monitoring
# destroy re._parser
# destroy _functools
# destroy copyreg
# destroy _typing
# destroy textwrap
# destroy enum
# destroy keyword
# destroy pluggy
# destroy abc
# destroy _uuid
# destroy dataclasses
# destroy locale
# destroy signal
# destroy fcntl
# destroy _posixsubprocess
# destroy selectors
# destroy pwd
# destroy grp
# destroy ntpath
# destroy _warnings
# destroy iniconfig
# destroy _pytest
# destroy _opcode
# destroy _tokenize
# destroy pluggy._tracing
# destroy shutil
# destroy _stat
# destroy operator
# destroy fnmatch
# destroy select
# destroy tempfile
# destroy inspect
# destroy json.scanner
# destroy json.decoder
# destroy json.encoder
# destroy _json
# destroy unicodedata
# destroy ast
# destroy errno
# destroy functools
# destroy importlib
# destroy marshal
# destroy struct
# destroy tokenize
# destroy _pytest.assertion.util
# destroy unittest.util
# destroy unittest.result
# destroy unittest.case
# destroy unittest.suite
# destroy unittest.signals
# destroy zlib
# destroy _io
# destroy _compression
# destroy posixpath
# destroy zipfile
# destroy contextlib
# destroy pathlib
# destroy stat
# destroy zipfile._path.glob
# destroy xml.etree.ElementPath
# destroy types
# destroy _bz2
# destroy _lzma
# destroy _elementtree
# destroy argparse
# destroy unittest.loader
# destroy unittest.runner
# destroy _struct
# destroy _heapq
# clear sys.meta_path
# clear sys.modules
# destroy _frozen_importlib
# destroy codecs
# destroy encodings.aliases
# destroy encodings.utf_8
# destroy encodings.utf_8_sig
# destroy io
# destroy traceback
# destroy warnings
# destroy weakref
# destroy collections
# destroy threading
# destroy atexit
# destroy time
# destroy math
# destroy _bisect
# destroy os
# destroy _weakref
# destroy _string
# destroy re
# destroy _random
# destroy _decimal
# destroy posix
# destroy _operator
# destroy _abc
# destroy _sre
# destroy _codecs
# destroy itertools
# destroy sys
# destroy builtins
# destroy _collections
# destroy _thread
# clear sys.audit hooks

@The-Compiler
Copy link
Member

Hmm, so readline is getting imported in your case, not for me:

import 'codeop' # <_frozen_importlib_external.SourceFileLoader object at 0x74b022f613d0>
import 'code' # <_frozen_importlib_external.SourceFileLoader object at 0x74b022f61070>
# /home/florian/.local/share/uv/python/cpython-3.13.0-linux-x86_64-gnu/lib/python3.13/__pycache__/rlcompleter.cpython-313.pyc matches /home/florian/.local/share/uv/python/cpython-3.13.0-linux-x86_64-gnu/lib/python3.13/rlcompleter.py
# code object from '/home/florian/.local/share/uv/python/cpython-3.13.0-linux-x86_64-gnu/lib/python3.13/__pycache__/rlcompleter.cpython-313.pyc'
import 'rlcompleter' # <_frozen_importlib_external.SourceFileLoader object at 0x74b022f612b0>
import 'pdb' # <_frozen_importlib_external.SourceFileLoader object at 0x74b0230d2ff0>

Maybe python -X importtime -m pytest would reveal where it's coming from? Also maybe try if installing pytest-workaround-12888 · PyPI (which forces an early readline import) helps here too.

@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 29, 2025

This is the last part of the imports

import time:       832 |       3211 | _pytest.junitxml
import time:       192 |        192 | _pytest.setuponly
import time:       163 |        163 | _pytest.setupplan
import time:       199 |        199 | _pytest.stepwise
import time:       217 |        217 | _pytest.warnings
import time:       162 |        162 | _pytest.python_path
import time:       213 |        213 | _pytest.unraisableexception
import time:       218 |        218 | _pytest.threadexception
import time:       211 |        211 | _pytest.faulthandler
import time:       199 |        199 | _pytest._argcomplete
import time:       288 |        288 | faulthandler
import time:       295 |        295 |   cmd
import time:       241 |        241 |     codeop
import time:       328 |        568 |   code
import time:       409 |        409 |     readline
import time:       296 |        704 |   rlcompleter
import time:      1383 |       2949 | pdb

@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 29, 2025

and Yes, the workaround solves the issue.

@The-Compiler The-Compiler removed the status: needs information reporter needs to provide more information; can be closed after 2 or more weeks of inactivity label Jan 29, 2025
@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 30, 2025

Would you recommend to use pytest-workaround-12888 · PyPI as a dependency to fix this problem in production?

@The-Compiler
Copy link
Member

Thanks for all the infos! It looks like this is indeed another way the issue in #12888 manifests, I missed that it got triggered by pdb doing import rlcompleter as well. I'll try to cook up a minimal example, but it might be difficult if on my machine for some reason import rlcompleter doesn't trigger the issue (anymore?).

I only happened to notice that package in the references when scrolling through that issue, but I trust both the company behind it (Sentry) as well as its author (Anthony Sottile who is a former pytest core maintainer). I'm assuming the package is mostly on PyPI for easy usage for Sentry projects, but if you're okay with that (and it e.g. potentially vanishing once they don't need it anymore), I'd say go for it (and thanks @asottile-sentry!).

The-Compiler added a commit to The-Compiler/pytest that referenced this issue Jan 30, 2025
We had a very similar workaround before for pyreadline, which had a similar
issue:

- Introduced in pytest-dev#1281
- Removed in pytest-dev#8848 for pytest-dev#8733 and pytest-dev#8847

This technically will regress the issues above, but those issues just mean that
`import readline` is broken in general, so the user should fix it instead (by
e.g. uninstalling pyreadline).

Fixes pytest-dev#12888
Fixes pytest-dev#13170
@The-Compiler
Copy link
Member

Pushed a PR with a workaround:

@asottile-sentry
Copy link

yeah that package should work well as a workaround -- all it does is insert an import during process startup via a .pth file

unfortunately we're currently stuck on an old version of pytest (due to rerunfailures) so it was necessary for us

@15r10nk
Copy link
Contributor Author

15r10nk commented Jan 31, 2025

I fixed it by adding this to my pytest_plugin.py:

# this fixes #186
import readline  # noqa

I didn't want to add an additional dependency to my project (which would probably have to be packaged by the distributions)

Thank you very much for your help.

The-Compiler added a commit that referenced this issue Feb 3, 2025
* Add readline workaround for libedit

We had a very similar workaround before for pyreadline, which had a similar
issue:

- Introduced in #1281
- Removed in #8848 for #8733 and #8847

This technically will regress the issues above, but those issues just mean that
`import readline` is broken in general, so the user should fix it instead (by
e.g. uninstalling pyreadline).

Fixes #12888
Fixes #13170

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Handle no readline on Windows

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
patchback bot pushed a commit that referenced this issue Feb 3, 2025
* Add readline workaround for libedit

We had a very similar workaround before for pyreadline, which had a similar
issue:

- Introduced in #1281
- Removed in #8848 for #8733 and #8847

This technically will regress the issues above, but those issues just mean that
`import readline` is broken in general, so the user should fix it instead (by
e.g. uninstalling pyreadline).

Fixes #12888
Fixes #13170

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Handle no readline on Windows

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
(cherry picked from commit b4009b3)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants