Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Python 3.13b repeatedly setting superclass attribute in subclass leads to crashes #119462

Closed
Assignees
markshannon
Labels
release-blockertype-crashA hard crash of the interpreter, possibly with a core dump
@The-Compiler

Description

@The-Compiler

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

Labels

release-blockertype-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


    [8]ページ先頭

    ©2009-2025 Movatter.jp