Preparing for KDE/Qt 6

Milian Wolff mail at milianw.de
Sun Aug 28 16:47:22 BST 2022


Hey all,

The 22.08 release branch was created, and I would like to prepare KDevelop 
master for Qt 6 and wonder how others feel about this. There are some large 
tasks we need to solve first I believe:

#1 port away from deprecated API
================================

We still use quite a bit of recently-deprecated KF5 API which we need to get 
away from in preparation for KDE/Qt 6. But doing so will break compatibility 
with older KF6 releases.

Personally I couldn't care less about older KF6, so my proposal is: 

Let's raise our minimum KF5 requirement to 5.91 [1] which was released in 
February 2022, half a year ago. When 23.04 is going to be released, it will be 
a year old.

I believe this should allow us to get rid of all remaining deprecated API 
usage in KDevelop, without littering our code base with nasty ifdefs. We might 
be able to clean up some old ones in the process.

[1]: https://kde.org/announcements/frameworks/5/5.91.0/

Anyone opposed?

#2 updating kdev-qmljs
======================

Part of the above is probably going to be updating of our kdev-qmljs fork. I 
started that over at [2] but it's not working at all - tests don't pass and it 
also crashes at runtime as tested by Apol. I don't work with QML currently, so 
if anyone else could adopt this and drive that part forwards - that would be 
really great!

Otherwise I'm contemplating disabling kdev-qmljs temporarily for the Qt6 work.

[2]: https://invent.kde.org/kdevelop/kdevelop/-/merge_requests/369

#3 porting & testing against Qt 6
=================================

Once the above is done, we can finally start with the true fun and test-
compile our code base against Qt 6. We should strive to make this work like 
other projects and learn from their lessons. E.g. we could reach out to the 
kate people about gotchas, but overall I'm not too much worried here I have to 
say - compared to previous ports this time sounds like a piece of cake :D 
Famous last words and all!

Cheers
-- 
Milian Wolff
mail at milianw.de
http://milianw.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20220828/7d70bfe2/attachment.sig>


More information about the KDevelop-devel mailing list