-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
SIGSEGV running stubtest against PyQt5-stubs with 0.940+ #14196
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Installing only
|
Weird, my usual guess for segfaults is mypyc, but it looks like there's some issue in PyQt5. Specifically, a check was added to stubtest at some point to ensure final declarations on classes that could not be subclassed. Here's a minimal repro:
|
Here's an ad hoc stubtest patch that skips this check, in case it's useful for you:
I guess I could expose more stubtest configuration, but apart from that this seems like a PyQt5 thing. |
Thanks for diagnosing this. I have reported upstream at https://www.riverbankcomputing.com/pipermail/pyqt/2022-November/045068.html though I don't know if it will get fixed as Qt5 is old and I don't know how much maintenance Phil is still doing on the PyQt5 series vs. working mostly on PyQt6. I do tend to like configurability but I also understand that this does not seem to have caused any other issues so... I'll look at making ourselves a small wrapper that monkey patches the (edit: see wrapper at https://github.com/python-qt-tools/PyQt5-stubs/blob/7f86f099b8777b261df4197bec466045086fa6c3/stubtest_wrapper.py) |
Bug Report
When running stubtest for PyQt5-stubs we get a
SIGSEGV
. Bisecting PyPI published versions I see two boundaries. As of 0.940 theSIGSEGV
began. As of 0.960 we started getting a few regular hint error messages prior to theSIGSEGV
.To Reproduce
I delete the venv first locally but hesitate to put recursive forced deletes where they could cause others damage.
python3.10 -m venv venv; venv/bin/pip install --upgrade pip; venv/bin/pip install . git+https://github.com/python/mypy@a9c62c5f82f34a923b8117a5394983aefce37b63 PyQt5==5.15.6 PyQt3D==5.15.5 PyQtChart==5.15.5 PyQtDataVisualization==5.15.5 PyQtNetworkAuth==5.15.5 PyQtPurchasing==5.15.5 PyQtWebEngine==5.15.5; venv/bin/stubtest --allowlist stubtest.allowlist --allowlist stubtest.allowlist.to_review --allowlist stubtest.allowlist.linux PyQt5
Expected Behavior
I expect stubtest to run without a
SIGSEGV
nor any other crash.Actual Behavior
As mentioned above there are a few regular hint error messages starting with 0.960 but there's still a
SIGSEGV
.Your Environment
stubtest --allowlist stubtest.allowlist --allowlist stubtest.allowlist.to_review --allowlist stubtest.allowlist.linux PyQt5
mypy.ini
(and other config files):https://github.com/python-qt-tools/PyQt5-stubs/blob/15fbb1ab6f23259fba7ceca3311e322fcf397000/setup.cfg
locally tested with
Python 3.10.8 (main, Oct 15 2022, 17:48:51) [GCC 9.4.0]
observed in CI for 3.7 through 3.10
The text was updated successfully, but these errors were encountered: