nixpkgs/pkgs/development/python-modules/pyside2/Modify-sendCommand-signatures.patch
Mitchell Pleune b65dfc3161 Update pyside2/shiboken2 and sip4 to Python 3.12
These are both Python QT 5 modules, which have issues with Python 3.12
that are fixed in never versions, yet many packages depend on them.

Sip4 was as simple as installing and switching over to setuptools (to
replace the now removed distutils).

pyside/shiboken was much more involved. I ended up pulling the required
patches from the Ubuntu release repositories. The existing patch to fix
clang's include headers needed an update as well, but was still
required.

There is some unsightly find-and-replace going on to replace distutils
with setuptools. This is because, although setuptools now creates the
"distutils" import module, it has to be itself imported first before
that can happen. I Used this widespread find-and-replace as it does
function properly, and should be extremly flexable for future versions
(no needing to update patches on each release).
2024-08-07 11:06:13 -04:00

42 lines
1.8 KiB
Diff

From: Dmitry Shachnev <mitya57@debian.org>
Date: Sun, 4 Feb 2024 00:29:00 +0300
Subject: Modify sendCommand signatures to use 0 as default value
The original default value was QNodeCommand::CommandId(), and shiboken
copies it verbatim from the header file, however it does not work because
we do not generate "using namespace Qt3DCore;".
0 is the same as QNodeCommand::CommandId().
---
sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml b/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
index 8696a12..310595f 100644
--- a/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
+++ b/sources/pyside2/PySide2/Qt3DCore/typesystem_3dcore.xml
@@ -58,6 +58,11 @@
<object-type name="QAspectJob"/>
<object-type name="QBackendNode">
<enum-type name="Mode"/>
+ <modify-function signature="sendCommand(const QString&amp;,const QVariant&amp;,unsigned long long)">
+ <modify-argument index="3">
+ <replace-default-expression with="0"/>
+ </modify-argument>
+ </modify-function>
</object-type>
<!-- TODO: Solve issues related to windows and a unresolved
external symbol
@@ -82,6 +87,11 @@
</object-type>
<object-type name="QNode">
<enum-type name="PropertyTrackingMode"/>
+ <modify-function signature="sendCommand(const QString&amp;,const QVariant&amp;,unsigned long long)">
+ <modify-argument index="3">
+ <replace-default-expression with="0"/>
+ </modify-argument>
+ </modify-function>
</object-type>
<object-type name="QNodeCommand" since="5.10"/>
<object-type name="QNodeCreatedChangeBase"/>