Hi,
I would like to bring this for discussion in the next KDE SIG meeting.
Currently, when updating Qt 5, it takes me less than a day to do update Qt modules, but at least two days when doing rebuilds and this is in Rawhide, it gets worse when doing stable releases, because I have to check whether I can do merge from Rawhide to F36 because there might be version differences. For this reason I'm not really eager to do updates in stable branches.
I believe we can improve this situation by removing dependency on the exact qtbase-private-devel version it was build against for almost all the ~80 packages that need to be rebuild. Reason is that I don't really expect private API to change at this point in Qt 5. I would keep it for packages like QGnomePlatform, Adwaita-qt, Python-qt, but remove it from the rest. This would simplify updates a lot and I'm sure on 99% there shouldn't be any regression.
For the future (talking about Qt 6) it would be good that packages depending on private API target major version bumps and not minor ones.
What do you think?
+1 from me. Seems reasonable to expect that Qt 5 won't change much at this point.
The reason openSUSE distributions created this patch and continue to use it without issue is because their build system automatically rebuilds things for them when bumps like this occur. We are not so fortunate to have that capability.
That said, do we use any automation for building the side tag for Qt updates in the first place? Maybe we can make it easier to do Qt updates by having a script to collect and trigger everything in a side tag all the time anyway.
+1 from me.
Just because OpenSUSE continues to use the patch without issue, doesn't mean it's the right thing to do. Can they remove the patch and continue without issue?
This isn't just Fedora that this affects. It affects the RHEL and EPEL community as well.
Well, we imported it because we were having issues too: private API consumers were breaking on point releases and patch releases. We used to only track on major versions and it wasn't enough.
We really should be solving this problem by making it easier to do this properly (possible) or getting Qt applications to reduce their private API usage (which isn't going to happen).
This was talked about in the KDE SIG meeting. If I remember right the conclusion was to keep the patch, but alter it a bit. The patch currently changes the dependency to Major.Minor.Patch-Level (5.15.3). We will change it to just Major.Minor (5.15). For qt5, this should basically stop the dependency updates. For qt6, this will slow things down, but should keep packages from breaking when the API's change.
Sorry to chime in since I wasn't at the meeting, but... IMO, for Qt5, I think the better options are: 1. drop patch 2. keep patch as-is
I think modifying the patch (for Qt5) is a worse 3rd option. if we want to introduce change, just rip the bandaid off and drop the patch.
For Qt6, since there's more activity and churn there, agreed.
Metadata Update from @siosm: - Issue untagged with: meeting
Update: Rawhide updated to Qt 5.15.5 with the above mentioned patch removed. Most of the packages we needed to rebuild no longer depend on the exact version of Qt they were built against.
I will continue with F36 soon.
Done in F36.
Metadata Update from @jgrulich: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Followup PR related to this change, https://src.fedoraproject.org/rpms/qt5-qtbase/pull-request/11
Issue status updated to: Open (was: Closed)
Issue status updated to: Closed (was: Open) Issue close_status updated to: Fixed