Skip to content

3.11 branch: column >= -1 assertion failure with pytest rewriting #94694

Open
@The-Compiler

Description

@The-Compiler

Crash report

When running pytest in e.g. the pytest repository on the current Python 3.11 branch, it aborts, perhaps similarly to #93387 or #92597 somehow...

I've been unable to get a minimal reproducer so far, but this will reproduce it:

  • git clone https://github.com/pytest-dev/pytest
  • cd pytest
  • ~/proj/cpython/python -m venv .venv (with the current 3.11 branch)
  • .venv/bin/pip install -e ".[testing]"
  • .venv/bin/pytest

I was able to bisect this to df091e1:

[3.11] GH-93662: Make sure that column offsets are correct in multi-line method calls. (GH-93673) (#93895)

cc @iritkatriel @markshannon @pablogsal

Note this (thankfully) only seems to affect --with-pydebug builds.

Error messages

This assertion seems to fail:

assert(column >= -1);

Unfortunately I haven't been able to get the column value, as it was apparently optimized out...

Python stack:

Current thread 0x00007f1b72048740 (most recent call first):
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/assertion/rewrite.py", line 361 in _rewrite_test
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/assertion/rewrite.py", line 159 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1149 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1178 in _find_and_load
  File "<frozen importlib._bootstrap>", line 1206 in _gcd_import
  File "/home/florian/proj/cpython/Lib/importlib/__init__.py", line 126 in import_module
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/pathlib.py", line 533 in import_path
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/python.py", line 608 in _importtestmodule
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/python.py", line 519 in _getobj
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/python.py", line 301 in obj
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/python.py", line 536 in _inject_setup_module_fixture
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/python.py", line 522 in collect
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 369 in <lambda>
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 338 in from_call
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 369 in pytest_make_collect_report
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 537 in collect_one_node
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 824 in genitems
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 657 in perform_collect
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 332 in pytest_collection
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 321 in _main
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 268 in wrap_session
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/main.py", line 315 in pytest_cmdline_main
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/config/__init__.py", line 164 in main
  File "/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/_pytest/config/__init__.py", line 187 in console_main
  File "/home/florian/tmp/python-pytest/.venv/bin/pytest", line 8 in <module>
[1]    822828 IOT instruction (core dumped)  ~/tmp/python-pytest/.venv/bin/pytest

C stack:

#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007ffff7c8e3d3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007ffff7c3e838 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007ffff7c28535 in __GI_abort () at abort.c:79
#4  0x00007ffff7c2845c in __assert_fail_base (fmt=0x7ffff7dbfe70 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x555555916af6 "column >= -1", file=0x555555916663 "Python/compile.c", line=7584, function=<optimized out>)
    at assert.c:92
#5  0x00007ffff7c37366 in __GI___assert_fail (assertion=assertion@entry=0x555555916af6 "column >= -1", file=file@entry=0x555555916663 "Python/compile.c", line=line@entry=7584, 
    function=function@entry=0x5555559145b0 <__PRETTY_FUNCTION__.11> "write_location_info_entry") at assert.c:101
#6  0x00005555557c7016 in write_location_info_entry (a=a@entry=0x7fffffffa9d0, i=i@entry=0x5555562812f8, isize=isize@entry=8) at Python/compile.c:7584
#7  0x00005555557c7106 in assemble_emit_location (a=a@entry=0x7fffffffa9d0, i=0x5555562812f8) at Python/compile.c:7614
#8  0x00005555557c9a7a in assemble (c=c@entry=0x7fffffffab70, addNone=addNone@entry=1) at Python/compile.c:8425
#9  0x00005555557d0bab in compiler_function (c=0x7fffffffab70, s=<optimized out>, is_async=is_async@entry=0) at Python/compile.c:2656
#10 0x00005555557d0d01 in compiler_visit_stmt (c=c@entry=0x7fffffffab70, s=0x555556318030) at Python/compile.c:4047
#11 0x00005555557d0fc8 in compiler_body (c=c@entry=0x7fffffffab70, stmts=0x55555620bdc0) at Python/compile.c:2164
#12 0x00005555557d1540 in compiler_mod (c=c@entry=0x7fffffffab70, mod=mod@entry=0x555556321b90) at Python/compile.c:2181
#13 0x00005555557d4ab1 in _PyAST_Compile (mod=mod@entry=0x555556321b90, filename=filename@entry='/home/florian/proj/pytest/testing/test_capture.py', flags=flags@entry=0x7fffffffac18, optimize=optimize@entry=-1, 
    arena=arena@entry=0x7ffff58ec820) at Python/compile.c:581
#14 0x00005555557a4d2b in builtin_compile_impl (module=module@entry=<module at remote 0x7ffff779f1d0>, 
    source=source@entry=<Module(body=[<Import(names=[<alias(name='builtins', asname='@py_builtins', lineno=1, col_offset=0) at remote 0x7ffff5d22440>], lineno=1, col_offset=0) at remote 0x7ffff5d22f80>, <Import(names=[<alias(name='_pytest.assertion.rewrite', asname='@pytest_ar', lineno=1, col_offset=0) at remote 0x7ffff5d21ef0>], lineno=1, col_offset=0) at remote 0x7ffff5d28460>, <Import(names=[<alias(name='contextlib', asname=None, lineno=1, col_offset=7, end_lineno=1, end_col_offset=17) at remote 0x7ffff5dea760>], lineno=1, col_offset=0, end_lineno=1, end_col_offset=17) at remote 0x7ffff5dea7b0>, <Import(names=[<alias(name='io', asname=None, lineno=2, col_offset=7, end_lineno=2, end_col_offset=9) at remote 0x7ffff5dea6c0>], lineno=2, col_offset=0, end_lineno=2, end_col_offset=9) at remote 0x7ffff5dea710>, <Import(names=[<alias(name='os', asname=None, lineno=3, col_offset=7, end_lineno=3, end_col_offset=9) at remote 0x7ffff5dea620>], lineno=3, col_offset=0, end_lineno=3, end_col_offset=9) at remote 0x7ffff5dea670>, <Import(names=[<...(truncated), filename='/home/florian/proj/pytest/testing/test_capture.py', mode=mode@entry=0x555555af3810 <const_str_exec+48> "exec", 
    flags=flags@entry=0, dont_inherit=dont_inherit@entry=1, optimize=-1, feature_version=-1) at Python/bltinmodule.c:818
#15 0x00005555557a5008 in builtin_compile (module=<module at remote 0x7ffff779f1d0>, args=<optimized out>, args@entry=0x7ffff7e6d7d8, nargs=nargs@entry=3, kwnames=kwnames@entry=('dont_inherit',)) at Python/clinic/bltinmodule.c.h:328
#16 0x0000555555717156 in cfunction_vectorcall_FASTCALL_KEYWORDS (func=<built-in method compile of module object at remote 0x7ffff779f1d0>, args=0x7ffff7e6d7d8, nargsf=<optimized out>, kwnames=('dont_inherit',))
    at Objects/methodobject.c:443
#17 0x00005555556d059f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<built-in method compile of module object at remote 0x7ffff779f1d0>, args=args@entry=0x7ffff7e6d7d8, 
    nargsf=9223372036854775811, kwnames=kwnames@entry=('dont_inherit',)) at ./Include/internal/pycore_call.h:92
#18 0x00005555556d0676 in PyObject_Vectorcall (callable=callable@entry=<built-in method compile of module object at remote 0x7ffff779f1d0>, args=args@entry=0x7ffff7e6d7d8, nargsf=<optimized out>, kwnames=kwnames@entry=('dont_inherit',))
    at Objects/call.c:299
#19 0x00005555557b8fef in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6d748, throwflag=<optimized out>) at Python/ceval.c:4773
#20 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6d0e8, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#21 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff6bac7e0, locals=locals@entry=0x0, args=0x7fffffffaf98, argcount=<optimized out>, kwnames=0x0) at Python/ceval.c:6421
#22 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#23 0x00005555556d059f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff6bac7e0>, args=args@entry=0x7fffffffaf98, nargsf=nargsf@entry=9223372036854775809, 
    kwnames=kwnames@entry=0x0) at ./Include/internal/pycore_call.h:92
#24 0x00005555556d06e7 in PyObject_CallOneArg (func=func@entry=<function at remote 0x7ffff6bac7e0>, 
    arg=arg@entry=<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>) at Objects/call.c:376
#25 0x00005555556dc4aa in property_descr_get (self=self@entry=<property at remote 0x7ffff6ba50f0>, 
    obj=obj@entry=<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>, type=<optimized out>)
    at Objects/descrobject.c:1630
#26 0x000055555571c830 in _PyObject_GenericGetAttrWithDict (obj=<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>, 
    name='obj', dict=dict@entry=0x0, suppress=suppress@entry=0) at Objects/object.c:1274
#27 0x000055555571cca5 in PyObject_GenericGetAttr (obj=<optimized out>, name=<optimized out>) at Objects/object.c:1362
#28 0x000055555571c317 in PyObject_GetAttr (v=v@entry=<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>, name='obj')
    Objects/object.c:917
#29 0x00005555557b3781 in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6d048, throwflag=<optimized out>) at Python/ceval.c:3468
#30 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6cdb0, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#31 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff6b60b50, locals=locals@entry=0x0, args=0x7ffff6682098, argcount=<optimized out>, kwnames=0x0) at Python/ceval.c:6421
#32 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#33 0x00005555556cfde3 in _PyVectorcall_Call (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=0x5555556d01ee <_PyFunction_Vectorcall>, callable=callable@entry=<function at remote 0x7ffff6b60b50>, tuple=tuple@entry=(<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>,), kwargs=kwargs@entry=0x0) at Objects/call.c:245
#34 0x00005555556d0180 in _PyObject_Call (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff6b60b50>, args=args@entry=(<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>,), kwargs=kwargs@entry=0x0) at Objects/call.c:328
#35 0x00005555556d01c8 in PyObject_Call (callable=callable@entry=<function at remote 0x7ffff6b60b50>, args=args@entry=(<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>,), kwargs=kwargs@entry=0x0) at Objects/call.c:355
#36 0x00005555557ab8c2 in do_call_core (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=func@entry=<function at remote 0x7ffff6b60b50>, callargs=callargs@entry=(<Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>,), kwdict=kwdict@entry=0x0, use_tracing=0) at Python/ceval.c:7318
#37 0x00005555557bbc54 in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6ccc0, throwflag=<optimized out>) at Python/ceval.c:5378
#38 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6cb78, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#39 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff7242e60, locals=locals@entry=0x0, args=0x7ffff7793e58, argcount=<optimized out>, kwnames=('collector',)) at Python/ceval.c:6421
#40 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#41 0x00005555556d1b4a in _PyObject_FastCallDictTstate (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, args=args@entry=0x7fffffffb550, nargsf=nargsf@entry=1, kwargs=kwargs@entry={'collector': <Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>}) at Objects/call.c:152
#42 0x00005555556d1d05 in _PyObject_Call_Prepend (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, 
    obj=obj@entry=<_HookCaller(name='pytest_make_collect_report', _wrappers=[<HookImpl(function=<method at remote 0x7ffff67ae630>, argnames=('collector',), kwargnames=(), plugin=<CaptureManager(_method='fd', _global_capturing=<MultiCapture(in_=<FDCapture(targetfd=0, targetfd_invalid=None, targetfd_save=3, tmpfile=<_io.TextIOWrapper at remote 0x7ffff6911400>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe7b0>, name='stdin', tmpfile=<DontReadFromInput() at remote 0x7ffff67b7df0>, _state='started') at remote 0x7ffff67a13c0>, _state='started') at remote 0x7ffff67a1230>, out=<FDCapture(targetfd=1, targetfd_invalid=None, targetfd_save=5, tmpfile=<EncodedFile at remote 0x7ffff6911220>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe8a0>, name='stdout', tmpfile=<...>, _state='started') at remote 0x7ffff67b7e90>, _state='started') at remote 0x7ffff67b7990>, err=<FDCapture(targetfd=2, targetfd_invalid=None, targetfd_save=7, tmpfile=<EncodedFile at remote 0x7ffff67726c0>, syscapture=<SysCapture(...(truncated), args=args@entry=(), kwargs=kwargs@entry={'collector': <Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>}) at Objects/call.c:482
#43 0x0000555555739abc in slot_tp_call (
    self=<_HookCaller(name='pytest_make_collect_report', _wrappers=[<HookImpl(function=<method at remote 0x7ffff67ae630>, argnames=('collector',), kwargnames=(), plugin=<CaptureManager(_method='fd', _global_capturing=<MultiCapture(in_=<FDCapture(targetfd=0, targetfd_invalid=None, targetfd_save=3, tmpfile=<_io.TextIOWrapper at remote 0x7ffff6911400>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe7b0>, name='stdin', tmpfile=<DontReadFromInput() at remote 0x7ffff67b7df0>, _state='started') at remote 0x7ffff67a13c0>, _state='started') at remote 0x7ffff67a1230>, out=<FDCapture(targetfd=1, targetfd_invalid=None, targetfd_save=5, tmpfile=<EncodedFile at remote 0x7ffff6911220>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe8a0>, name='stdout', tmpfile=<...>, _state='started') at remote 0x7ffff67b7e90>, _state='started') at remote 0x7ffff67b7990>, err=<FDCapture(targetfd=2, targetfd_invalid=None, targetfd_save=7, tmpfile=<EncodedFile at remote 0x7ffff67726c0>, syscapture=<SysCapture(...(truncated), args=(), kwds={'collector': <Module(keywords=<NodeKeywords at remote 0x7ffff6683250>, own_markers=[], extra_keyword_matches=set(), stash=<Stash at remote 0x7ffff6698e50>) at remote 0x7ffff66a43c0>}) at Objects/typeobject.c:7598
#44 0x00005555556d03e3 in _PyObject_MakeTpCall (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_make_collect_report', _wrappers=[<HookImpl(function=<method at remote 0x7ffff67ae630>, argnames=('collector',), kwargnames=(), plugin=<CaptureManager(_method='fd', _global_capturing=<MultiCapture(in_=<FDCapture(targetfd=0, targetfd_invalid=None, targetfd_save=3, tmpfile=<_io.TextIOWrapper at remote 0x7ffff6911400>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe7b0>, name='stdin', tmpfile=<DontReadFromInput() at remote 0x7ffff67b7df0>, _state='started') at remote 0x7ffff67a13c0>, _state='started') at remote 0x7ffff67a1230>, out=<FDCapture(targetfd=1, targetfd_invalid=None, targetfd_save=5, tmpfile=<EncodedFile at remote 0x7ffff6911220>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe8a0>, name='stdout', tmpfile=<...>, _state='started') at remote 0x7ffff67b7e90>, _state='started') at remote 0x7ffff67b7990>, err=<FDCapture(targetfd=2, targetfd_invalid=None, targetfd_save=7, tmpfile=<EncodedFile at remote 0x7ffff67726c0>, syscapture=<SysCapture(...(truncated), args=args@entry=0x7ffff7e6cb60, nargs=<optimized out>, keywords=keywords@entry=('collector',)) at Objects/call.c:214
#45 0x00005555556d061f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_make_collect_report', _wrappers=[<HookImpl(function=<method at remote 0x7ffff67ae630>, argnames=('collector',), kwargnames=(), plugin=<CaptureManager(_method='fd', _global_capturing=<MultiCapture(in_=<FDCapture(targetfd=0, targetfd_invalid=None, targetfd_save=3, tmpfile=<_io.TextIOWrapper at remote 0x7ffff6911400>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe7b0>, name='stdin', tmpfile=<DontReadFromInput() at remote 0x7ffff67b7df0>, _state='started') at remote 0x7ffff67a13c0>, _state='started') at remote 0x7ffff67a1230>, out=<FDCapture(targetfd=1, targetfd_invalid=None, targetfd_save=5, tmpfile=<EncodedFile at remote 0x7ffff6911220>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe8a0>, name='stdout', tmpfile=<...>, _state='started') at remote 0x7ffff67b7e90>, _state='started') at remote 0x7ffff67b7990>, err=<FDCapture(targetfd=2, targetfd_invalid=None, targetfd_save=7, tmpfile=<EncodedFile at remote 0x7ffff67726c0>, syscapture=<SysCapture(...(truncated), args=args@entry=0x7ffff7e6cb60, nargsf=<optimized out>, kwnames=kwnames@entry=('collector',)) at ./Include/internal/pycore_call.h:90
#46 0x00005555556d0676 in PyObject_Vectorcall (
    callable=callable@entry=<_HookCaller(name='pytest_make_collect_report', _wrappers=[<HookImpl(function=<method at remote 0x7ffff67ae630>, argnames=('collector',), kwargnames=(), plugin=<CaptureManager(_method='fd', _global_capturing=<MultiCapture(in_=<FDCapture(targetfd=0, targetfd_invalid=None, targetfd_save=3, tmpfile=<_io.TextIOWrapper at remote 0x7ffff6911400>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe7b0>, name='stdin', tmpfile=<DontReadFromInput() at remote 0x7ffff67b7df0>, _state='started') at remote 0x7ffff67a13c0>, _state='started') at remote 0x7ffff67a1230>, out=<FDCapture(targetfd=1, targetfd_invalid=None, targetfd_save=5, tmpfile=<EncodedFile at remote 0x7ffff6911220>, syscapture=<SysCapture(_old=<_io.TextIOWrapper at remote 0x7ffff77fe8a0>, name='stdout', tmpfile=<...>, _state='started') at remote 0x7ffff67b7e90>, _state='started') at remote 0x7ffff67b7990>, err=<FDCapture(targetfd=2, targetfd_invalid=None, targetfd_save=7, tmpfile=<EncodedFile at remote 0x7ffff67726c0>, syscapture=<SysCapture(...(truncated), args=args@entry=0x7ffff7e6cb60, nargsf=<optimized out>, kwnames=kwnames@entry=('collector',)) at Objects/call.c:299
#47 0x00005555557b8fef in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6cae8, throwflag=<optimized out>) at Python/ceval.c:4773
#48 0x00005555556e64ff in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff6684ca0, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#49 0x00005555556e6831 in gen_send_ex2 (gen=0x7ffff6684c50, arg=arg@entry=0x0, presult=presult@entry=0x7fffffffb840, exc=exc@entry=0, closing=closing@entry=0) at Objects/genobject.c:219
#50 0x00005555556e7e64 in gen_iternext (gen=<optimized out>) at Objects/genobject.c:594
#51 0x00005555556f93d3 in list_extend (self=self@entry=0x7ffff676b430, iterable=iterable@entry=<generator at remote 0x7ffff6684c50>) at Objects/listobject.c:960
#52 0x00005555557bb04e in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c9f8, throwflag=<optimized out>) at Python/ceval.c:5223
#53 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c998, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#54 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff6b615a0, locals=locals@entry=0x0, args=0x7ffff6681878, argcount=<optimized out>, kwnames=0x0) at Python/ceval.c:6421
#55 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#56 0x00005555556cfde3 in _PyVectorcall_Call (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=0x5555556d01ee <_PyFunction_Vectorcall>, callable=callable@entry=<function at remote 0x7ffff6b615a0>, tuple=tuple@entry=(<Session at remote 0x7ffff698c180>,), kwargs=kwargs@entry=0x0) at Objects/call.c:245
#57 0x00005555556d0180 in _PyObject_Call (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff6b615a0>, args=args@entry=(<Session at remote 0x7ffff698c180>,), kwargs=kwargs@entry=0x0) at Objects/call.c:328
#58 0x00005555556d01c8 in PyObject_Call (callable=callable@entry=<function at remote 0x7ffff6b615a0>, args=args@entry=(<Session at remote 0x7ffff698c180>,), kwargs=kwargs@entry=0x0) at Objects/call.c:355
#59 0x00005555557ab8c2 in do_call_core (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=func@entry=<function at remote 0x7ffff6b615a0>, callargs=callargs@entry=(<Session at remote 0x7ffff698c180>,), kwdict=kwdict@entry=0x0, use_tracing=0) at Python/ceval.c:7318
#60 0x00005555557bbc54 in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c8a8, throwflag=<optimized out>) at Python/ceval.c:5378
#61 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c760, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#62 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff7242e60, locals=locals@entry=0x0, args=0x7ffff7792da8, argcount=<optimized out>, kwnames=('session',)) at Python/ceval.c:6421
#63 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#64 0x00005555556d1b4a in _PyObject_FastCallDictTstate (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, args=args@entry=0x7fffffffbd50, nargsf=nargsf@entry=1, kwargs=kwargs@entry={'session': <Session at remote 0x7ffff698c180>}) at Objects/call.c:152
#65 0x00005555556d1d05 in _PyObject_Call_Prepend (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, 
    obj=obj@entry=<_HookCaller(name='pytest_collection', _wrappers=[<HookImpl(function=<method at remote 0x7ffff68afd10>, argnames=(), kwargnames=(...), plugin=<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, ...(truncated), args=args@entry=(), kwargs=kwargs@entry={'session': <Session at remote 0x7ffff698c180>}) at Objects/call.c:482
#66 0x0000555555739abc in slot_tp_call (
    self=<_HookCaller(name='pytest_collection', _wrappers=[<HookImpl(function=<method at remote 0x7ffff68afd10>, argnames=(), kwargnames=(...), plugin=<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, ...(truncated), args=(), kwds={'session': <Session at remote 0x7ffff698c180>}) at Objects/typeobject.c:7598
#67 0x00005555556d03e3 in _PyObject_MakeTpCall (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_collection', _wrappers=[<HookImpl(function=<method at remote 0x7ffff68afd10>, argnames=(), kwargnames=(...), plugin=<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, ...(truncated), args=args@entry=0x7ffff7e6c758, nargs=<optimized out>, keywords=keywords@entry=('session',)) at Objects/call.c:214
#68 0x00005555556d061f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_collection', _wrappers=[<HookImpl(function=<method at remote 0x7ffff68afd10>, argnames=(), kwargnames=(...), plugin=<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, ...(truncated), args=args@entry=0x7ffff7e6c758, nargsf=<optimized out>, kwnames=kwnames@entry=('session',)) at ./Include/internal/pycore_call.h:90
#69 0x00005555556d0676 in PyObject_Vectorcall (
    callable=callable@entry=<_HookCaller(name='pytest_collection', _wrappers=[<HookImpl(function=<method at remote 0x7ffff68afd10>, argnames=(), kwargnames=(...), plugin=<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, ...(truncated), args=args@entry=0x7ffff7e6c758, nargsf=<optimized out>, kwnames=kwnames@entry=('session',)) at Objects/call.c:299
#70 0x00005555557b8fef in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c6f0, throwflag=<optimized out>) at Python/ceval.c:4773
#71 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c5b8, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#72 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff6b61440, locals=locals@entry=0x0, args=0x7ffff6775238, argcount=<optimized out>, kwnames=0x0) at Python/ceval.c:6421
#73 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#74 0x00005555556cfde3 in _PyVectorcall_Call (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=0x5555556d01ee <_PyFunction_Vectorcall>, callable=callable@entry=<function at remote 0x7ffff6b61440>, 
    tuple=tuple@entry=(<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst=False, ca...(truncated), kwargs=kwargs@entry=0x0) at Objects/call.c:245
#75 0x00005555556d0180 in _PyObject_Call (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff6b61440>, 
    args=args@entry=(<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst=False, ca...(truncated), kwargs=kwargs@entry=0x0) at Objects/call.c:328
#76 0x00005555556d01c8 in PyObject_Call (callable=callable@entry=<function at remote 0x7ffff6b61440>, 
    args=args@entry=(<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst=False, ca...(truncated), kwargs=kwargs@entry=0x0) at Objects/call.c:355
#77 0x00005555557ab8c2 in do_call_core (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=func@entry=<function at remote 0x7ffff6b61440>, 
    callargs=callargs@entry=(<Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst=False, ca...(truncated), kwdict=kwdict@entry=0x0, use_tracing=0) at Python/ceval.c:7318
#78 0x00005555557bbc54 in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c4c8, throwflag=<optimized out>) at Python/ceval.c:5378
#79 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c380, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#80 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff7242e60, locals=locals@entry=0x0, args=0x7ffff7792c28, argcount=<optimized out>, kwnames=('config',)) at Python/ceval.c:6421
--Type <RET> for more, q to quit, c to continue without paging--
#81 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#82 0x00005555556d1b4a in _PyObject_FastCallDictTstate (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, args=args@entry=0x7fffffffc350, nargsf=nargsf@entry=1, 
    kwargs=kwargs@entry={'config': <Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst...(truncated)) at Objects/call.c:152
#83 0x00005555556d1d05 in _PyObject_Call_Prepend (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff7242e60>, 
    obj=obj@entry=<_HookCaller(name='pytest_cmdline_main', _wrappers=[], _nonwrappers=[<HookImpl(function=<function at remote 0x7ffff6b61440>, argnames=('config',), kwargnames=(), plugin=<module at remote 0x7ffff6dd0050>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='main', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68ba810>, <HookImpl(function=<function at remote 0x7ffff68a9230>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff68c3d70>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='helpconfig', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68c4b50>, <HookImpl(function=<function at remote 0x7ffff6b77e30>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff6b7ddf0>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': F...(truncated), args=args@entry=(), 
    kwargs=kwargs@entry={'config': <Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst...(truncated)) at Objects/call.c:482
#84 0x0000555555739abc in slot_tp_call (
    self=<_HookCaller(name='pytest_cmdline_main', _wrappers=[], _nonwrappers=[<HookImpl(function=<function at remote 0x7ffff6b61440>, argnames=('config',), kwargnames=(), plugin=<module at remote 0x7ffff6dd0050>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='main', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68ba810>, <HookImpl(function=<function at remote 0x7ffff68a9230>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff68c3d70>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='helpconfig', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68c4b50>, <HookImpl(function=<function at remote 0x7ffff6b77e30>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff6b7ddf0>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': F...(truncated), args=(), 
    kwds={'config': <Config(option=<Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, keepduplicates=False, collect_in_virtualenv=False, importmode='prepend', basetemp=None, durations=None, durations_min=<float at remote 0x7ffff7792500>, version=0, plugins=['pytester'], traceconfig=False, showfixtures=False, show_fixtures_per_test=False, verbose=0, no_header=False, no_summary=False, reportchars='fEX', disable_warnings=False, showlocals=False, tbstyle='auto', showcapture='all', fulltrace=False, color='auto', code_highlight='yes', capture='fd', runxfail=False, pastebin=None, assertmode='rewrite', xmlpath=None, junitprefix=None, doctestmodules=False, doctestreport='udiff', doctestglob=[], doctest_ignore_import_errors=False, doctest_continue_on_failure=False, last_failed_no_failures='all', stepwise=False, stepwise_skip=False, lsof=False, runpytest='inprocess', markers=False, usepdb=False, usepdb_cls=None, trace=False, lf=False, failedfirst=False, newfirst...(truncated)) at Objects/typeobject.c:7598
#85 0x00005555556d03e3 in _PyObject_MakeTpCall (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_cmdline_main', _wrappers=[], _nonwrappers=[<HookImpl(function=<function at remote 0x7ffff6b61440>, argnames=('config',), kwargnames=(), plugin=<module at remote 0x7ffff6dd0050>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='main', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68ba810>, <HookImpl(function=<function at remote 0x7ffff68a9230>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff68c3d70>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='helpconfig', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68c4b50>, <HookImpl(function=<function at remote 0x7ffff6b77e30>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff6b7ddf0>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': F...(truncated), args=args@entry=0x7ffff7e6c358, nargs=<optimized out>, keywords=keywords@entry=('config',)) at Objects/call.c:214
#86 0x00005555556d061f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, 
    callable=callable@entry=<_HookCaller(name='pytest_cmdline_main', _wrappers=[], _nonwrappers=[<HookImpl(function=<function at remote 0x7ffff6b61440>, argnames=('config',), kwargnames=(), plugin=<module at remote 0x7ffff6dd0050>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='main', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68ba810>, <HookImpl(function=<function at remote 0x7ffff68a9230>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff68c3d70>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='helpconfig', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68c4b50>, <HookImpl(function=<function at remote 0x7ffff6b77e30>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff6b7ddf0>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': F...(truncated), args=args@entry=0x7ffff7e6c358, nargsf=<optimized out>, kwnames=kwnames@entry=('config',)) at ./Include/internal/pycore_call.h:90
#87 0x00005555556d0676 in PyObject_Vectorcall (
    callable=callable@entry=<_HookCaller(name='pytest_cmdline_main', _wrappers=[], _nonwrappers=[<HookImpl(function=<function at remote 0x7ffff6b61440>, argnames=('config',), kwargnames=(), plugin=<module at remote 0x7ffff6dd0050>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='main', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68ba810>, <HookImpl(function=<function at remote 0x7ffff68a9230>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff68c3d70>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': False, 'hookwrapper': False, 'specname': None}, plugin_name='helpconfig', tryfirst=False, trylast=False, optionalhook=False, hookwrapper=False, specname=None) at remote 0x7ffff68c4b50>, <HookImpl(function=<function at remote 0x7ffff6b77e30>, argnames=('config',), kwargnames=(...), plugin=<module at remote 0x7ffff6b7ddf0>, opts={'tryfirst': False, 'trylast': False, 'optionalhook': F...(truncated), args=args@entry=0x7ffff7e6c358, nargsf=<optimized out>, kwnames=kwnames@entry=('config',)) at Objects/call.c:299
#88 0x00005555557b8fef in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c2a8, throwflag=<optimized out>) at Python/ceval.c:4773
#89 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c1b8, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#90 0x00005555557bd7ce in _PyEval_Vector (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=func@entry=0x7ffff7681b20, 
    locals=locals@entry={'__name__': '__main__', '__doc__': 'The pytest entry point.', '__package__': 'pytest', '__loader__': <SourceFileLoader(name='pytest.__main__', path='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py') at remote 0x7ffff6aa67c0>, '__spec__': <ModuleSpec(name='pytest.__main__', loader=<...>, origin='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', loader_state=None, submodule_search_locations=None, _uninitialized_submodules=[], _set_fileattr=True, _cached='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc') at remote 0x7ffff75161d0>, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff779f1d0>, '__file__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', '__cached__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc', 'pytest': <module at remote 0x7ffff7518890>}, args=args@entry=0x0, argcount=argcount@entry=0, kwnames=kwnames@entry=0x0) at Python/ceval.c:6421
#91 0x00005555557bd8e3 in PyEval_EvalCode (co=co@entry=<code at remote 0x7ffff6a679a0>, 
    globals=globals@entry={'__name__': '__main__', '__doc__': 'The pytest entry point.', '__package__': 'pytest', '__loader__': <SourceFileLoader(name='pytest.__main__', path='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py') at remote 0x7ffff6aa67c0>, '__spec__': <ModuleSpec(name='pytest.__main__', loader=<...>, origin='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', loader_state=None, submodule_search_locations=None, _uninitialized_submodules=[], _set_fileattr=True, _cached='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc') at remote 0x7ffff75161d0>, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff779f1d0>, '__file__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', '__cached__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc', 'pytest': <module at remote 0x7ffff7518890>}, 
    locals=locals@entry={'__name__': '__main__', '__doc__': 'The pytest entry point.', '__package__': 'pytest', '__loader__': <SourceFileLoader(name='pytest.__main__', path='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py') at remote 0x7ffff6aa67c0>, '__spec__': <ModuleSpec(name='pytest.__main__', loader=<...>, origin='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', loader_state=None, submodule_search_locations=None, _uninitialized_submodules=[], _set_fileattr=True, _cached='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc') at remote 0x7ffff75161d0>, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff779f1d0>, '__file__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', '__cached__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc', 'pytest': <module at remote 0x7ffff7518890>}) at Python/ceval.c:1155
#92 0x00005555557a459b in builtin_exec_impl (module=module@entry=<module at remote 0x7ffff779f1d0>, source=<code at remote 0x7ffff6a679a0>, 
    globals={'__name__': '__main__', '__doc__': 'The pytest entry point.', '__package__': 'pytest', '__loader__': <SourceFileLoader(name='pytest.__main__', path='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py') at remote 0x7ffff6aa67c0>, '__spec__': <ModuleSpec(name='pytest.__main__', loader=<...>, origin='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', loader_state=None, submodule_search_locations=None, _uninitialized_submodules=[], _set_fileattr=True, _cached='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc') at remote 0x7ffff75161d0>, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff779f1d0>, '__file__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', '__cached__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc', 'pytest': <module at remote 0x7ffff7518890>}, 
    locals={'__name__': '__main__', '__doc__': 'The pytest entry point.', '__package__': 'pytest', '__loader__': <SourceFileLoader(name='pytest.__main__', path='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py') at remote 0x7ffff6aa67c0>, '__spec__': <ModuleSpec(name='pytest.__main__', loader=<...>, origin='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', loader_state=None, submodule_search_locations=None, _uninitialized_submodules=[], _set_fileattr=True, _cached='/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc') at remote 0x7ffff75161d0>, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff779f1d0>, '__file__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__main__.py', '__cached__': '/home/florian/tmp/python-pytest/.venv/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc', 'pytest': <module at remote 0x7ffff7518890>}, closure=0x0) at Python/bltinmodule.c:1075
#93 0x00005555557a46b4 in builtin_exec (module=<module at remote 0x7ffff779f1d0>, args=<optimized out>, args@entry=0x7ffff7e6c180, nargs=nargs@entry=2, kwnames=kwnames@entry=0x0) at Python/clinic/bltinmodule.c.h:465
#94 0x0000555555717156 in cfunction_vectorcall_FASTCALL_KEYWORDS (func=<built-in method exec of module object at remote 0x7ffff779f1d0>, args=0x7ffff7e6c180, nargsf=<optimized out>, kwnames=0x0) at Objects/methodobject.c:443
#95 0x00005555556d059f in _PyObject_VectorcallTstate (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<built-in method exec of module object at remote 0x7ffff779f1d0>, args=args@entry=0x7ffff7e6c180, nargsf=9223372036854775810, kwnames=kwnames@entry=0x0) at ./Include/internal/pycore_call.h:92
#96 0x00005555556d0676 in PyObject_Vectorcall (callable=callable@entry=<built-in method exec of module object at remote 0x7ffff779f1d0>, args=args@entry=0x7ffff7e6c180, nargsf=<optimized out>, kwnames=kwnames@entry=0x0) at Objects/call.c:299
#97 0x00005555557b8fef in _PyEval_EvalFrameDefault (tstate=0x555555b2f5e8 <_PyRuntime+166312>, frame=0x7ffff7e6c0d8, throwflag=<optimized out>) at Python/ceval.c:4773
#98 0x00005555557bd6cd in _PyEval_EvalFrame (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, frame=frame@entry=0x7ffff7e6c020, throwflag=throwflag@entry=0) at ./Include/internal/pycore_ceval.h:72
#99 0x00005555557bd7ce in _PyEval_Vector (tstate=0x555555b2f5e8 <_PyRuntime+166312>, func=0x7ffff751eaf0, locals=locals@entry=0x0, args=0x7ffff7689418, argcount=<optimized out>, kwnames=0x0) at Python/ceval.c:6421
#100 0x00005555556d023e in _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:393
#101 0x00005555556cfde3 in _PyVectorcall_Call (tstate=tstate@entry=0x555555b2f5e8 <_PyRuntime+166312>, func=0x5555556d01ee <_PyFunction_Vectorcall>, callable=callable@entry=<function at remote 0x7ffff751eaf0>, tuple=tuple@entry=('pytest', True), kwargs=kwargs@entry=0x0) at Objects/call.c:245
#102 0x00005555556d0180 in _PyObject_Call (tstate=0x555555b2f5e8 <_PyRuntime+166312>, callable=callable@entry=<function at remote 0x7ffff751eaf0>, args=args@entry=('pytest', True), kwargs=kwargs@entry=0x0) at Objects/call.c:328
#103 0x00005555556d01c8 in PyObject_Call (callable=callable@entry=<function at remote 0x7ffff751eaf0>, args=args@entry=('pytest', True), kwargs=kwargs@entry=0x0) at Objects/call.c:355
#104 0x00005555558223fe in pymain_run_module (modname=<optimized out>, set_argv0=set_argv0@entry=1) at Modules/main.c:300
#105 0x0000555555822edf in pymain_run_python (exitcode=exitcode@entry=0x7fffffffcae4) at Modules/main.c:595
#106 0x000055555582316e in Py_RunMain () at Modules/main.c:680
#107 0x00005555558231e8 in pymain_main (args=args@entry=0x7fffffffcb40) at Modules/main.c:710
#108 0x00005555558232b7 in Py_BytesMain (argc=<optimized out>, argv=<optimized out>) at Modules/main.c:734
#109 0x0000555555644732 in main (argc=<optimized out>, argv=<optimized out>) at ./Programs/python.c:15

Your environment

  • CPython versions tested on: Current 3.11 branch (cb4359c and df091e1)
  • Operating system and architecture: Archlinux x86_64

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.12only security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-crashA hard crash of the interpreter, possibly with a core dump

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions