-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Tests segfault on PyQt 5.12-13 due to wrong QApplication initializations #4934
Comments
The same happens to me on Ubuntu 18.04, Python 3.6, PyQt5==5.12.3, PyQtWebEngine==5.12.1.
And on Ubuntu 18.04, Python 3.7, PyQt5==5.12, PyQtWebEngine==5.12:
I then updated this environment to PyQt5==5.14.0, PyQtWebEngine==5.14.0 and tests started working well. When I downgraded 5.12, I again get segfaults. |
I also tried other pyqt versions on my Mac, and I get segfaults with PyQt 5.12 and PyQt 5.13. PyQt 5.14 does not segfault. |
@VesnaT also confirmed this bug on her computer. This needs to be fixed before release. We need to be compatible with pyqt 5.12, because that is the newest version that is available on conda-forge. |
These segfaults are caused by constructing a new QApplication for getting default fonts in The problem is that default font settings are set on import, before an actual QApplication was instantiated (Orange's GuiTest tries to make only one). For example, just a script importing the following file would print "A".
In |
EDIT: This seems to happen everywhere on PyQt 5.12.
On MacOS with pip-installed Orange I get segfaults when running tests on master. Running Orange or individual widgets seems to work well. Python 3.7, PyQt5==5.12.3, PyQtWebEngine==5.12.
The segfault is immediate. The segfault started occuring after #4828 was merged.
If I checkout the master from before that PR was merged (
git checkout 2655592eee43145cfca4ff87073046941908a749
), tests pass.The stack trace shows this:
The text was updated successfully, but these errors were encountered: