Update to 5.15.7.

This commit is contained in:
Richard Shaw 2022-11-24 10:01:09 -06:00
parent d1a4b81563
commit dcd382a7cb
6 changed files with 92 additions and 138 deletions

1
.gitignore vendored
View File

@ -10,3 +10,4 @@
/pyside-setup-opensource-src-5.15.1.tar.xz
/pyside-setup-opensource-src-5.15.2.tar.xz
/pyside-setup-opensource-src-5.15.2.1.tar.xz
/pyside-setup-opensource-src-5.15.7.tar.xz

View File

@ -1,6 +1,7 @@
diff -rU3 pyside-setup-opensource-src-5.15.2-orig/CMakeLists.txt pyside-setup-opensource-src-5.15.2/CMakeLists.txt
--- pyside-setup-opensource-src-5.15.2-orig/CMakeLists.txt 2022-01-05 14:26:23.000000000 +0100
+++ pyside-setup-opensource-src-5.15.2/CMakeLists.txt 2022-06-29 16:49:06.689706732 +0200
Index: pyside-setup-opensource-src-5.15.7/CMakeLists.txt
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/CMakeLists.txt
+++ pyside-setup-opensource-src-5.15.7/CMakeLists.txt
@@ -1,6 +1,11 @@
cmake_minimum_required(VERSION 3.1)
cmake_policy(VERSION 3.1)
@ -13,13 +14,14 @@ diff -rU3 pyside-setup-opensource-src-5.15.2-orig/CMakeLists.txt pyside-setup-op
set(CMAKE_BUILD_TYPE Release CACHE STRING "Build Type")
project(pyside2_super_project)
diff -rU3 pyside-setup-opensource-src-5.15.2-orig/build_history/blacklist.txt pyside-setup-opensource-src-5.15.2/build_history/blacklist.txt
--- pyside-setup-opensource-src-5.15.2-orig/build_history/blacklist.txt 2022-01-05 14:26:23.000000000 +0100
+++ pyside-setup-opensource-src-5.15.2/build_history/blacklist.txt 2022-06-29 19:16:57.628215409 +0200
@@ -96,3 +96,75 @@
# Open GL functions failures on macOS (2/2020)
[registry::existence_test]
darwin
Index: pyside-setup-opensource-src-5.15.7/build_history/blacklist.txt
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/build_history/blacklist.txt
+++ pyside-setup-opensource-src-5.15.7/build_history/blacklist.txt
@@ -96,3 +96,80 @@
# Incomplehensible effect with feature switching on 3.6, qApp.process_events()
[QtCore::feature_with_uic_test]
py3.6
+
+# Fedora/Python3.11 test failures to investigate
+[testenum]
@ -62,6 +64,8 @@ diff -rU3 pyside-setup-opensource-src-5.15.2-orig/build_history/blacklist.txt py
+ linux
+[support::voidptr_test]
+ linux
+[QtCore::qenum_test]
+ linux
+[QtCore::multiple_feature_test]
+ linux
+[QtCore::snake_prop_feature_test]
@ -92,3 +96,6 @@ diff -rU3 pyside-setup-opensource-src-5.15.2-orig/build_history/blacklist.txt py
+# s390x
+[QtCore::qbytearray_test]
+ linux
+[QtQml::qquickitem_grabToImage]
+ linux
+

View File

@ -1,8 +1,10 @@
--- pyside-setup-everywhere-src-5.12.6/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp~ 2020-07-08 14:37:13.022476435 -0700
+++ pyside-setup-everywhere-src-5.12.6/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp 2020-07-08 14:37:18.271484269 -0700
@@ -330,17 +330,15 @@
}
#endif // NEED_CLANG_BUILTIN_INCLUDES
Index: pyside-setup-opensource-src-5.15.7/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
@@ -345,17 +345,15 @@ QByteArrayList emulatedCompilerOptions()
appendClangBuiltinIncludes(&headerPaths);
# endif // NEED_CLANG_BUILTIN_INCLUDES
- // Append the c++ include paths since Clang is unable to find <list> etc
- // on RHEL 7 with g++ 6.3 or CentOS 7.2.
@ -27,4 +29,3 @@
}
}
#else

View File

@ -11,8 +11,8 @@
Name: python-%{pypi_name}
Epoch: 1
Version: 5.15.2.1
Release: 7%{?dist}
Version: 5.15.7
Release: 1%{?dist}
Summary: Python bindings for the Qt 5 cross-platform application and UI framework
License: BSD and GPLv2 and GPLv3 and LGPLv3
@ -22,15 +22,9 @@ Source0: https://download.qt.io/official_releases/QtForPython/%{pypi_name
# PySide2 tools are "reinstalled" for pip installs but breaks distro builds.
Patch0: pyside2-tools-obsolete.patch
# Don't abort the build on Python 3.8/3.9
#Patch1: python_ver_classifier.patch
# setuptools --reuse-build option was broken in 5.15.2
Patch2: python-pyside2-options_py.patch
# A (possibly incomplete) patch with Python 3.10 compatibility
# Backported from https://codereview.qt-project.org/c/pyside/pyside-setup/+/348390
# Inlined _Py_Mangle from CPython sources
Patch3: python3.10.patch
# Work around clang assumptions on header types, .h==c, not c++.
Patch4: https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/development/python-modules/shiboken2/nix_compile_cflags.patch
@ -49,7 +43,7 @@ Patch5: python3.11.patch
# This also adds known test failures to blacklist.txt
Patch: build-tests.patch
%if 0%{?rhel} == 7
%if 0%{?rhel} < 8
BuildRequires: llvm-toolset-7-clang-devel llvm-toolset-7-llvm-devel
BuildRequires: cmake3
%endif
@ -75,9 +69,7 @@ BuildRequires: cmake(Qt5X11Extras) >= %{qt5ver}
# PySide2
BuildRequires: qt5-qtbase-private-devel >= %{qt5ver}
BuildRequires: cmake(Qt5Charts) >= %{qt5ver}
%if 0%{?fedora} > 32
BuildRequires: cmake(Qt5DataVisualization) >= %{qt5ver}
%endif
BuildRequires: cmake(Qt5Multimedia) >= %{qt5ver}
BuildRequires: cmake(Qt5QuickControls2) >= %{qt5ver}
BuildRequires: cmake(Qt5RemoteObjects) >= %{qt5ver}
@ -189,7 +181,7 @@ the previous versions (without the 2) refer to Qt 4.
%prep
%autosetup -p1 -n pyside-setup-opensource-src-5.15.2
%autosetup -p1 -n pyside-setup-opensource-src-%{version}
%build
@ -198,7 +190,7 @@ the previous versions (without the 2) refer to Qt 4.
%global cmake %cmake3
%endif
%if 0%{?rhel} == 7
%if 0%{?rhel} < 8
. /opt/rh/devtoolset-7/enable
. /opt/rh/llvm-toolset-7/enable
%else
@ -298,6 +290,9 @@ xvfb-run %{__python3} testrunner.py test
%changelog
* Thu Nov 24 2022 Richard Shaw <hobbes1069@gmail.com> - 1:5.15.7-1
- Update to 5.15.7.
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.15.2.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

View File

@ -21,11 +21,29 @@ Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
sources/shiboken2/libshiboken/basewrapper.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/sources/shiboken2/libshiboken/basewrapper.cpp b/sources/shiboken2/libshiboken/basewrapper.cpp
index d866d13..19418c8 100644
--- a/sources/shiboken2/libshiboken/basewrapper.cpp
+++ b/sources/shiboken2/libshiboken/basewrapper.cpp
@@ -1468,6 +1468,7 @@ bool setCppPointer(SbkObject *sbkObj, PyTypeObject *desiredType, void *cptr)
Index: pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/basewrapper.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/shiboken2/libshiboken/basewrapper.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/basewrapper.cpp
@@ -377,7 +377,7 @@ SbkObjectType *SbkObject_TypeF(void)
static PyTypeObject *type = nullptr;
if (!type) {
type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(&SbkObject_Type_spec));
- Py_TYPE(type) = SbkObjectType_TypeF();
+ Py_SET_TYPE(type, SbkObjectType_TypeF());
Py_INCREF(Py_TYPE(type));
type->tp_weaklistoffset = offsetof(SbkObject, weakreflist);
type->tp_dictoffset = offsetof(SbkObject, ob_dict);
@@ -1160,7 +1160,7 @@ introduceWrapperType(PyObject *enclosing
typeSpec->slots[0].pfunc = reinterpret_cast<void *>(baseType ? baseType : SbkObject_TypeF());
PyObject *heaptype = SbkType_FromSpecWithBases(typeSpec, baseTypes);
- Py_TYPE(heaptype) = SbkObjectType_TypeF();
+ Py_SET_TYPE(heaptype, SbkObjectType_TypeF());
Py_INCREF(Py_TYPE(heaptype));
auto *type = reinterpret_cast<SbkObjectType *>(heaptype);
#if PY_VERSION_HEX < 0x03000000
@@ -1525,6 +1525,7 @@ bool setCppPointer(SbkObject *sbkObj, Py
bool isValid(PyObject *pyObj)
{
if (!pyObj || pyObj == Py_None
@ -33,28 +51,11 @@ index d866d13..19418c8 100644
|| Py_TYPE(Py_TYPE(pyObj)) != SbkObjectType_TypeF()) {
return true;
}
--
2.35.3
From 77fdd690ca14e97b4c800c4127362ca0c83a716a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
Date: Thu, 9 Jun 2022 13:45:07 +0200
Subject: [PATCH] Fix usage of Py_TYPE() for Python 3.11
The macro was changed to a function, no longer allowing for assignment.
---
sources/pyside2/libpyside/pysideqflags.cpp | 2 +-
sources/pyside2/libpyside/pysidesignal.cpp | 2 +-
sources/pyside2/libpyside/pysideweakref.cpp | 2 +-
sources/shiboken2/libshiboken/basewrapper.cpp | 4 ++--
sources/shiboken2/libshiboken/sbkenum.cpp | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/sources/pyside2/libpyside/pysideqflags.cpp b/sources/pyside2/libpyside/pysideqflags.cpp
index b141ce1..ef0c8f4 100644
--- a/sources/pyside2/libpyside/pysideqflags.cpp
+++ b/sources/pyside2/libpyside/pysideqflags.cpp
@@ -187,7 +187,7 @@ namespace QFlags
Index: pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysideqflags.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/pyside2/libpyside/pysideqflags.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysideqflags.cpp
@@ -192,7 +192,7 @@ namespace QFlags
}
newspec.slots = SbkNewQFlagsType_spec.slots;
PyTypeObject *type = (PyTypeObject *)SbkType_FromSpec(&newspec);
@ -63,10 +64,10 @@ index b141ce1..ef0c8f4 100644
PySideQFlagsType *flagsType = reinterpret_cast<PySideQFlagsType *>(type);
PepType_PFTP(flagsType)->converterPtr = &PepType_PFTP(flagsType)->converter;
diff --git a/sources/pyside2/libpyside/pysidesignal.cpp b/sources/pyside2/libpyside/pysidesignal.cpp
index 5c03031..5e42dba 100644
--- a/sources/pyside2/libpyside/pysidesignal.cpp
+++ b/sources/pyside2/libpyside/pysidesignal.cpp
Index: pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysidesignal.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/pyside2/libpyside/pysidesignal.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysidesignal.cpp
@@ -162,7 +162,7 @@ PyTypeObject *PySideSignalTypeF(void)
if (!type) {
type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(&PySideSignalType_spec));
@ -76,11 +77,11 @@ index 5c03031..5e42dba 100644
Py_INCREF(Py_TYPE(type));
Py_DECREF(hold);
}
diff --git a/sources/pyside2/libpyside/pysideweakref.cpp b/sources/pyside2/libpyside/pysideweakref.cpp
index cd90634..730990f 100644
--- a/sources/pyside2/libpyside/pysideweakref.cpp
+++ b/sources/pyside2/libpyside/pysideweakref.cpp
@@ -90,7 +90,7 @@ PyObject *create(PyObject *obj, PySideWeakRefFunction func, void *userData)
Index: pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysideweakref.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/pyside2/libpyside/pysideweakref.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/pyside2/libpyside/pysideweakref.cpp
@@ -90,7 +90,7 @@ PyObject *create(PyObject *obj, PySideWe
if (Py_TYPE(PySideCallableObjectTypeF()) == 0)
{
@ -89,69 +90,24 @@ index cd90634..730990f 100644
PyType_Ready(PySideCallableObjectTypeF());
}
diff --git a/sources/shiboken2/libshiboken/basewrapper.cpp b/sources/shiboken2/libshiboken/basewrapper.cpp
index 19418c8..0cc6fad 100644
--- a/sources/shiboken2/libshiboken/basewrapper.cpp
+++ b/sources/shiboken2/libshiboken/basewrapper.cpp
@@ -366,7 +366,7 @@ SbkObjectType *SbkObject_TypeF(void)
static PyTypeObject *type = nullptr;
if (!type) {
type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(&SbkObject_Type_spec));
- Py_TYPE(type) = SbkObjectType_TypeF();
+ Py_SET_TYPE(type, SbkObjectType_TypeF());
Py_INCREF(Py_TYPE(type));
type->tp_weaklistoffset = offsetof(SbkObject, weakreflist);
type->tp_dictoffset = offsetof(SbkObject, ob_dict);
@@ -1110,7 +1110,7 @@ introduceWrapperType(PyObject *enclosingObject,
typeSpec->slots[0].pfunc = reinterpret_cast<void *>(baseType ? baseType : SbkObject_TypeF());
PyObject *heaptype = SbkType_FromSpecWithBases(typeSpec, baseTypes);
- Py_TYPE(heaptype) = SbkObjectType_TypeF();
+ Py_SET_TYPE(heaptype, SbkObjectType_TypeF());
Py_INCREF(Py_TYPE(heaptype));
auto *type = reinterpret_cast<SbkObjectType *>(heaptype);
#if PY_VERSION_HEX < 0x03000000
diff --git a/sources/shiboken2/libshiboken/sbkenum.cpp b/sources/shiboken2/libshiboken/sbkenum.cpp
index 369b264..edcdc16 100644
--- a/sources/shiboken2/libshiboken/sbkenum.cpp
+++ b/sources/shiboken2/libshiboken/sbkenum.cpp
@@ -741,7 +741,7 @@ newTypeWithName(const char *name,
copyNumberMethods(numbers_fromFlag, newslots, &idx);
newspec.slots = newslots;
auto *type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpec(&newspec));
Index: pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/sbkenum.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/shiboken2/libshiboken/sbkenum.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/sbkenum.cpp
@@ -754,7 +754,7 @@ newTypeWithName(const char *name,
PyTuple_SetItem(bases, 0, reinterpret_cast<PyObject *>(basetype));
auto *type = reinterpret_cast<PyTypeObject *>(SbkType_FromSpecWithBases(&newspec, bases));
PyErr_Print();
- Py_TYPE(type) = SbkEnumType_TypeF();
+ Py_SET_TYPE(type, SbkEnumType_TypeF());
+ Py_SET_TYPE(type, SbkEnumType_TypeF());
auto *enumType = reinterpret_cast<SbkEnumType *>(type);
PepType_SETP(enumType)->cppName = cppName;
--
2.35.3
From a09a1db8391243e6bb290ee66bb6e3afbb114c61 Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@qt.io>
Date: Fri, 24 Jun 2022 09:22:01 +0200
Subject: libshiboken: Fix crashes with static strings in Python 3.11
In Python 3.11, some strings come with a refcount above decimal
1000000000, apparently indicating that they are interned. Replace the
mechanism by PyUnicode_InternFromString().
Task-number: PYSIDE-1960
Pick-to: 6.3 6.2 5.15
Change-Id: I6436afee351f89da5814b5d6bc76970b1b508168
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
Upstream: https://code.qt.io/cgit/pyside/pyside-setup.git/commit/?id=a09a1db8391243e6bb290ee66bb6e3afbb114c61
---
sources/shiboken6/libshiboken/sbkstring.cpp | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/sources/shiboken6/libshiboken/sbkstring.cpp b/sources/shiboken6/libshiboken/sbkstring.cpp
index 7fd20173c..36fe50369 100644
--- a/sources/shiboken2/libshiboken/sbkstring.cpp
+++ b/sources/shiboken2/libshiboken/sbkstring.cpp
@@ -5,8 +5,14 @@
Index: pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/sbkstring.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/shiboken2/libshiboken/sbkstring.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/shiboken2/libshiboken/sbkstring.cpp
@@ -41,8 +41,14 @@
#include "sbkstaticstrings_p.h"
#include "autodecref.h"
@ -168,7 +124,7 @@ index 7fd20173c..36fe50369 100644
namespace Shiboken
{
@@ -179,6 +185,13 @@ Py_ssize_t len(PyObject *str)
@@ -233,6 +239,13 @@ Py_ssize_t len(PyObject *str)
// PyObject *attr = PyObject_GetAttr(obj, name());
//
@ -182,7 +138,7 @@ index 7fd20173c..36fe50369 100644
using StaticStrings = std::unordered_set<PyObject *>;
static void finalizeStaticStrings(); // forward
@@ -225,6 +238,8 @@ PyObject *createStaticString(const char *str)
@@ -283,6 +296,8 @@ PyObject *createStaticString(const char
return result;
}
@ -191,17 +147,11 @@ index 7fd20173c..36fe50369 100644
///////////////////////////////////////////////////////////////////////
//
// PYSIDE-1019: Helper function for snake_case vs. camelCase names
--
cgit v1.2.1
From 0000000000000000000000000000000000000000 Wed Jun 29 00:00:00 2022
From: Petr Viktorin <pviktori@redhat.com>
Subject: Enable building for Python 3.11
diff -rU3 pyside-setup-opensource-src-5.15.2-orig/build_scripts/config.py pyside-setup-opensource-src-5.15.2/build_scripts/config.py
--- pyside-setup-opensource-src-5.15.2-orig/build_scripts/config.py 2022-01-05 14:26:23.000000000 +0100
+++ pyside-setup-opensource-src-5.15.2/build_scripts/config.py 2022-06-29 14:38:24.918102384 +0200
@@ -94,6 +94,7 @@
Index: pyside-setup-opensource-src-5.15.7/build_scripts/config.py
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/build_scripts/config.py
+++ pyside-setup-opensource-src-5.15.7/build_scripts/config.py
@@ -94,6 +94,7 @@ class Config(object):
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',

View File

@ -1 +1 @@
SHA512 (pyside-setup-opensource-src-5.15.2.1.tar.xz) = 7409f731ba535c0b997084cbe5d61252e3eebfd1f02ae4933ca1bbb8978998f527b0b6b37b2bd962fcec25602e2eea4cd6afd1f8a056fa21aeca56b2ffbdba9a
SHA512 (pyside-setup-opensource-src-5.15.7.tar.xz) = 9c551b47581e4f2671c4378f1a2c0d9e565b08edee74244a7704a2c94eef1e1041d23f0e388c07bdd61067e986340907cf80f4527257a9a706f7f07c497834c6