aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2022-10-13 15:22:23 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2023-02-09 16:06:52 +0100
commita1f368a504f1c465cdf85dbc137db4880a09738a (patch)
tree72e8392c1cba8bfef1ed249de718387cea36f2db
parent50c3f36955e72302633c1d9956506dbd1f158012 (diff)
Adapt to Qt 6.5
- Add new enums - Hide field QMetaMethod::mobj made protected by qtbase/0b701ec0cd86afbf6bb0d0abb361cfb6500c2e1b - Adapt to PDF qtwebengine/6769bd1544c56a514fe35bf16d05614605a49bea - Adapt to qhttpserver/55d10201dc7a47b239825548e053c1fb0de61115, adding a virtual method with rvalue reference to QAbstractHttpServer - create_wheels.py: Adapt to changed location of the metatypes directory in Qt after qtbase/4234ce12dc819b9ca76c8dc4c251f5bd4fe0bc9c. - Adapt error column in QDomDocument test - Fix QMetaObject::invoke() to work after qtbase/fe92b080658f0d8609e2a2a69e5ec2b51dd7bf9d by making the cast of the helper types to Q(Generic)ReturnArgument explicit in the snippets Change-Id: Ifb514878e999ad4c9ef00ff83172626eff112a3d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
-rw-r--r--build_history/blacklist.txt1
-rw-r--r--build_scripts/wheel_files.py4
-rw-r--r--sources/pyside-tools/project/utils.py4
-rw-r--r--sources/pyside6/PySide6/QtCore/glue/qtcorehelper.cpp4
-rw-r--r--sources/pyside6/PySide6/QtCore/typesystem_core_common.xml3
-rw-r--r--sources/pyside6/PySide6/QtHttpServer/typesystem_httpserver.xml3
-rw-r--r--sources/pyside6/PySide6/QtOpenGLWidgets/typesystem_openglwidgets.xml1
-rw-r--r--sources/pyside6/PySide6/QtPdf/typesystem_pdf.xml5
-rw-r--r--sources/pyside6/PySide6/glue/qtcore.cpp11
-rw-r--r--sources/pyside6/PySide6/qtcorehelper.h4
-rw-r--r--sources/pyside6/tests/QtXml/qdomdocument_test.py2
11 files changed, 27 insertions, 15 deletions
diff --git a/build_history/blacklist.txt b/build_history/blacklist.txt
index b3387f700..ad2adfb0d 100644
--- a/build_history/blacklist.txt
+++ b/build_history/blacklist.txt
@@ -19,7 +19,6 @@
py2
py3
[QtCore::qthread_test]
- linux py3.6
# PYSIDE-754
[QtWebEngineCore::web_engine_custom_scheme]
win32
diff --git a/build_scripts/wheel_files.py b/build_scripts/wheel_files.py
index b8caf32ab..77dcdf523 100644
--- a/build_scripts/wheel_files.py
+++ b/build_scripts/wheel_files.py
@@ -71,7 +71,7 @@ class ModuleData:
self.qml = [f"qml/{i}" for i in self.qml]
self.translations = [f"translations/{i}" for i in self.translations]
self.metatypes = [
- f"lib/metatypes/{i}".replace("_relwithdebinfo", "") for i in self.metatypes
+ f"metatypes/{i}".replace("_relwithdebinfo", "") for i in self.metatypes
]
self.plugins = [f"plugins/{i}" for i in self.plugins]
else:
@@ -83,7 +83,7 @@ class ModuleData:
self.qtlib = [f"Qt/lib/{i}.*{self.ext}*" for i in self.qtlib]
self.qml = [f"Qt/qml/{i}" for i in self.qml]
self.translations = [f"Qt/translations/{i}" for i in self.translations]
- self.metatypes = [f"Qt/lib/metatypes/{i}" for i in self.metatypes]
+ self.metatypes = [f"Qt/metatypes/{i}" for i in self.metatypes]
self.plugins = [f"Qt/plugins/{i}" for i in self.plugins]
self.typesystems = [f"typesystems/{i}" for i in self.typesystems]
diff --git a/sources/pyside-tools/project/utils.py b/sources/pyside-tools/project/utils.py
index db92aeb7f..b3fd03584 100644
--- a/sources/pyside-tools/project/utils.py
+++ b/sources/pyside-tools/project/utils.py
@@ -81,7 +81,7 @@ def qt_metatype_json_dir() -> Path:
qt_dir = package_dir()
if sys.platform != "win32":
qt_dir /= "Qt"
- metatypes_dir = qt_dir / "lib" / "metatypes"
+ metatypes_dir = qt_dir / "metatypes"
if metatypes_dir.is_dir(): # Fully installed case
_qt_metatype_json_dir = metatypes_dir
else:
@@ -89,7 +89,7 @@ def qt_metatype_json_dir() -> Path:
print(
f"Falling back to {QTPATHS_CMD} to determine metatypes directory.", file=sys.stderr
)
- _qt_metatype_json_dir = Path(qtpaths()["QT_INSTALL_LIBS"]) / "metatypes"
+ _qt_metatype_json_dir = Path(qtpaths()["QT_INSTALL_ARCHDATA"]) / "metatypes"
return _qt_metatype_json_dir
diff --git a/sources/pyside6/PySide6/QtCore/glue/qtcorehelper.cpp b/sources/pyside6/PySide6/QtCore/glue/qtcorehelper.cpp
index 2dc2f3b40..2517808c6 100644
--- a/sources/pyside6/PySide6/QtCore/glue/qtcorehelper.cpp
+++ b/sources/pyside6/PySide6/QtCore/glue/qtcorehelper.cpp
@@ -60,7 +60,7 @@ QGenericArgumentHolder &QGenericArgumentHolder::operator=(const QGenericArgument
QGenericArgumentHolder &QGenericArgumentHolder::operator=(QGenericArgumentHolder &&) = default;
QGenericArgumentHolder::~QGenericArgumentHolder() = default;
-QGenericArgumentHolder::operator QGenericArgument() const
+QGenericArgument QGenericArgumentHolder::toGenericArgument() const
{
return d ? d->m_argument : QGenericArgument{};
}
@@ -86,7 +86,7 @@ QGenericReturnArgumentHolder &QGenericReturnArgumentHolder::operator=(const QGen
QGenericReturnArgumentHolder &QGenericReturnArgumentHolder::operator=(QGenericReturnArgumentHolder &&) = default;
QGenericReturnArgumentHolder::~QGenericReturnArgumentHolder() = default;
-QGenericReturnArgumentHolder::operator QGenericReturnArgument() const
+QGenericReturnArgument QGenericReturnArgumentHolder::toGenericReturnArgument() const
{
return d->m_argument;
}
diff --git a/sources/pyside6/PySide6/QtCore/typesystem_core_common.xml b/sources/pyside6/PySide6/QtCore/typesystem_core_common.xml
index 91afc3b2a..9b83d2e38 100644
--- a/sources/pyside6/PySide6/QtCore/typesystem_core_common.xml
+++ b/sources/pyside6/PySide6/QtCore/typesystem_core_common.xml
@@ -538,6 +538,7 @@
</extra-includes>
<enum-type name="AlignmentFlag" python-type="IntFlag" flags="Alignment"/>
<enum-type name="AnchorPoint" since="4.6"/>
+ <enum-type name="Appearance" since="6.5"/>
<enum-type name="ApplicationAttribute"/>
<enum-type name="ApplicationState" flags="ApplicationStates"/>
<enum-type name="ArrowType"/>
@@ -594,6 +595,7 @@
<enum-type name="PenCapStyle"/>
<enum-type name="PenJoinStyle"/>
<enum-type name="PenStyle"/>
+ <enum-type name="PermissionStatus" since="6.5"/>
<enum-type name="ReturnByValueConstant"/>
<enum-type name="ScreenOrientation" flags="ScreenOrientations"/>
<enum-type name="ScrollBarPolicy"/>
@@ -2963,6 +2965,7 @@
<!-- This isn't part of Qt public API -->
<modify-function signature="attributes()const" remove="all"/>
<modify-function signature="getParameterTypes(int*)const" remove="all"/>
+ <modify-field name="mobj" remove="yes"/>
</value-type>
<object-type name="QMetaObject">
<enum-type name="Call"/>
diff --git a/sources/pyside6/PySide6/QtHttpServer/typesystem_httpserver.xml b/sources/pyside6/PySide6/QtHttpServer/typesystem_httpserver.xml
index 0c96dc7a6..7504fafe4 100644
--- a/sources/pyside6/PySide6/QtHttpServer/typesystem_httpserver.xml
+++ b/sources/pyside6/PySide6/QtHttpServer/typesystem_httpserver.xml
@@ -8,7 +8,8 @@
<load-typesystem name="QtWebSockets/typesystem_websockets.xml" generate="no"/>
<typedef-type name="QFutureHttpServerResponse" source="QFuture&lt;QHttpServerResponse&gt;"/>
- <object-type name="QAbstractHttpServer"/>
+ <!-- virtual void missingHandler(const QHttpServerRequest &, QHttpServerResponder &&) = 0 -->
+ <object-type name="QAbstractHttpServer" disable-wrapper="yes"/>
<object-type name="QHttpServer">
<extra-includes>
<include file-name="QtHttpServer/QHttpServerRequest" location="global"/>
diff --git a/sources/pyside6/PySide6/QtOpenGLWidgets/typesystem_openglwidgets.xml b/sources/pyside6/PySide6/QtOpenGLWidgets/typesystem_openglwidgets.xml
index 092902402..27dbd8b14 100644
--- a/sources/pyside6/PySide6/QtOpenGLWidgets/typesystem_openglwidgets.xml
+++ b/sources/pyside6/PySide6/QtOpenGLWidgets/typesystem_openglwidgets.xml
@@ -10,5 +10,6 @@
<object-type name="QOpenGLWidget">
<enum-type name="UpdateBehavior"/>
+ <enum-type name="TargetBuffer" since="6.5"/>
</object-type>
</typesystem>
diff --git a/sources/pyside6/PySide6/QtPdf/typesystem_pdf.xml b/sources/pyside6/PySide6/QtPdf/typesystem_pdf.xml
index 2cf7b886b..afb93f7e3 100644
--- a/sources/pyside6/PySide6/QtPdf/typesystem_pdf.xml
+++ b/sources/pyside6/PySide6/QtPdf/typesystem_pdf.xml
@@ -15,7 +15,10 @@
<enum-type name="MetaDataField"/>
<enum-type name="PageModelRole"/>
</object-type>
- <value-type name="QPdfDocumentRenderOptions"/>
+ <value-type name="QPdfDocumentRenderOptions">
+ <enum-type name="RenderFlag" flags="RenderFlags" since="6.5"/>
+ <enum-type name="Rotation" since="6.5"/>
+ </value-type>
<object-type name="QPdfPageRenderer">
<enum-type name="RenderMode"/>
<enum-type name="RenderFlag" flags="RenderFlags"/>
diff --git a/sources/pyside6/PySide6/glue/qtcore.cpp b/sources/pyside6/PySide6/glue/qtcore.cpp
index 6783aea3d..c988c131b 100644
--- a/sources/pyside6/PySide6/glue/qtcore.cpp
+++ b/sources/pyside6/PySide6/glue/qtcore.cpp
@@ -1663,7 +1663,8 @@ QtCoreHelper::QGenericReturnArgumentHolder result(qArgData.metaType, qArgData.da
// invokeMethod(QObject *,const char *, QGenericArgument a0, a1, a2 )
// @snippet qmetaobject-invokemethod-arg
PyThreadState *_save = PyEval_SaveThread(); // Py_BEGIN_ALLOW_THREADS
-const bool result = %CPPSELF.invokeMethod(%1, %2, %3, %4, %5);
+const bool result = %CPPSELF.invokeMethod(%1, %2, %3.toGenericArgument(), %4.toGenericArgument(),
+ %5.toGenericArgument());
PyEval_RestoreThread(_save); // Py_END_ALLOW_THREADS
%PYARG_0 = %CONVERTTOPYTHON[bool](result);
// @snippet qmetaobject-invokemethod-arg
@@ -1671,7 +1672,9 @@ PyEval_RestoreThread(_save); // Py_END_ALLOW_THREADS
// invokeMethod(QObject *,const char *,Qt::ConnectionType, QGenericArgument a0, a1, a2 )
// @snippet qmetaobject-invokemethod-conn-type-arg
PyThreadState *_save = PyEval_SaveThread(); // Py_BEGIN_ALLOW_THREADS
-const bool result = %CPPSELF.invokeMethod(%1, %2, %3, %4, %5, %6);
+const bool result = %CPPSELF.invokeMethod(%1, %2, %3,
+ %4.toGenericArgument(), %5.toGenericArgument(),
+ %6.toGenericArgument());
PyEval_RestoreThread(_save); // Py_END_ALLOW_THREADS
%PYARG_0 = %CONVERTTOPYTHON[bool](result);
// @snippet qmetaobject-invokemethod-conn-type-arg
@@ -1686,7 +1689,9 @@ static PyObject *invokeMethodHelper(QObject *obj, const char *member, Qt::Connec
{
PyThreadState *_save = PyEval_SaveThread(); // Py_BEGIN_ALLOW_THREADS
const bool callResult = QMetaObject::invokeMethod(obj, member, type,
- returnArg, v1, v2, v3);
+ returnArg.toGenericReturnArgument(),
+ v1.toGenericArgument(), v2.toGenericArgument(),
+ v3.toGenericArgument());
PyEval_RestoreThread(_save); // Py_END_ALLOW_THREADS
if (!callResult) {
PyErr_Format(PyExc_RuntimeError, "QMetaObject::invokeMethod(): Invocation of %s::%s() failed.",
diff --git a/sources/pyside6/PySide6/qtcorehelper.h b/sources/pyside6/PySide6/qtcorehelper.h
index bacb7dbd9..3579d83c9 100644
--- a/sources/pyside6/PySide6/qtcorehelper.h
+++ b/sources/pyside6/PySide6/qtcorehelper.h
@@ -82,7 +82,7 @@ namespace QtCoreHelper {
QGenericArgumentHolder &operator=(QGenericArgumentHolder &&);
~QGenericArgumentHolder();
- operator QGenericArgument () const;
+ QGenericArgument toGenericArgument() const;
QMetaType metaType() const;
const void *data() const;
@@ -104,7 +104,7 @@ namespace QtCoreHelper {
QGenericReturnArgumentHolder &operator=(QGenericReturnArgumentHolder &&);
~QGenericReturnArgumentHolder();
- operator QGenericReturnArgument () const;
+ QGenericReturnArgument toGenericReturnArgument() const;
QMetaType metaType() const;
const void *data() const;
diff --git a/sources/pyside6/tests/QtXml/qdomdocument_test.py b/sources/pyside6/tests/QtXml/qdomdocument_test.py
index 33b395f9b..190adcb15 100644
--- a/sources/pyside6/tests/QtXml/qdomdocument_test.py
+++ b/sources/pyside6/tests/QtXml/qdomdocument_test.py
@@ -47,7 +47,7 @@ class QDomDocumentTest(unittest.TestCase):
self.assertFalse(ok)
self.assertEqual(errorStr, 'Opening and ending tag mismatch.')
self.assertEqual(errorLine, 4)
- self.assertEqual(errorColumn, 21)
+ self.assertEqual(errorColumn, 4)
def testQDomDocumentSetContentWithGoodXmlData(self):
'''Sets valid xml as the QDomDocument contents.'''