-
Notifications
You must be signed in to change notification settings - Fork 37.7k
build: Bump minimum Qt version to 5.11.3 #24132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
I am concept ACK on upgrading the minimum required Qt version to a later version because, as it is mentioned, it makes the code more secure and reliable. However, I have one question I would like to ask. As you mentioned:
I agree with the reasoning. However, when I checked for the Standard Support for Qt 5.11.3, I noticed it ended on 2019-05-22. |
To support recent two Debian versions. No need to force users to upgrade their systems.
In particular, Debian 10 packages are still supported. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
functor-parameter overload of QMetaObject::invokeMethod
fixed https://bugreports.qt.io/browse/QTBUG-10907
~0. If this is all the motivation, that seems fairly weak.
Not sure what the |
PR description has been updated with an example. Also see #16348 by @promag. |
This change is a prerequisite for the following bumping Qt minimum version to 5.11.3. It is required as bionic has Qt 5.9.5. Effectively, this also changes: - gcc from 8.4.0 to 8.3.0 - python from 3.6.5 to 3.7.3
Updated e39a9da -> 956f732 (pr24132.01 -> pr24132.02): |
cr ACK 956f732 The python3 CI change should be fine, as we still test python3.6 in the bionic nowallet task. |
Concept ACK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK.
Then we can also ditch GUIUtil::ObjectInvoke
.
Concept ACK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 956f732
The current minimum Qt version is 5.9.5 which has been set in #21286.
Distro support:
As another Ubuntu LTS is coming soon, it seems unreasonable to stick to Qt 5.9 which support ended on 2020-05-31. Anyway, it's still possible to build Bitcoin Core GUI with depends on bionic system.
Bumping the minimum Qt version allows to make code safer and more reliable, e.g.:
QMetaObject::invokeMethod
An example of the patch using the functor-overload of
QMetaObject::invokeMethod
:It uses the same new syntax as signal-slot connection with compile-time check. Also see #16348.
This PR is intended to be merged early after branching
23.x
off.