Skip to content

Commit 4545da5

Browse files
committed
Add support for Qt 6.7
- use Qt 6.7 for Winodws CI build, 6.6 for ubuntu (jurplel/install-qt-action has a problem with that version) - fixes #215
1 parent 39c414e commit 4545da5

File tree

3 files changed

+82
-78
lines changed

3 files changed

+82
-78
lines changed

.github/workflows/build_latest.yml

+4-5
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ on:
55
branches:
66
- master
77
pull_request:
8-
8+
99
defaults:
1010
run:
1111
shell: bash
@@ -16,7 +16,7 @@ jobs:
1616
fail-fast: false
1717
matrix:
1818
os: ['ubuntu', 'windows']
19-
qt-version: [ '5.12.*', '5.15.*', '6.5.*' ]
19+
qt-version: [ '5.12.*', '5.15.*', '6.7.*' ]
2020
python-version: [ '3.12' ]
2121
runs-on: ${{ matrix.os }}-latest
2222
steps:
@@ -30,10 +30,10 @@ jobs:
3030
- name: Install Qt ${{matrix.qt-version}}
3131
uses: jurplel/install-qt-action@v4
3232
with:
33-
version: ${{ matrix.qt-version }}
33+
# 6.7.* currently does not work with ubuntu with this action
34+
version: ${{ matrix.os == 'ubuntu' && matrix.qt-version == '6.7.*' && '6.6.*' || matrix.qt-version }}
3435
modules: ${{startsWith(matrix.qt-version, '6') && 'qt5compat qtscxml qtpositioning qtwebchannel qtmultimedia qtwebengine' || '' }}
3536
arch: ${{ matrix.os == 'ubuntu' && 'gcc_64' || (startsWith(matrix.qt-version, '5.12') && 'win64_msvc2017_64' || 'win64_msvc2019_64') }}
36-
archives: "qtmultimedia qtbase qttools qtdeclarative ${{ matrix.os == 'windows' && 'qtwinextras' || 'qtlinuxextras qtwayland icu' }}"
3737

3838
- name: Setup Python ${{ matrix.python-version }}
3939
uses: actions/setup-python@v5
@@ -117,4 +117,3 @@ jobs:
117117
set PYTHONASYNCIODEBUG=1
118118
set PYTHONWARNINGS=error
119119
nmake && nmake check "TESTARGS=-platform offscreen"
120-

generator/typesystem_core.xml

+76-71
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0"?>
22
<typesystem package="com.trolltech.qt.Core">
3-
3+
44
<rejection class="QSysInfo" enum-name="WinVersion"/>
55
<rejection class="QSysInfo" enum-name="MacVersion"/>
66

@@ -14,7 +14,7 @@
1414
<rejection class="QSystemLocale"/>
1515
<rejection class="QFutureWatcherBase"/>
1616
<rejection class="QFutureSynchronizer"/>
17-
17+
1818
<rejection class="QAbstractConcatenable"/>
1919
<rejection class="QAbstractNativeEventFilter"/>
2020
<rejection class="QAbstractOpenGLFunctions"/>
@@ -179,7 +179,7 @@
179179
<primitive-type name="GLvoid"/>
180180
<primitive-type name="GLboolean"/>
181181
<primitive-type name="GLuint64"/>
182-
182+
183183
<primitive-type name="bool"/>
184184
<primitive-type name="double"/>
185185
<primitive-type name="qreal"/>
@@ -219,7 +219,7 @@
219219
<primitive-type name="qintptr"/>
220220
<primitive-type name="qptrdiff"/>
221221
<primitive-type name="qsizetype"/>
222-
222+
223223
<rejection class="qfloat16"/> <!-- only used in QRgbaFloat template and QCborStreamReader/Writer so far -->
224224

225225
<value-type name="QModelIndex"/>
@@ -718,6 +718,7 @@
718718
<rejection class="QProcess" function-name="pid"/>
719719
<rejection class="QProcess" function-name="setInheritHandles"/>
720720
<rejection class="QProcess" function-name="inheritHandles"/>
721+
<rejection class="QProcess" function-name="failChildProcessModifier"/>
721722
<rejection class="QRegion" function-name="cleanUp"/>
722723
<rejection class="QSettings" function-name="registerFormat"/>
723724
<rejection class="QVector" function-name="back"/>
@@ -744,7 +745,7 @@
744745
<rejection class="QAbstractFileEngineIterator" enum-name="EntryInfoType"/>
745746

746747
<namespace-type name="Qt">
747-
748+
748749
<extra-includes>
749750
<include file-name="QTextDocument" location="global"/>
750751
</extra-includes>
@@ -778,7 +779,7 @@
778779
<enum-type name="QSharedMemory::AccessMode"/>
779780
<enum-type name="QSharedMemory::SharedMemoryError"/>
780781
<enum-type name="QElapsedTimer::ClockType"/>
781-
782+
782783
<enum-type name="QtMsgType">
783784
</enum-type>
784785

@@ -909,7 +910,7 @@
909910

910911
<enum-type name="QtConcurrent::ReduceOption" flags="QtConcurrent::ReduceOptions"/>
911912
<enum-type name="QtConcurrent::ThreadFunctionResult"/>
912-
913+
913914

914915
<enum-type name="QCoreApplication::Encoding">
915916
</enum-type>
@@ -983,7 +984,7 @@ public:
983984
</inject-code>
984985
</value-type>
985986
<value-type name="QCalendar::YearMonthDay" since-version="5.14"/>
986-
987+
987988
<value-type name="QDateTime">
988989
<modify-function signature="operator=(QDateTime)" remove="all"/>
989990
</value-type>
@@ -999,18 +1000,18 @@ public:
9991000
</value-type>
10001001

10011002
<value-type name="QPoint">
1002-
<modify-function signature="rx()" remove="all"/>
1003-
<modify-function signature="ry()" remove="all"/>
1003+
<modify-function signature="rx()" remove="all"/>
1004+
<modify-function signature="ry()" remove="all"/>
10041005
</value-type>
10051006
<value-type name="QPointF">
1006-
<modify-function signature="rx()" remove="all"/>
1007-
<modify-function signature="ry()" remove="all"/>
1007+
<modify-function signature="rx()" remove="all"/>
1008+
<modify-function signature="ry()" remove="all"/>
10081009
</value-type>
10091010
<enum-type name="QLineF::IntersectType"/>
10101011
<enum-type name="QLineF::IntersectionType"/>
10111012
<value-type name="QLineF"/>
10121013
<value-type name="QLine"/>
1013-
1014+
10141015
<value-type name="QRect">
10151016
<modify-function signature="getCoords(int*,int*,int*,int*)const">
10161017
<remove/>
@@ -1088,11 +1089,15 @@ public:
10881089
<modify-function signature="toUInt(QString,bool*,int)const" remove="all"/>
10891090
<modify-function signature="toULongLong(QString,bool*,int)const" remove="all"/>
10901091
<modify-function signature="operator=(QLocale)" remove="all"/>
1091-
1092+
10921093
<extra-includes>
10931094
<include file-name="QDate" location="global"/>
10941095
</extra-includes>
10951096

1097+
<inject-code class="pywrap-h" since-version="6.7">
1098+
public:
1099+
const static int DefaultTwoDigitBaseYear = QLocale::DefaultTwoDigitBaseYear;
1100+
</inject-code>
10961101
</value-type>
10971102

10981103

@@ -1109,7 +1114,7 @@ public:
11091114
<modify-function signature="operator^=(QBitArray)" access="private"/>
11101115
<modify-function signature="operator|=(QBitArray)" access="private"/>
11111116
<modify-function signature="operator~()const" access="private"/>
1112-
1117+
11131118
<modify-function signature="operator&amp;=(QBitArray)">
11141119
<modify-argument index="0" replace-value="this"/>
11151120
</modify-function>
@@ -1237,7 +1242,7 @@ public:
12371242
<modify-function signature="operator=(QByteArray)" access="private"/>
12381243
<modify-function signature="operator+=(QString)" remove="all"/>
12391244
<modify-function signature="operator+=(char)" remove="all"/>
1240-
1245+
12411246
<inject-code class="pywrap-h">
12421247
PyObject* data(QByteArray* b) {
12431248
return PyBytes_FromStringAndSize(b-&gt;data(), b-&gt;size());
@@ -1436,7 +1441,7 @@ public:
14361441
<!-- Can't provide same API and performance -->
14371442
<modify-function signature="unmap(unsigned char*)" remove="all"/>
14381443
<!-- Can't provide same API and performance -->
1439-
1444+
14401445
<modify-function signature="open(int,QFlags&lt;QIODevice::OpenModeFlag&gt;)" remove="all" before-version="6"/>
14411446
<modify-function signature="open(int,QFlags&lt;QIODeviceBase::OpenModeFlag&gt;,QFlags&lt;QFileDevice::FileHandleFlag&gt;)" remove="all" since-version="6"/>
14421447
<modify-function signature="decodeName(const char*)" remove="all"/>
@@ -1621,14 +1626,14 @@ public:
16211626
<define-ownership owner="c++"/>
16221627
</modify-argument>
16231628
</modify-function>
1624-
1629+
16251630
<modify-function signature="argv()" remove="all"/>
16261631
<!-- Obsolete -->
16271632
<modify-function signature="argc()" remove="all"/>
16281633
<!-- Obsolete -->
16291634

16301635
<modify-function signature="QCoreApplication(int &amp;, char **, int)" remove="all"/>
1631-
1636+
16321637
<modify-function signature="QCoreApplication(int &amp;, char **)" remove="all"/>
16331638
</object-type>
16341639

@@ -1654,7 +1659,7 @@ public:
16541659

16551660
<object-type name="QSignalBlocker"/>
16561661
<object-type name="QStorageInfo"/>
1657-
1662+
16581663
<object-type name="QDataStream">
16591664
<extra-includes>
16601665
<include file-name="PythonQtConversion.h" location="global"/>
@@ -1701,28 +1706,28 @@ public:
17011706
<modify-function signature="writeBytes(const char*,uint)">
17021707
<remove/>
17031708
</modify-function>
1704-
1709+
17051710
<modify-function signature="operator&gt;&gt;(signed char&amp;)" remove="all"/>
17061711
<modify-function signature="operator&lt;&lt;(signed char)" remove="all"/>
17071712

1708-
<modify-function signature="operator&lt;&lt;(bool)" remove="all"/>
1709-
<modify-function signature="operator&lt;&lt;(unsigned char)" remove="all"/>
1710-
<modify-function signature="operator&lt;&lt;(int)" remove="all"/>
1711-
<modify-function signature="operator&lt;&lt;(qint64)" remove="all"/>
1712-
<modify-function signature="operator&lt;&lt;(float)" remove="all"/>
1713-
<modify-function signature="operator&lt;&lt;(double)" remove="all"/>
1714-
<modify-function signature="operator&lt;&lt;(short)" remove="all"/>
1715-
1716-
<modify-function signature="operator&gt;&gt;(bool &amp;)" remove="all"/>
1717-
<modify-function signature="operator&gt;&gt;(unsigned char &amp;)" remove="all"/>
1718-
<modify-function signature="operator&gt;&gt;(int &amp;)" remove="all"/>
1719-
<modify-function signature="operator&gt;&gt;(uint &amp;)" remove="all"/>
1720-
<modify-function signature="operator&gt;&gt;(qint64 &amp;)" remove="all"/>
1721-
<modify-function signature="operator&gt;&gt;(unsigned long long &amp;)" remove="all"/>
1722-
<modify-function signature="operator&gt;&gt;(float &amp;)" remove="all"/>
1723-
<modify-function signature="operator&gt;&gt;(double &amp;)" remove="all"/>
1724-
<modify-function signature="operator&gt;&gt;(short &amp;)" remove="all"/>
1725-
<modify-function signature="operator&gt;&gt;(unsigned short &amp;)" remove="all"/>
1713+
<modify-function signature="operator&lt;&lt;(bool)" remove="all"/>
1714+
<modify-function signature="operator&lt;&lt;(unsigned char)" remove="all"/>
1715+
<modify-function signature="operator&lt;&lt;(int)" remove="all"/>
1716+
<modify-function signature="operator&lt;&lt;(qint64)" remove="all"/>
1717+
<modify-function signature="operator&lt;&lt;(float)" remove="all"/>
1718+
<modify-function signature="operator&lt;&lt;(double)" remove="all"/>
1719+
<modify-function signature="operator&lt;&lt;(short)" remove="all"/>
1720+
1721+
<modify-function signature="operator&gt;&gt;(bool &amp;)" remove="all"/>
1722+
<modify-function signature="operator&gt;&gt;(unsigned char &amp;)" remove="all"/>
1723+
<modify-function signature="operator&gt;&gt;(int &amp;)" remove="all"/>
1724+
<modify-function signature="operator&gt;&gt;(uint &amp;)" remove="all"/>
1725+
<modify-function signature="operator&gt;&gt;(qint64 &amp;)" remove="all"/>
1726+
<modify-function signature="operator&gt;&gt;(unsigned long long &amp;)" remove="all"/>
1727+
<modify-function signature="operator&gt;&gt;(float &amp;)" remove="all"/>
1728+
<modify-function signature="operator&gt;&gt;(double &amp;)" remove="all"/>
1729+
<modify-function signature="operator&gt;&gt;(short &amp;)" remove="all"/>
1730+
<modify-function signature="operator&gt;&gt;(unsigned short &amp;)" remove="all"/>
17261731

17271732
<inject-code class="pywrap-h">
17281733
QString readQString(QDataStream* d) { QString r; (*d) &gt;&gt; r; return r; }
@@ -1856,38 +1861,38 @@ public:
18561861
<remove/>
18571862
</modify-function>
18581863

1859-
<modify-function signature="operator&lt;&lt;(QBool)">
1860-
<rename to="writeBoolean"/>
1864+
<modify-function signature="operator&lt;&lt;(QBool)">
1865+
<rename to="writeBoolean"/>
18611866
<modify-argument index="0" replace-value="this"/>
18621867
</modify-function>
1863-
<modify-function signature="operator&lt;&lt;(char)">
1868+
<modify-function signature="operator&lt;&lt;(char)">
18641869
<modify-argument index="0" replace-value="this"/>
1865-
<rename to="writeByte"/>
1870+
<rename to="writeByte"/>
18661871
</modify-function>
18671872
<modify-function signature="operator&lt;&lt;(signed int)">
1868-
<rename to="writeInt"/>
1873+
<rename to="writeInt"/>
18691874
<modify-argument index="0" replace-value="this"/>
18701875
</modify-function>
18711876
<modify-function signature="operator&lt;&lt;(qlonglong)">
1872-
<rename to="writeLongLong"/>
1877+
<rename to="writeLongLong"/>
18731878
<modify-argument index="0" replace-value="this"/>
18741879
</modify-function>
1875-
<modify-function signature="operator&lt;&lt;(float)">
1876-
<rename to="writeFloat"/>
1880+
<modify-function signature="operator&lt;&lt;(float)">
1881+
<rename to="writeFloat"/>
18771882
<modify-argument index="0" replace-value="this"/>
18781883
</modify-function>
1879-
<modify-function signature="operator&lt;&lt;(double)">
1880-
<rename to="writeDouble"/>
1884+
<modify-function signature="operator&lt;&lt;(double)">
1885+
<rename to="writeDouble"/>
18811886
<modify-argument index="0" replace-value="this"/>
1882-
</modify-function>
1887+
</modify-function>
18831888
<modify-function signature="operator&lt;&lt;(signed short)">
1884-
<rename to="writeShort"/>
1889+
<rename to="writeShort"/>
18851890
<modify-argument index="0" replace-value="this"/>
18861891
</modify-function>
18871892
<modify-function signature="operator&lt;&lt;(const QByteArray&amp;)">
18881893
<rename to="writeByteArray"/>
18891894
<modify-argument index="0" replace-value="this"/>
1890-
</modify-function>
1895+
</modify-function>
18911896
<modify-function signature="operator&lt;&lt;(const QString&amp;)">
18921897
<rename to="writeString"/>
18931898
<modify-argument index="0" replace-value="this"/>
@@ -1921,8 +1926,8 @@ public:
19211926
<rename to="readDouble"/>
19221927
</modify-function>
19231928

1924-
<modify-function signature="operator&lt;&lt;(qulonglong)" remove="all"/>
1925-
<modify-function signature="operator&gt;&gt;(qulonglong&amp;)" remove="all"/>
1929+
<modify-function signature="operator&lt;&lt;(qulonglong)" remove="all"/>
1930+
<modify-function signature="operator&gt;&gt;(qulonglong&amp;)" remove="all"/>
19261931
</object-type>
19271932

19281933
<object-type name="QSystemSemaphore"/>
@@ -1967,14 +1972,14 @@ public:
19671972
<object-type name="QMetaObject"/>
19681973
<object-type name="QMetaMethod"/>
19691974
<object-type name="QMetaEnum">
1970-
<modify-function signature="fromType()" remove="all"/>
1975+
<modify-function signature="fromType()" remove="all"/>
19711976
</object-type>
19721977
<object-type name="QMetaProperty"/>
19731978
<object-type name="QMetaClassInfo"/>
19741979
<object-type name="QElapsedTimer"/>
19751980
<object-type name="QMetaType">
19761981
<!-- Qt 5 templates that need to be removed: -->
1977-
<modify-function signature="hasRegisteredConverterFunction()" remove="all"/>
1982+
<modify-function signature="hasRegisteredConverterFunction()" remove="all"/>
19781983
<modify-function signature="hasRegisteredDebugStreamOperator()" remove="all"/>
19791984
<modify-function signature="hasRegisteredComparators()" remove="all"/>
19801985
<modify-function signature="registerEqualsComparator()" remove="all"/>
@@ -1985,31 +1990,31 @@ public:
19851990

19861991
<!-- Don't know if QCborNegativeInteger can be sensibly supported in Python: -->
19871992
<rejection enum-name="QCborNegativeInteger" since-version="5.12"/>
1988-
1993+
19891994
<object-type name="QCborStreamWriter" since-version="5.12">
1990-
<modify-function signature="append(QCborTag)" remove="all"/>
1991-
<modify-function signature="append(const char*,qsizetype)" remove="all"/>
1992-
<modify-function signature="QCborStreamWriter(const QCborStreamWriter&amp;)" remove="all"/>
1993-
<modify-function signature="operator=(const QCborStreamWriter&amp;)" remove="all"/>
1995+
<modify-function signature="append(QCborTag)" remove="all"/>
1996+
<modify-function signature="append(const char*,qsizetype)" remove="all"/>
1997+
<modify-function signature="QCborStreamWriter(const QCborStreamWriter&amp;)" remove="all"/>
1998+
<modify-function signature="operator=(const QCborStreamWriter&amp;)" remove="all"/>
19941999
</object-type>
19952000
<object-type name="QCborStreamReader" since-version="5.12">
1996-
<modify-function signature="readByteArray()" remove="all"/>
1997-
<modify-function signature="readString()" remove="all"/>
1998-
<modify-function signature="readStringChunk(char*,qsizetype)" remove="all"/>
1999-
<modify-function signature="toTag()const" remove="all"/>
2000-
<modify-function signature="QCborStreamReader(const QCborStreamReader&amp;)" remove="all"/>
2001-
<modify-function signature="operator=(const QCborStreamReader&amp;)" remove="all"/>
2001+
<modify-function signature="readByteArray()" remove="all"/>
2002+
<modify-function signature="readString()" remove="all"/>
2003+
<modify-function signature="readStringChunk(char*,qsizetype)" remove="all"/>
2004+
<modify-function signature="toTag()const" remove="all"/>
2005+
<modify-function signature="QCborStreamReader(const QCborStreamReader&amp;)" remove="all"/>
2006+
<modify-function signature="operator=(const QCborStreamReader&amp;)" remove="all"/>
20022007
<inject-code class="pywrap-h">
20032008
QByteArray readByteArray(QCborStreamReader* theWrappedObject) {
20042009
auto result = theWrappedObject->readByteArray();
20052010
return result.status == QCborStreamReader::Ok ? result.data : QByteArray();
20062011
}
2007-
2012+
20082013
QString readString(QCborStreamReader* theWrappedObject) {
20092014
auto result = theWrappedObject->readString();
20102015
return result.status == QCborStreamReader::Ok ? result.data : QString();
20112016
}
2012-
2017+
20132018
qint64 toTag(QCborStreamReader* theWrappedObject) const {
20142019
return static_cast&lt;qint64&gt;(theWrappedObject->toTag());
20152020
}
@@ -2023,7 +2028,7 @@ public:
20232028
QCborValue* new_QCborValue(qint64 tag, const QCborValue&amp; taggedValue) {
20242029
return new QCborValue(QCborTag(tag), taggedValue);
20252030
}
2026-
2031+
20272032
qint64 tag(QCborValue* theWrappedObject, qint64 defaultValue) const {
20282033
return static_cast&lt;qint64&gt;(theWrappedObject->tag(QCborTag(defaultValue)));
20292034
}
@@ -2281,7 +2286,7 @@ public:
22812286
<object-type name="QHashSeed" since-version="6.2">
22822287
<modify-function signature="operator size_t()const" remove="all"/>
22832288
</object-type>
2284-
2289+
22852290
<enum-type name="QCommandLineOption::Flag"/>
22862291
<enum-type name="QFileDevice::FileTime"/>
22872292
<enum-type name="QLocale::DataSizeFormat"/>

0 commit comments

Comments
 (0)