Hi, tldr; Please test now with git master the new available C++ macros with KF -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0xXXYYZZ -DKF_DEPRECATED_WARNINGS_SINCE=0xXYYZZ -DKF_NO_DEPRECATED_WARNINGS -DKF_NO_DEPRECATED as well as individual specializations per library, e.g. -DK{LIB}_DISABLE_DEPRECATED_BEFORE_AND_AT=0xXYYYZZ -DK{LIB}_DEPRECATED_WARNINGS_SINCE=0xXXYYZZ -DK{LIB}_NO_DEPRECATED_WARNINGS -DK{LIB}_NO_DEPRECATED so issues can be catched before the 5.64 release.
Last WE git master of all KDE Frameworks has seen the completion of the introduction of a new feature which allows developers building against KDE Frameworks libraries to control which of its deprecated API is visible to the compiler as well as for which versions deprecation warnings should be emitted. You are invited or rather encouraged to give this a testing now already, so issues can be catched before this gets released in then KF 5.64. Without any settings, you will get warnings when using deprecated API, any deprecated API is visible to your build. To just get rid of any warnings, use (with CMake, also ff.) add_definitions(-DKF_NO_DEPRECATED_WARNINGS) To just hide any deprecated API to your build, use add_definitions(-DKF_NO_DEPRECATED) To disable warnings about API deprecated first after a given version or, in other words, only see warnings for API deprecated first in versions up to and including a given, use (example: 5.28.0) add_definitions(-DKF_DEPRECATED_WARNINGS_SINCE=0x051C00) # 5.28.0 To hide deprecated API up to and including a certain version (e.g. the minimal KF version you support), use (example: 5.28.0) add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x051C00) # 5.28.0 This also sets the default of KF_DEPRECATED_WARNINGS_SINCE to that version, so you will not see any warnings for API deprecated in newer versions, unless setting another version explicitly for that. Next to these KDE Frameworks wide settings, one can also override them for individual libraries, using macros with a prefix matching the library name. E.g. to override for KCoreAddons the version at and before which deprecated API is made invisible to the compiler, one does this (order is not relevant): add_definitions( -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x051C00 # 5.28.0 -DKCOREADDONS_DISABLE_DEPRECATED_BEFORE_AND_AT=0x050000 ) The names here are following the similar macros introduced with Qt 5.13, cmp https://doc.qt.io/qt-5/qtglobal.html#QT_DISABLE_DEPRECATED_BEFORE , so one can apply known approaches. Just using BEFORE_AND_AT, because BEFORE is not really correct ;) QT_DEPRECATED_WARNINGS_SINCE also exists, with same default mechanism for API with a versioned deprecation macro used (only used with newer deprecated Qt API it seems), but so far had not been publically documented yet (cite: "Just forgot it (and also the reviewers) I would guess. There is no plan to change it, at least none I'm aware of.") Cheers Friedrich