Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32.1k
Description
Crash report
What happened?
I'm trying to run thequtebrowser testsuite with Python 3.13, and am running into an issue where a test reproducibly fails (usually by crashing the interpreter), but only when I run the entire testsuite (not when run in isolation, or even just the tests in the same subfolder).
Given those circumstances, it seems tricky to get to a minimal example. I thought I'd open this issue in the hope of distilling things down further, and arriving at such an example. In the meantime, the best reproduction steps I can come up with are:
git clone https://github.com/qutebrowser/qutebrowsercd qutebrowsertox -e py313-pyqt66 -- tests/unit -v -s
A few tests will fail with a--with-pydebug
build due to timeouts, those can be ignored. After a while (~13 minutes with--with-pydebug
under gdb on my system), one of the tests intests/unit/mainwindow/test_messageview.py
will fail, usually due to afailing assertion becausePyUnicode_KIND
did return an invalid value.
Failing Python code:
value = value.replace('default_family', self.default_family)
stacktrace:
#0 0x00007211a3fda32c in ??? () at /usr/lib/libc.so.6#1 0x00007211a3f896c8 in raise () at /usr/lib/libc.so.6#2 0x00007211a3f89770 in <signal handler called> () at /usr/lib/libc.so.6#3 0x00007211a3fda32c in ??? () at /usr/lib/libc.so.6#4 0x00007211a3f896c8 in raise () at /usr/lib/libc.so.6#5 0x00007211a3f714b8 in abort () at /usr/lib/libc.so.6#6 0x00007211a3f713dc in ??? () at /usr/lib/libc.so.6#7 0x00007211a3f81d46 in __assert_fail () at /usr/lib/libc.so.6#8 0x00007211a389feb4 in PyUnicode_MAX_CHAR_VALUE (op=<optimized out>) at ./Include/cpython/unicodeobject.h:374#9 0x00007211a39ab346 in PyUnicode_MAX_CHAR_VALUE (op=<optimized out>) at ./Include/cpython/unicodeobject.h:371#10 replace (self=Python Exception <class 'gdb.error'>: There is no member named ready.,str1=PythonException<class'gdb.error'>:Thereisnomembernamedready.,str2=<unknownatremote0x72110f89c130>,maxcount=<optimizedout>)atObjects/unicodeobject.c:10133#11 0x00007211a388e6e6 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0<_PyRuntime+294032>,frame=0x7211a414be50,throwflag=6)atPython/generated_cases.c.h:1688#12 0x00007211a3a1a488 in _PyObject_VectorcallTstate (kwnames=0x0,nargsf=2,args=0x7ffecd2707a0,callable=<functionatremote0x72118e52c7d0>,tstate=0x7211a3ecb1f0<_PyRuntime+294032>)at ./Include/internal/pycore_call.h:168#13 PyObject_Vectorcall (kwnames=0x0, nargsf=2, args=0x7ffecd2707a0, callable=<function at remote 0x72118e52c7d0>)atObjects/call.c:327#14 call_attribute (name=Python Exception <class 'gdb.error'>: There is no member named ready.,attr=<functionatremote0x72118e52c7d0>,self=<optimizedout>)atObjects/typeobject.c:9435#15 call_attribute (name=Python Exception <class 'gdb.error'>: There is no member named ready.,attr=<functionatremote0x72118e52c7d0>,self=<optimizedout>)atObjects/typeobject.c:9429#16 _Py_slot_tp_getattr_hook (self=<optimized out>, name=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9485#17 0x00007211a3a1b123 in PyObject_GetAttr (v=Python Exception <class 'AssertionError'>: ,name=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/object.c:1175#18 0x00007211a3892454 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0<_PyRuntime+294032>,frame=0x7211a414bc98,throwflag=6)atPython/generated_cases.c.h:1165#19 0x00007211a3c3d04d in _PyEval_EvalFrame (throwflag=0,frame=0x7211198c8208,tstate=0x7211a3ecb1f0<_PyRuntime+294032>)at ./Include/internal/pycore_ceval.h:119#20 gen_send_ex2 (gen=0x7211198c81c0,arg=arg@entry=0x0,presult=presult@entry=0x7ffecd270a90,exc=exc@entry=0,closing=closing@entry=0)atObjects/genobject.c:229#21 0x00007211a3c3d242 in gen_iternext (gen=<optimized out>) at Objects/genobject.c:589#22 0x00007211a3acbb60 in list_extend_iter_lock_held (iterable=<generatoratremote0x7211198c81c0>,self=0x72110f8d1770)atObjects/listobject.c:1231#23 _list_extend (self=self@entry=0x72110f8d1770, iterable=iterable@entry=<generator at remote 0x7211198c81c0>)atObjects/listobject.c:1404#24 0x00007211a3acc7b7 in list_extend (iterable=<generator at remote 0x7211198c81c0>, self=0x72110f8d1770)atObjects/listobject.c:1430#25 _PyList_Extend (iterable=<generator at remote 0x7211198c81c0>, self=0x72110f8d1770) at Objects/listobject.c:1432#26 PySequence_List (v=<generator at remote 0x7211198c81c0>) at Objects/abstract.c:2135#27 0x00007211a3ad6128 in PySequence_Fast (m=0x7211a3cae034 "can only join an iterable", v=<optimized out>)atObjects/abstract.c:2166#28 PySequence_Fast (v=<optimized out>, m=0x7211a3cae034 "can only join an iterable") at Objects/abstract.c:2145#29 0x00007211a3ad81bf in PyUnicode_Join (separator=Python Exception <class 'gdb.error'>: There is no member named ready.,seq=<optimizedout>)atObjects/unicodeobject.c:9557--Type<RET>formore,qtoquit,ctocontinuewithoutpaging--#30 0x00007211a3892ba1 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414bbe0, throwflag=6) at Python/generated_cases.c.h:1264#31 0x00007211a3a10d2a in PyObject_Call (kwargs=0x0, args=Python Exception <class 'gdb.error'>: There is no member named ready.,callable=<functionatremote0x72118e3ed790>)atObjects/call.c:373#32 bounded_lru_cache_wrapper (self=0x72118e3ed850, args=Python Exception <class 'gdb.error'>: There is no member named ready.,kwds=0x0)at ./Modules/_functoolsmodule.c:1050#33 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=Python Exception <class 'gdb.error'>: There is no member named ready.,args=<optimizedout>,nargs=1,keywords=<optimizedout>)atObjects/call.c:242#34 0x00007211a388d023 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414baf0, throwflag=6) at Python/generated_cases.c.h:1837#35 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x72118e3edd90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 _hook.py'...#36 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=callable@entry=<function at remote 0x72118e3edd90>, obj=obj@entry=Python Exception <class 'gdb.error'>: There is no member named ready.,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#37 0x00007211a3a1a645 in slot_tp_init (self=Python Exception <class 'gdb.error'>: There is no member named ready.,args=(),kwds=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/typeobject.c:9646#38 0x00007211a39afafd in type_call (self=<PyQt6.sip.wrappertype at remote 0x5e3a1fe4e720>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:1909#39 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<PyQt6.sip.wrappertype at remote 0x5e3a1fe4e720>, args=<optimized out>, nargs=0, keywords=<optimized out>) at Objects/call.c:242#40 0x00007211a3884cc8 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414b880, throwflag=6) at Python/generated_cases.c.h:1500#41 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x7211a2b85d90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 piling '/home/florian/proj/aur/rixx/python313/pkg/python313/usr/lib/python3.13/test/test_importlib/import_/test_hel#42 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7211a2b85d90>,obj=obj@entry=<HookCalleratremote0x7211a2395d30>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#43 0x00007211a3a17ff5 in slot_tp_call (self=<HookCaller at remote 0x7211a2395d30>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#44 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<HookCaller at remote 0x7211a2395d30>, args=<optimized out>, nargs=0, keywords=<optimized out>) at Objects/call.c:242#45 0x00007211a3884cc8 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414b370, throwflag=6) at Python/generated_cases.c.h:1500#46 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x7211a2b85d90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 es/example2/example2/__init__.py'...#47 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7211a2b85d90>,obj=obj@entry=<HookCalleratremote0x7211a23964b0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#48 0x00007211a3a17ff5 in slot_tp_call (self=<HookCaller at remote 0x7211a23964b0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#49 0x00007211a3a0e1ee in _PyObject_Call (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<HookCaller at remote 0x7211a23964b0>, args=(), kwargs=<optimized out>) at Objects/call.c:361#50 0x00007211a3881380 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414b008, throwflag=6) at Python/generated_cases.c.h:1353#51 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x7211a2b85d90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 a_namespace_pkg/foo/one.py'...#52 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7211a2b85d90>,obj=obj@entry=<HookCalleratremote0x7211a2396b70>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#53 0x00007211a3a17ff5 in slot_tp_call (self=<HookCaller at remote 0x7211a2396b70>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#54 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<HookCaller at remote 0x7211a2396b70>, args=<optimized out>, nargs=0, keywords=<optimized out>) at Objects/call.c:242#55 0x00007211a3884cc8 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414aa10, throwflag=6) at Python/generated_cases.c.h:1500#56 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x7211a2b85d90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 piling '/home/florian/proj/aur/rixx/python313/pkg/python313/usr/lib/python3.13/test/test_importlib/namespace_pkgs/p#57 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7211a2b85d90>,obj=obj@entry=<HookCalleratremote0x7211a2396f90>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#58 0x00007211a3a17ff5 in slot_tp_call (self=<HookCaller at remote 0x7211a2396f90>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#59 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<HookCaller at remote 0x7211a2396f90>, args=<optimized out>, nargs=0, keywords=<optimized out>) at Objects/call.c:242#60 0x00007211a3884cc8 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414a730, throwflag=6) at Python/generated_cases.c.h:1500#61 0x00007211a39ece98 in _PyObject_VectorcallDictTstate (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<function at remote 0x7211a2b85d90>, args=<optimized out>, nargsf=<optimized out>, kwargs=<optimized out>) at Objects/call.c:146 piling '/home/florian/proj/aur/rixx/python313/pkg/python313/usr/lib/python3.13/test/test_httpservers.py'...#62 0x00007211a39ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7211a3ecb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7211a2b85d90>,obj=obj@entry=<HookCalleratremote0x7211a238b2f0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#63 0x00007211a3a17ff5 in slot_tp_call (self=<HookCaller at remote 0x7211a238b2f0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#64 0x00007211a39ec88d in _PyObject_MakeTpCall (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, callable=<HookCaller at remote 0x7211a238b2f0>, args=<optimized out>, nargs=0, keywords=<optimized out>) at Objects/call.c:242#65 0x00007211a3884cc8 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414a2b0, throwflag=6) at Python/generated_cases.c.h:1500#66 0x00007211a3c3f6d6 in PyEval_EvalCode (co=<code at remote 0x7211a25a96d0>, globals=<optimized out>, locals=Python Exception <class 'gdb.error'>: There is no member named ready.)atPython/ceval.c:598#67 0x00007211a3c51950 in builtin_exec_impl (module=<optimized out>, closure=<optimized out>, locals=Python Exception <class 'gdb.error'>: There is no member named ready.,globals=PythonException<class'gdb.error'>:Thereisnomembernamedready.,source=<codeatremote0x7211a25a96d0>)atPython/bltinmodule.c:1145#68 builtin_exec (module=<optimized out>, args=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>) at Python/clinic/bltinmodule.c.h:556#69 0x00007211a395a4ea in cfunction_vectorcall_FASTCALL_KEYWORDS (func=<built-in method exec of module object at remote 0x7211a36cc410>, args=0x7211a414a180, nargsf=<optimized out>, kwnames=0x0) at Objects/methodobject.c:441#70 0x00007211a39fcce9 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=9223372036854775810, args=0x7211a414a180, callable=<built-in method exec of module object at remote 0x7211a36cc410>, tstate=0x7211a3ecb1f0 <_PyRuntime+294032>)at ./Include/internal/pycore_call.h:168#71 PyObject_Vectorcall (callable=<built-in method exec of module object at remote 0x7211a36cc410>, args=0x7211a414a180, nargsf=9223372036854775810, kwnames=0x0) at Objects/call.c:327#72 0x00007211a3889b59 in _PyEval_EvalFrameDefault (tstate=0x7211a3ecb1f0 <_PyRuntime+294032>, frame=0x7211a414a0d8, throwflag=6) at Python/generated_cases.c.h:813#73 0x00007211a3c36c04 in PyObject_Call (kwargs=0x0, args=Python Exception <class 'gdb.error'>: There is no member named ready.,callable=<functionatremote0x7211a2d38290>)atObjects/call.c:373#74 pymain_run_module (modname=<optimized out>, set_argv0=set_argv0@entry=1) at Modules/main.c:297#75 0x00007211a3c498d2 in pymain_run_python (exitcode=0x7ffecd272a68) at Modules/main.c:633#76 Py_RunMain () at Modules/main.c:718#77 0x00007211a3f72cd0 in ??? () at /usr/lib/libc.so.6#78 0x00007211a3f72d8a in __libc_start_main () at /usr/lib/libc.so.6#79 0x00005e3a1e856055 in _start ()
Sometimes I've also seen aMemoryError
on the line callingstr.replace
, or an ominous:
TypeError:replace() argument 2 must be str, not +
with the following Python stack (note that jinja is involved, which might or might not be a trigger?):
qtbot = <pytestqt.qtbot.QtBot object at 0x7552ae9d6200>, view = <qutebrowser.mainwindow.messageview.MessageView object at 0x7552acd7fb10>config_stub = <qutebrowser.config.config.Config object at 0x7552acbe6170>deftest_changing_timer_with_messages_shown(qtbot,view,config_stub):"""When we change messages.timeout, the timer should be restarted.""" config_stub.val.messages.timeout=900000# 15s> view.show_message(message.MessageInfo(usertypes.MessageLevel.info, 'test'))tests/unit/mainwindow/test_messageview.py:172: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ qutebrowser/mainwindow/messageview.py:148: in show_message widget= Message.from_info(info)qutebrowser/mainwindow/messageview.py:71: in from_inforeturncls(qutebrowser/mainwindow/messageview.py:62: in __init__ stylesheet.set_register(self, qss,update=False)qutebrowser/config/stylesheet.py:32: in set_register observer.register()qutebrowser/config/stylesheet.py:97: in register qss=self._get_stylesheet()qutebrowser/config/stylesheet.py:86: in _get_stylesheetreturn _render_stylesheet(self._stylesheet)qutebrowser/config/stylesheet.py:41: in _render_stylesheetreturn template.render(conf=config.val).tox/py313-pyqt66/lib/python3.13/site-packages/jinja2/environment.py:1304: in renderself.environment.handle_exception().tox/py313-pyqt66/lib/python3.13/site-packages/jinja2/environment.py:939: in handle_exceptionraise rewrite_traceback_stack(source=source)<template>:7: in top-level template code???qutebrowser/utils/jinja.py:117: in getattrreturngetattr(obj, attribute)qutebrowser/config/config.py:633: in __getattr__returnself._config.get(name)qutebrowser/config/config.py:385: in getreturn opt.typ.to_py(obj)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <qutebrowser.config.configtypes.Font completions=None none_ok=False>, value = 'default_size default_family'defto_py(self,value: _StrUnset) -> _StrUnsetNone:self._basic_py_validation(value,str)ifisinstance(value, usertypes.Unset):return valueelifnot value:returnNoneifnotself.font_regex.fullmatch(value):# pragma: no cover# This should never happen, as the regex always matches everything# as family.raise configexc.ValidationError(value,"must be a valid font")if (value.endswith(' default_family')andself.default_familyisnotNone):> value = value.replace('default_family', self.default_family)E TypeError: replace() argument 2 must be str, not +qutebrowser/config/configtypes.py:1244: TypeError
which leads me to the conclusion that there must be some sort of memory corruption going on there.
On one run, I've also see a GC-related crash, which I'm not sure is related:
Python stack:
Fatal Python error: AbortedThread 0x00007f31066006c0 (most recent call first): File "/usr/lib/python3.13/socket.py", line 295 in accept File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pytest_rerunfailures.py", line 433 in run_server File "/usr/lib/python3.13/threading.py", line 990 in run File "/usr/lib/python3.13/threading.py", line 1039 in _bootstrap_inner File "/usr/lib/python3.13/threading.py", line 1010 in _bootstrapCurrent thread 0x00007f311ca29740 (most recent call first): Garbage-collecting File "/home/florian/proj/qutebrowser/git/qutebrowser/config/configfiles.py", line 255 in __init__ File "/home/florian/proj/qutebrowser/git/tests/helpers/fixtures.py", line 315 in yaml_config_stub File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 884 in call_fixture_func File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 1122 in pytest_fixture_setup File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_callers.py", line 103 in _multicall File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_hooks.py", line 513 in __call__ File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 1073 in execute File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 603 in _get_active_fixturedef File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 1035 in execute File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 603 in _get_active_fixturedef File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 1035 in execute File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 603 in _get_active_fixturedef File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 518 in getfixturevalue File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/fixtures.py", line 683 in _fillfixtures File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/python.py", line 1630 in setup File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 512 in setup File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 159 in pytest_runtest_setup File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_callers.py", line 103 in _multicall File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_hooks.py", line 513 in __call__ File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 241 in <lambda> File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 341 in from_call File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 240 in call_and_report File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 129 in runtestprotocol File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/runner.py", line 116 in pytest_runtest_protocol File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_callers.py", line 103 in _multicall File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_hooks.py", line 513 in __call__ File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/main.py", line 364 in pytest_runtestloop File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_callers.py", line 103 in _multicall File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_hooks.py", line 513 in __call__ File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/main.py", line 339 in _main File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/main.py", line 285 in wrap_session File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/main.py", line 332 in pytest_cmdline_main File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_callers.py", line 103 in _multicall File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pluggy/_hooks.py", line 513 in __call__ File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/config/__init__.py", line 178 in main File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/_pytest/config/__init__.py", line 206 in console_main File "/home/florian/proj/qutebrowser/git/.tox/py313-pyqt66/lib/python3.13/site-packages/pytest/__main__.py", line 7 in <module> File "/usr/lib/python3.13/runpy.py", line 88 in _run_code File "/usr/lib/python3.13/runpy.py", line 198 in _run_module_as_mainExtension modules: hunter._predicates, hunter._tracer, hunter.vendor._cymem.cymem, hunter._event, markupsafe._speedups, PyQt6.QtCore, PyQt6.QtGui, PyQt6.QtWidgets, PyQt6.QtNetwork, PyQt6.QtPrintSupport, PyQt6.QtQml, PyQt6.QtOpenGL, PyQt6.QtWebChannel, PyQt6.QtWebEngineCore, PyQt6.QtSql, PyQt6.QtWebEngineWidgets, PyQt6.QtTest, PyQt6.QtDBus (total: 18)
C stack:
#0 0x00007f311c0ab32c in ??? () at /usr/lib/libc.so.6#1 0x00007f311c05a6c8 in raise () at /usr/lib/libc.so.6#2 0x00007f311c05a770 in <signal handler called> () at /usr/lib/libc.so.6#3 0x00007f311c0ab32c in ??? () at /usr/lib/libc.so.6#4 0x00007f311c05a6c8 in raise () at /usr/lib/libc.so.6#5 0x00007f311c0424b8 in abort () at /usr/lib/libc.so.6#6 0x00007f311c0423dc in ??? () at /usr/lib/libc.so.6#7 0x00007f311c052d46 in __assert_fail () at /usr/lib/libc.so.6#8 0x00007f311c2a2bd1 in validate_old (gcstate=<optimized out>) at Python/gc.c:432#9 validate_old (gcstate=gcstate@entry=0x7f311c89deb8 <_PyRuntime+108888>) at Python/gc.c:425#10 0x00007f311c6076cc in gc_collect_increment (stats=0x7ffc5a234f70, tstate=<optimized out>) at Python/gc.c:1453#11 _PyGC_Collect (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,generation=generation@entry=1,reason=reason@entry=_Py_GC_REASON_HEAP)atPython/gc.c:1811#12 0x00007f311c607b4b in _Py_RunGC (tstate=0x7f311c8cb1f0 <_PyRuntime+294032>) at Python/gc.c:2010#13 _Py_RunGC (tstate=0x7f311c8cb1f0 <_PyRuntime+294032>) at Python/gc.c:2007#14 _Py_HandlePending (tstate=0x7f311c8cb1f0 <_PyRuntime+294032>) at Python/ceval_gil.c:1244#15 0x00007f311c289f30 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb34ed8,throwflag=6)atPython/generated_cases.c.h:846#16 0x00007f311c3ece2f in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f3106d8d010>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:135#17 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f3106d8d010>,obj=obj@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.,args=args@entry=(),kwargs=kwargs@entry=0x0)atObjects/call.c:504#18 0x00007f311c41a645 in slot_tp_init (self=Python Exception <class 'gdb.error'>: There is no member named ready.,args=(),kwds=0x0)atObjects/typeobject.c:9646#19 0x00007f311c3afafd in type_call (self=<PyQt6.sip.wrappertype at remote 0x64c813562e80>, args=(), kwds=0x0)atObjects/typeobject.c:1909#20 0x00007f311c3ec88d in _PyObject_MakeTpCall (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<PyQt6.sip.wrappertypeatremote0x64c813562e80>,args=<optimizedout>,nargs=0,keywords=<optimizedout>)atObjects/call.c:242#21 0x00007f311c28d023 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb34e78,throwflag=6)atPython/generated_cases.c.h:1837#22 0x00007f311c3ece98 in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f311b519d90>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:146#23 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f311b519d90>,obj=obj@entry=<HookCalleratremote0x7f311ad507d0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#24 0x00007f311c417ff5 in slot_tp_call (self=<HookCaller at remote 0x7f311ad507d0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#25 0x00007f311c3ec88d in _PyObject_MakeTpCall (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<HookCalleratremote0x7f311ad507d0>,args=<optimizedout>,nargs=0,keywords=<optimizedout>)atObjects/call.c:242#26 0x00007f311c284cc8 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb349d8,throwflag=6)atPython/generated_cases.c.h:1500#27 0x00007f311c3ece98 in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f311b519d90>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:146#28 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f311b519d90>,obj=obj@entry=<HookCalleratremote0x7f311ad52cf0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#29 0x00007f311c417ff5 in slot_tp_call (self=<HookCaller at remote 0x7f311ad52cf0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#30 0x00007f311c40e1ee in _PyObject_Call (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<HookCalleratremote0x7f311ad52cf0>,args=(),kwargs=<optimizedout>)atObjects/call.c:361#31 0x00007f311c281380 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb34008,throwflag=6)atPython/generated_cases.c.h:1353#32 0x00007f311c3ece98 in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f311b519d90>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:146#33 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f311b519d90>,obj=obj@entry=<HookCalleratremote0x7f311ad52bd0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#34 0x00007f311c417ff5 in slot_tp_call (self=<HookCaller at remote 0x7f311ad52bd0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#35 0x00007f311c3ec88d in _PyObject_MakeTpCall (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<HookCalleratremote0x7f311ad52bd0>,args=<optimizedout>,nargs=0,keywords=<optimizedout>)atObjects/call.c:242#36 0x00007f311c284cc8 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb33a10,throwflag=6)atPython/generated_cases.c.h:1500#37 0x00007f311c3ece98 in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f311b519d90>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:146#38 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f311b519d90>,obj=obj@entry=<HookCalleratremote0x7f311ad52ff0>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#39 0x00007f311c417ff5 in slot_tp_call (self=<HookCaller at remote 0x7f311ad52ff0>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#40 0x00007f311c3ec88d in _PyObject_MakeTpCall (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<HookCalleratremote0x7f311ad52ff0>,args=<optimizedout>,nargs=0,keywords=<optimizedout>)atObjects/call.c:242#41 0x00007f311c284cc8 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb33730,throwflag=6)atPython/generated_cases.c.h:1500#42 0x00007f311c3ece98 in _PyObject_VectorcallDictTstate (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<functionatremote0x7f311b519d90>,args=<optimizedout>,nargsf=<optimizedout>,kwargs=<optimizedout>)atObjects/call.c:146#43 0x00007f311c3ed0a6 in _PyObject_Call_Prepend (tstate=tstate@entry=0x7f311c8cb1f0<_PyRuntime+294032>,callable=callable@entry=<functionatremote0x7f311b519d90>,obj=obj@entry=<HookCalleratremote0x7f311ad47410>,args=args@entry=(),kwargs=kwargs@entry=PythonException<class'gdb.error'>:Thereisnomembernamedready.)atObjects/call.c:504#44 0x00007f311c417ff5 in slot_tp_call (self=<HookCaller at remote 0x7f311ad47410>, args=(), kwds=Python Exception <class 'gdb.error'>: There is no member named ready.)atObjects/typeobject.c:9400#45 0x00007f311c3ec88d in _PyObject_MakeTpCall (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,callable=<HookCalleratremote0x7f311ad47410>,args=<optimizedout>,nargs=0,keywords=<optimizedout>)atObjects/call.c:242#46 0x00007f311c284cc8 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb332b0,throwflag=6)atPython/generated_cases.c.h:1500#47 0x00007f311c63f6d6 in PyEval_EvalCode (co=<code at remote 0x7f311af616d0>, globals=<optimized out>, locals=Python Exception <class 'gdb.error'>: There is no member named ready.)atPython/ceval.c:598#48 0x00007f311c651950 in builtin_exec_impl (module=<optimized out>, closure=<optimized out>, locals=Python Exception <class 'gdb.error'>: There is no member named ready.,globals=PythonException<class'gdb.error'>:Thereisnomembernamedready. ,source=<codeatremote0x7f311af616d0>)atPython/bltinmodule.c:1145#49 builtin_exec (module=<optimized out>, args=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>)atPython/clinic/bltinmodule.c.h:556#50 0x00007f311c35a4ea in cfunction_vectorcall_FASTCALL_KEYWORDS (func=<built-inmethodexecofmoduleobjectatremote0x7f311bbb8410>,args=0x7f311cb33180,nargsf=<optimizedout>,kwnames=0x0)atObjects/methodobject.c:441#51 0x00007f311c3fcce9 in _PyObject_VectorcallTstate (kwnames=0x0,nargsf=9223372036854775810,args=0x7f311cb33180,callable=<built-inmethodexecofmoduleobjectatremote0x7f311bbb8410>,tstate=0x7f311c8cb1f0<_PyRuntime+294032>)at ./Include/internal/pycore_call.h:168#52 PyObject_Vectorcall (callable=<built-inmethodexecofmoduleobjectatremote0x7f311bbb8410>,args=0x7f311cb33180,nargsf=9223372036854775810,kwnames=0x0)atObjects/call.c:327#53 0x00007f311c289b59 in _PyEval_EvalFrameDefault (tstate=0x7f311c8cb1f0<_PyRuntime+294032>,frame=0x7f311cb330d8,throwflag=6)atPython/generated_cases.c.h:813#54 0x00007f311c636c04 in PyObject_Call (kwargs=0x0, args=Python Exception <class 'gdb.error'>: There is no member named ready.,callable=<functionatremote0x7f311b664290>)atObjects/call.c:373#55 pymain_run_module (modname=<optimized out>, set_argv0=set_argv0@entry=1) at Modules/main.c:297#56 0x00007f311c6498d2 in pymain_run_python (exitcode=0x7ffc5a236bd8) at Modules/main.c:633#57 Py_RunMain () at Modules/main.c:718#58 0x00007f311c043cd0 in ??? () at /usr/lib/libc.so.6#59 0x00007f311c043d8a in __libc_start_main () at /usr/lib/libc.so.6#60 0x000064c810b08055 in _start ()
I'm lost here on how to best debug this further. My best bet would be to try and at least get an example that I can run more quickly, and then try and bisect CPython in order to find the offending change. If there are any other guesses or approaches to debug what could be going on here, I'd be happy to dig in further.
CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux
Output from running 'python -VV' on the command line:
Python 3.13.0b1 (main, May 23 2024, 09:21:12) [GCC 13.2.1 20240417]
Linked PRs
Metadata
Metadata
Assignees
Projects
Status