Nepomuk as hard dependency in future?

Peter Penz peter.penz at gmx.at
Sat Oct 17 11:19:58 BST 2009


Hi,

currently Nepomuk is an optional dependency. There are widgets that have 
extended functionality by using Nepomuk, but also can live without Nepomuk (e. 
g. Dolphin has a MetaDataWidget - without Nepomuk just less meta data are 
shown).

One problem is that this requires a lot of #ifdef HAVE_NEPOMUK code. While 
this is just a nasty detail in the implementation, it gets to a real problem 
especially in header files for kdelibs, that use a Nepomuk interface like 
this:

class MetaDataWidget : ...
{
    ...
    public:
        QList<Nepomuk::Tag> tags() const;
};

Using #ifdef HAVE_NEPOMUK code is no option as this would be BIC. If Nepomuk 
would be a hard dependency (but for sure can be turned off during runtime as 
always), this problem would be a no-brainer (-> tags() would just return an 
empty list if Nepomuk is turned off).

Is there a chance that Nepomuk gets a hard dependency for KDE 4.4 or KDE 4.5 
(maybe implicitly as Akonadi anyhow will require it)?

If this is not the case: Any ideas how to deal with interfaces like above, 
where binary compatibility is a must for kdelibs classes?

Thanks,
Peter




More information about the kde-core-devel mailing list