Bug 1222514

Summary: python-PyQt6 FTBFS with Qt6 6.7.0
Product: [openSUSE] openSUSE Tumbleweed Reporter: Ana Guerrero <ana.guerrero>
Component: PythonAssignee: Benjamin Greiner <code>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: andrea.ippo, christophe, dlpville, epistemepromeneur, fvogt, jwittner, kristof, pawel.dynski, peter.huyoff, peter_schettina, stakanov
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Ana Guerrero 2024-04-09 08:36:16 UTC
Hi,

python-PyQt6 fails to build following an update in Factory to  Qt6 6.7.0:

[  683s] g++ -c -pipe -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DQT_NO_INT128 -fno-exceptions -Wall -Wextra -D_REENTRANT -fPIC -DPy_LIMITED_API=0x03080000 -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_KEYPAD_NAVIGATION -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -I. -I. -I.. -I../../qpy/QtCore -I/usr/include/python3.10 -I/usr/include/qt6 -I/usr/include/qt6/QtCore -I. -I/usr/lib64/qt6/mkspecs/linux-g++ -o sipQtCoreQThreadPool.o sipQtCoreQThreadPool.cpp
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: In function ‘PyObject* meth_QTimeZone_country(PyObject*, PyObject*)’:
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:152:37: warning: ‘QLocale::Country QTimeZone::country() const’ is deprecated: Use territory() instead [-Wdeprecated-declarations]
[  683s]   152 |             sipRes = sipCpp->country();
[  683s]       |                      ~~~~~~~~~~~~~~~^~
[  683s] In file included from /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/sip/QtCore/qtimezone.sip:26:
[  683s] /usr/include/qt6/QtCore/qtimezone.h:173:22: note: declared here
[  683s]   173 |     QLocale::Country country() const;
[  683s]       |                      ^~~~~~~
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: In function ‘PyObject* slot_QTimeZone___ne__(PyObject*, PyObject*)’:
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:1025:51: error: ‘class QTimeZone’ has no member named ‘operator!=’; did you mean ‘operator=’?
[  683s]  1025 |             sipRes = sipCpp->::QTimeZone::operator!=(*a0);
[  683s]       |                                                   ^~
[  683s]       |                                                   operator=
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: In function ‘PyObject* slot_QTimeZone___eq__(PyObject*, PyObject*)’:
[  683s] /home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:1054:51: error: ‘class QTimeZone’ has no member named ‘operator==’; did you mean ‘operator=’?
[  683s]  1054 |             sipRes = sipCpp->::QTimeZone::operator==(*a0);
[  683s]       |                                                   ^~
[  683s]       |                                                   operator=
[  683s] make[1]: *** [Makefile:2169: sipQtCoreQTimeZone.o] Error 1
[  683s] make[1]: *** Waiting for unfinished jobs....
[  684s] make[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore'
[  684s] make: *** [Makefile:211: sub-QtCore-make_first-ordered] Error 2
[  684s] error: Bad exit status from /var/tmp/rpm-tmp.cGTtji (%build)
[  684s]
Comment 1 Benjamin Greiner 2024-04-09 10:13:54 UTC
Reported upstream: https://www.riverbankcomputing.com/pipermail/pyqt/2024-April/045778.html
Comment 2 Christophe Marin 2024-04-09 10:37:21 UTC
Related to https://code.qt.io/cgit/qt/qtbase.git/commit/?id=7a3fed3f
Comment 3 Benjamin Greiner 2024-04-10 14:53:46 UTC
Upstream is apparently working on it, there is just no release yet. I am hesitant to package the preview version or even only partially patch.

https://www.riverbankcomputing.com/static/Downloads/PyQt6/ChangeLog-6.7.0.dev2404081550
Comment 4 Christophe Marin 2024-04-10 18:56:51 UTC
Note that I reverted a binary incompatible change in qtmultimedia 6.7.0, it may need another change in pyqt
Comment 5 Fabian Vogt 2024-04-11 07:17:07 UTC
(In reply to Benjamin Greiner from comment #3)
> Upstream is apparently working on it, there is just no release yet. I am
> hesitant to package the preview version or even only partially patch.
> 
> https://www.riverbankcomputing.com/static/Downloads/PyQt6/ChangeLog-6.7.0.
> dev2404081550

Currently it's not installable at all, so even the preview version would be a net positive IMO
Comment 6 Andreas Stieger 2024-04-11 08:37:42 UTC
*** Bug 1222638 has been marked as a duplicate of this bug. ***
Comment 7 Andreas Stieger 2024-04-11 08:38:30 UTC
*** Bug 1222658 has been marked as a duplicate of this bug. ***
Comment 8 Andreas Stieger 2024-04-11 08:38:58 UTC
*** Bug 1222652 has been marked as a duplicate of this bug. ***
Comment 9 Andrea Ippolito 2024-04-11 14:01:19 UTC
Hi, this is breaking existing/preventing new installation of Vorta 0.9.1 on opensuse (TW)
Comment 10 Ana Guerrero 2024-04-11 15:59:27 UTC
(In reply to Fabian Vogt from comment #5)
> (In reply to Benjamin Greiner from comment #3)
> > Upstream is apparently working on it, there is just no release yet. I am
> > hesitant to package the preview version or even only partially patch.
> > 
> > https://www.riverbankcomputing.com/static/Downloads/PyQt6/ChangeLog-6.7.0.
> > dev2404081550
> 
> Currently it's not installable at all, so even the preview version would be
> a net positive IMO

Agreed, please Ben take a look at https://build.opensuse.org/request/show/1166908
Comment 11 Andreas Stieger 2024-04-11 16:17:47 UTC
*** Bug 1222689 has been marked as a duplicate of this bug. ***
Comment 12 hui 2024-04-12 04:15:11 UTC
*** Bug 1222697 has been marked as a duplicate of this bug. ***
Comment 13 Benjamin Greiner 2024-04-12 08:44:26 UTC
(In reply to Christophe Marin from comment #4)
> Note that I reverted a binary incompatible change in qtmultimedia 6.7.0, it
> may need another change in pyqt

The SIP files of the current development snapshot in sip/QtMultimedia don't seem to be affected by your changes
Comment 14 Christophe Marin 2024-04-12 09:09:05 UTC
*** Bug 1222712 has been marked as a duplicate of this bug. ***
Comment 15 Benjamin Greiner 2024-04-12 09:37:19 UTC
https://build.opensuse.org/request/show/1167027

If it is so important that PyQt6 immediately builds with a Qt6 update, then it should be included into lettered Ring1 staging.
Comment 16 Andreas Stieger 2024-04-13 12:55:24 UTC
*** Bug 1222743 has been marked as a duplicate of this bug. ***
Comment 17 Andreas Stieger 2024-04-13 14:17:25 UTC
*** Bug 1222745 has been marked as a duplicate of this bug. ***
Comment 18 Andreas Stieger 2024-04-13 14:17:59 UTC
*** Bug 1222747 has been marked as a duplicate of this bug. ***
Comment 19 Benjamin Greiner 2024-04-13 15:03:56 UTC
Fixed in snapshot 20240412