plasma-framework, kactivities and kactivities-stats: please consider proper de-KF-ication now

Friedrich W. H. Kossebau kossebau at kde.org
Sun Nov 5 11:59:28 GMT 2023


Hi,

with plasma-framework, kactivities and kactivities entering the Plasma product 
bundle, I assume they also will adapt to Plasma versioning.

Without any de-KF-ication though this will break things though for building 
consumers soonish. Example

--- 8< ---
find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
    CoreAddons
    Plasma
)
--- 8< ---

* KF6_VERSION will be set by FindKF6.cmake to min component version, so that 
of KF6Plasma
* when setting KF_MIN_VERSION one will only think about KF versions, not 
Plasma versions

Asking people to always know about that trap and remember to always only do 
e.g.
--- 8< ---
find_package(KF6CoreAddons ${KF_MIN_VERSION} REQUIRED)
find_package(KF6Plasma ${PLASMA_MIN_VERSION} REQUIRED)
--- 8< ---
yields rather strange pattern code.

Or think of things like libcolorcorrect/LibColorCorrectConfig.cmake.in:

--- 8< ---
find_dependency(KF6Plasma "@KF6_MIN_VERSION@")
--- 8< ---

Looks fine on first sight, does it? Just, no longer is now.

So not best developer experience here.

Thus, to make it clear to everyone that those 3 libraries are now from another 
product bundle, with own versioning and other own rules, please do not forget 
to adapt
* naming: library names, CMake package names, CMake target names
* version variable setting (PLASMA_MIN_VERSION needed now in consumers)
* documentation: metainfo.yaml entries, references to KDE Frameworks

And yes, while at it some other Plasma bundle things might want to be unmessy 
here as well, e.g. libkscreen :) 

Cheers
Friedrich




More information about the Kde-frameworks-devel mailing list