We are nearing an important milestone in the KDE Frameworks 6 development, branching and thus splitting the development of KDE Frameworks 5 and 6 is getting really close now. That’s not the only noteworthy news from the KF6 work though.

Branching plan

Following the plan from Akademy this should happen after 5.101, which is about to be released. Given we still have a few things to sort out around tooling and infrastructure as well as scheduling constraints around the upcoming holiday season we are looking at the first week of January for this now.

By then we hope to have kdesrc-build metadata prepared and new CI jobs set up. We’d then create a branch in all Frameworks repository named kf5.

From that point on, KDE Frameworks 5 is considered feature-frozen, feature work should continue to happen in the master branch, primarily targeting KF6 then. Bugfixes of course can and should be backported for quite some time to come, and KF5 releases will continue with the same pattern as previously. At some future point we will likely start to increase the interval between releases though, as the amount of changes decreases.

Ideally nothing should change for application and Plasma developers by this, both kdesrc-build and the CI should continue to provide you with KF5 unless you explicitly chose to switch to KF6. If you manage manual Frameworks builds and/or work on Frameworks itself you’ll of course have to adjust to the new branches.

Despite all the planning it is quite possible we missed something and we’ll end up with some disruptions around branching, there is no precedent for two major versions of Frameworks to exist in parallel so far.

Android builds

We were able to do Android library builds on the CI against Qt 6 since quite some time, now also executable builds work, which gives us Android CI coverage also for applications.

This however does not include APK packaging yet (that’s not run as part of the normal CI), there is more work for this needed in ECM, as well as adjustments in the Android manifest and Gradle files in each application.

Application ports

Several larger modules have meanwhile also been adapted to build against Qt 6, such as Gwenview, Zanshin, KAlarm and libkomparediff2. The latter also unblocks looking at things like Kompare and KDevelop.

Based on Nico’s statistics, close to 60% of the repositories covered there have Qt 6 CI on at least one platform. A few modules on that list are already ported but blocked by missing dependencies on the CI, but many are still to be done.

How you can help

All of the above is the result of a big team effort, and you can be part of that!

To participate, here are the most important coordination and communication channels:

There’s another way to help as well, KDE’s End of Year Fundraiser. The infrastructure we do all this work on doesn’t come for free after all.