From kde-core-devel Sat Oct 17 10:35:04 2009 From: Evgeny Egorochkin Date: Sat, 17 Oct 2009 10:35:04 +0000 To: kde-core-devel Subject: Re: Nepomuk as hard dependency in future? Message-Id: <200910171335.04339.phreedom.stdin () gmail ! com> X-MARC-Message: https://marc.info/?l=kde-core-devel&m=125577565713736 В сообщении от Суббота 17 октября 2009 13:19:58 автор Peter Penz написал: > 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 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? Being one of Nepomuk guys, I'm supposed to be happy about Nepomuk being an essential part of kdelibs. However, what happens to apps that run outside of KDE such as KOffice or Amarok on Windows or MacOS? -- Evgeny