Skip to content

Conversation

keithel-qt
Copy link
Contributor

Qt Releasing was able to cut a special build of PySide2 5.15.2.1 with
the final-2 patch that should address the occasional crashes in PySide2
signalmanager, as well as the hangs on shutdown that Jason was
experiencing at the end of last week.

The fixes (targetting the dev branch) can be seen here (these are publicly viewable):
https://codereview.qt-project.org/c/pyside/pyside-setup/+/413917
https://codereview.qt-project.org/c/pyside/pyside-setup/+/415523

The fixes ported to the 5.15 branch are not public, but if one has a
commercial license assigned to their Qt account, you can see them. They
are here:
https://codereview.qt-project.org/c/pyside/tqtc-pyside-setup/+/414778
https://codereview.qt-project.org/c/pyside/tqtc-pyside-setup/+/415707

The change has been cherry-picked to 5.15 LTS, 6.2 LTS, and 6.3
branches, so the next (from today, 20220613) official Qt releases of
each of these Qt versions will include the fix. For now, please use
these wheels.

They can be used by performing the following with pip:
pip install PySide2-x.y.z.wheel

Ultimately, Qt will make them available at https://download.qt.io such
that they can be installed with:
pip install PySide2 --index-url=https://download.qt.io/.....

However, first, Qt Releasing would like them to be tested.

To discover all of the various cherry-picks of these two patches, log
into gerrit (https://codereview.qt.io/) and search for the Change-Ids:
I374ada7fc207d86a062f950751503764a5e5dddf
I2dee3da70fe855859b3917e6ac775b8c5cdf5da7

There are also shiboken2-generator wheels, as well as wheels for Python
2.7 and win32 if those are needed. I did not include them here, as I did
not think they were needed.

Qt Releasing was able to cut a special build of PySide2 5.15.2.1 with
the final-2 patch that should address the occasional crashes in PySide2
signalmanager, as well as the hangs on shutdown that Jason was
experiencing at the end of last week.

The fixes (targetting the dev branch) can be seen here (these are publicly viewable):
    https://codereview.qt-project.org/c/pyside/pyside-setup/+/413917
    https://codereview.qt-project.org/c/pyside/pyside-setup/+/415523

The fixes ported to the 5.15 branch are not public, but if one has a
commercial license assigned to their Qt account, you can see them. They
are here:
    https://codereview.qt-project.org/c/pyside/tqtc-pyside-setup/+/414778
    https://codereview.qt-project.org/c/pyside/tqtc-pyside-setup/+/415707

The change has been cherry-picked to 5.15 LTS, 6.2 LTS, and 6.3
branches, so the next (from today, 20220613) official Qt releases of
each of these Qt versions will include the fix. For now, please use
these wheels.

They can be used by performing the following with pip:
    pip install PySide2-x.y.z.wheel

Ultimately, Qt will make them available at https://download.qt.io such
that they can be installed with:
    pip install PySide2 --index-url=https://download.qt.io/.....

However, first, Qt Releasing would like them to be tested.

To discover all of the various cherry-picks of these two patches, log
into gerrit (https://codereview.qt.io/) and search for the Change-Ids:
    I374ada7fc207d86a062f950751503764a5e5dddf
    I2dee3da70fe855859b3917e6ac775b8c5cdf5da7

There are also shiboken2-generator wheels, as well as wheels for Python
2.7 and win32 if those are needed. I did not include them here, as I did
not think they were needed.
@keithel-qt keithel-qt requested a review from silverjam June 13, 2022 15:53
@silverjam
Copy link
Contributor

@keithel-qt Was able to remove the hack that works around the hang on shutdown.

@silverjam silverjam enabled auto-merge (squash) June 13, 2022 18:23
Copy link
Contributor Author

@keithel-qt keithel-qt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that Asynchronous signal-slot cross thread communication should be reintroduced.
I'm still concerned that the current approach is not right, and could cause one of these deadlocks (or more likely corruption). However, let's try this for now.

@silverjam silverjam merged commit 514b105 into main Jun 13, 2022
@silverjam silverjam deleted the keithel-qt/pyside2-5.15.2.2-custom-tqtc-pyside-setup-415707-wheels branch June 13, 2022 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants