Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

CY2025 - Python and PySide issue

323 views
Skip to first unread message

Nick Cannon

unread,
Jul 30, 2024, 1:23:33 PM7/30/24
to vfx-platform-discuss
As mentioned at the BoF this morning, there is a late-breaking CY2025 issue with Python 3.12 and Pyside for Qt 6.5. As a result, we may have to stay back on Python 3.11 for CY2025. There are a number of patches that have been applied to Qt 6.6.x, dev. The patch for 6.5.3 was “Abandoned”, moved to lts-6.5.


https://docs.python.org/3/whatsnew/changelog.html#id74
Any code that is looking at the object's tp_dict (i.e. __dict__)  where that object is any of the built-in types, then a null pointer dereference occurs if you don't guard.
Looking at some PySide changes, it was assumed tp_dict was always valid.

If anyone has any further insights into this then please share. Thank you to Autodesk and Foundry for identifying this issue and continuing to investigate.

Nick

Neal Gompa

unread,
Aug 15, 2024, 9:46:44 AM8/15/24
to nick....@gmail.com, vfx-platform-discuss
Qt 6.8 LTS should be coming in September 2024: https://wiki.qt.io/Qt_6.8_Release

Is there a reason we couldn't raise it to Qt 6.8 then?



--
真実はいつも一つ!/ Always, there's only one truth!

Nick Cannon

unread,
Aug 15, 2024, 12:49:00 PM8/15/24
to Neal Gompa, vfx-platform-discuss
On Thu, Aug 15, 2024 at 6:46 AM Neal Gompa <ngom...@gmail.com> wrote:

Qt 6.8 LTS should be coming in September 2024: https://wiki.qt.io/Qt_6.8_Release

Is there a reason we couldn't raise it to Qt 6.8 then?

Good question. Unfortunately, it's too late in the year to introduce a major component like Qt. This change would require significant engineering effort that some vendors and studios can't accommodate right now, especially on top of other recent & current transitions: the move to OneAPI, the migration from CentOS 7 and Python 2, the adoption of USD, and the overall industry challenges that have limited some studios' engineering resources over the past year.

Nick
 

Neal Gompa

unread,
Aug 15, 2024, 1:42:27 PM8/15/24
to nick....@gmail.com, vfx-platform-discuss
How can we track it to ensure it does get done eventually, then? I know we
discussed some time ago about the idea of having a regular uplift
cadence, and it'd be nice to start moving toward that.

Nick Cannon

unread,
Aug 19, 2024, 11:01:46 AM8/19/24
to vfx-platform-discuss
On Tue, Jul 30, 2024 at 10:23 AM Nick Cannon <nick....@gmail.com> wrote:
As mentioned at the BoF this morning, there is a late-breaking CY2025 issue with Python 3.12 and Pyside for Qt 6.5. As a result, we may have to stay back on Python 3.11 for CY2025. There are a number of patches that have been applied to Qt 6.6.x, dev. The patch for 6.5.3 was “Abandoned”, moved to lts-6.5.


https://docs.python.org/3/whatsnew/changelog.html#id74
Any code that is looking at the object's tp_dict (i.e. __dict__)  where that object is any of the built-in types, then a null pointer dereference occurs if you don't guard.
Looking at some PySide changes, it was assumed tp_dict was always valid.

After further investigation by multiple software providers, the compatibility issue between Python 3.12 and Qt 6.5 has been confirmed and there is no easy fix other than to leave Python at 3.11 or upgrade Qt to 6.8.

The Working Group decided to revert Python in CY2025 to 3.11, and commit to upgrading to a newer version of Qt and Python for CY2026.

Nick

Reply all
Reply to author
Forward
0 new messages