We have released Qt 6.2.2 today. Along with close to 300 new bug fixes it brings security updates, an updated MinGW compiler and re-introduces two modules especially beneficial for automotive customers.
Qt 6.2.2 is the second patch release to the Qt 6.2 series containing close to 300 bug fixes to the top of Qt 6.2.1 release. More information about the most important changes and bug fixes can be found from Qt 6.2.2 release note.
New MinGW toolchain
With Qt 6.2.2 we have updated MinGW to version 11.2.0. Among many other benefits the new version enables the new Qt Multimedia module also for those using MinGW compiler.
Re-introducing two modules
On top of Qt 6.2.2 we are re-introducing two modules previously available for Qt 5: Qt Application Manager and Qt Interface Framework (earlier called Qt IVI). These modules will be available with certain commercial licenses as well as from open-source repositories. Binaries of these modules are only offered for the users having a valid commercial license to these modules.
The Qt Application Manager helps you to create embedded Linux systems that have a highly complex UI setup, which you can optionally split into a multi-process setup to increase flexibility and stability. The main functional blocks of the application manager are: Wayland Window Compositor, Application Launcher, User Input Management, Notifications and Application Installation.
The Qt Interface Framework module provides both the tools and the core APIs, for you to implement Middleware APIs, Middleware backends, and Middleware services. The Qt Interface Framework Generator provides a flexible way to define new APIs via an Interface Definition Language (IDL) and generate classes for use, from C++ and QML.
For those still considering migration to Qt 6 it is important to note that in addition to the new features and functionality, the Qt 6.x releases provide a high number of bug fixes to Qt 5. With the now released Qt 6.2.2 the total number of issues fixed with Qt 6 is well over 3000 bugs compared to Qt 5. Granted, some of these fixes are not relevant for Qt 5 as they affect functionality or platforms not available in Qt 5.
For the commercial license holders we pick the most important bug fixes as well as security updates into the commercial only Qt 5.15 LTS releases. However, for the less important bugs the fixes are only provided with Qt 6. So even if your application might not need the new features provided by Qt 6 or the new platforms supported by Qt 6, getting the latest bug fixes can be a solid reason to migrate to Qt 6.
Preview of package manager support
For Qt 6.2.2 we provide for the first time technology preview for the Conan package manager support to distribute Qt packages. All 6.2.2 modules are supported, but initially only on the desktop platforms. We'll update the preview to selected upcoming releases of Qt and plan to include mobile and embedded targets in the forthcoming releases.
Conan is a de-centralised cross-platform package manager for C and C++. It is also a dependency manager, making it easy to get hold of the right version of components needed by an application. This does not apply only to Qt modules, but third party components as well.
Porting from Qt 5 to Qt 6 is straightforward for most applications. The Qt 6 porting guide lists the required steps in detail and has information on potential caveats you may face depending upon the functionality your application is using.
The typical steps for porting to Qt 6 are:
Check that you have a supported compiler and platform version in use
Compile first with Qt 5.15 in the Qt 6 -mode (using the QT_DISABLE_DEPRECATED_BEFORE macro)
Then compile with Qt 6.x - if needed, leverage the compatibility modules in the porting phase
With these, you have the application running on Qt 6 and can start using all the new features and functionality it provides. Additionally, if your application uses QML, run the qmllint tool and fix the warnings it gives.
Get Qt 6.2.2
Like usual you can add the Qt 6.2.2 in the existing online installation by using the maintenance tool or do a clean installation by using the Qt Online Installer. Qt for Python will be available later by the usual means.