[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-release-team
Subject:    Re: Exception for Dolphin - KFileMetadataWidget
From:       Frank Reininghaus <frank78ac () googlemail ! com>
Date:       2013-01-06 8:51:34
Message-ID: CAFoZWWhnNAdvp3Xs2+CH=8gVaM_3aH2Kd2ezg2-FVHhPyOGfyQ () mail ! gmail ! com
[Download RAW message or body]

Hi everyone,

2013/1/5 Anne-Marie Mahfouf:
>
>> De: "Andreas K. Huettel"
>> À: release-team@kde.org
>> Cc: "Nepomuk mailing list" <nepomuk@kde.org>, kfm-devel@kde.org, "Vishesh Handa" <me@vhanda.in>
>> Envoyé: Samedi 5 Janvier 2013 13:50:20
>> Objet: Re: Exception for Dolphin - KFileMetadataWidget
>>
>>
>> Just a question-
>>
>> > I wanted to fix this with 4.10, so I copied most of the widget to
>> > nepomuk
>> > -widgets and named it Nepomuk2::FileMetadataWidget.
>>
>> Seems like now (compared to 4.9) it is not possible anymore to
>> deactivate the
>> semantic desktop (nepomuk) features during build completely and still
>> keep
>> dolphin.
>>
>> Intentional or accidental?
>>
>> Only asking so we write the dependencies correctly.
>>
>> Cheers, Andreas
>
> Indeed and the CMake file does not detect the absence of Nepomuk-Widgets.
>
> This should be fixed.

Actually, I decided to not care about the entire Nepomuk issue any
more after nobody cared about my repeated statement that I do not want
this change in KDE 4.10. But now that the build is broken, it seems
that I have no choice.

I think that there are two different problems now. The build fails if:

1) nepomuk-core is found (such that HAVE_NEPOMUK is set in Dolphin),
but nepomuk-widgets isn't, or if
2) nepomuk-core is not found, such that HAVE_NEPOMUK is not set.

I got e-mails from users about issue 2, including a user-supplied
patch to fix it (see attachment). It replaces the new
Nepomuk2::FileMetaDataWidget by the old KFileMetaDataWidget if
HAVE_NEPOMUK is not defined. Yes, it's a hack, but it could be made
slightly less hackish and include the case that nepomuk-core is there,
but nepomuk-widgets isn't, and then everything would at least build.

The alternative would be to make both nepomuk-core AND nepomuk-widgets
hard dependencies for Dolphin. In the long term, this might even be
something to think about because we could then also remove all the
HAVE_NEPOMUKs from the source (even though the feedback that I got
shows that some users like to build Dolphin without Nepomuk, possibly
because they are not using a full KDE desktop and don't want to pull
in too many dependencies), but adding new hard dependencies this late
in the release process is wrong IMHO.

The third option (revert the patch) is something that even I am not in
favour of at this point, now that the release delay for the new widget
has been announced to the public.

Now people will probably ask why I did not notice this problem before.
Simple answer: I hadn't looked at the patch at all. I was quite busy
around Christmas and New Year, mostly with real life issues, and saw
no point in reviewing something that I did not want in KDE 4.10 at
all, and when the extra RC was announced, I only had a 4" screen,
which is not exactly suitable for looking at code, and little
motivation to spend my holiday working on this, because I was quite
frustrated by how the discussion went.

And to answer the next question: no, I never said that Vishesh should
ask the release-team about including this in KDE 4.10. Even though
Vishesh seems to have misunderstood me, my earlier messages

http://lists.kde.org/?l=kfm-devel&m=135601666623890&w=2
http://lists.kde.org/?l=kfm-devel&m=135601860424533&w=2

only mention the release team in response to the statements "At the
end, it's your call" and "Anyway, it's your choice". What I meant was
that even if I agreed (and I listed enough good reasons for not
agreeing IMHO), the change still couldn't go in unless the release
team agreed as well.

So I was quite surprised by Vishesh's request here, but I still tried
to write a polite answer that shows appreciation for the work of
others, because that's how I like to communicate (even though I now
see that simply saying "no" might have been better):

http://mail.kde.org/pipermail/release-team/2012-December/006624.html

But at least my later message was clear, I think:

http://mail.kde.org/pipermail/release-team/2012-December/006630.html

Please note that I'm not blaming anyone for anything here, I'm just
trying to answer the obvious question "why did the maintainer not
notice this before?" in advance.

I'm sorry if this message is considered offensive, but I'm seriously
fed up with the way Nepomuk repeatedly broke things in the last years
and caused extra work for everyone. I'm still willing to collaborate
constructively with Nepomuk and Vishesh in particular, but IMHO, the
way Nepomuk interacts with the rest of the KDE community has to
change.

Best regards,
Frank

["dolphin-4.9.97_no_nepomuk.patch" (application/octet-stream)]

diff -ru dolphin.org/src/panels/information/informationpanelcontent.cpp \
                dolphin/src/panels/information/informationpanelcontent.cpp
--- dolphin.org/src/panels/information/informationpanelcontent.cpp	2013-01-02 19:17:02.000000000 +0100
+++ dolphin/src/panels/information/informationpanelcontent.cpp	2013-01-05 14:45:58.975662259 +0100
@@ -31,7 +31,11 @@
 #include <kseparator.h>
 #include <KStringHandler>
 
+#ifndef HAVE_NEPOMUK
+#include <KFileMetaDataWidget>
+#else
 #include <nepomuk2/filemetadatawidget.h>
+#endif
 
 #include <panels/places/placesitem.h>
 #include <panels/places/placesitemmodel.h>
diff -ru dolphin.org/src/panels/information/informationpanelcontent.h \
                dolphin/src/panels/information/informationpanelcontent.h
--- dolphin.org/src/panels/information/informationpanelcontent.h	2013-01-02 19:17:02.000000000 +0100
+++ dolphin/src/panels/information/informationpanelcontent.h	2013-01-05 14:47:53.051660304 +0100
@@ -34,8 +34,15 @@
 class QLabel;
 class QScrollArea;
 
+#ifndef HAVE_NEPOMUK
+class KFileMetaDataWidget;
+#endif
 namespace Nepomuk2 {
+#ifndef HAVE_NEPOMUK
+    typedef KFileMetaDataWidget FileMetaDataWidget;
+#else
     class FileMetaDataWidget;
+#endif
 }
 
 /**
diff -ru dolphin.org/src/views/tooltips/filemetadatatooltip.cpp \
                dolphin/src/views/tooltips/filemetadatatooltip.cpp
--- dolphin.org/src/views/tooltips/filemetadatatooltip.cpp	2013-01-02 19:17:02.000000000 +0100
+++ dolphin/src/views/tooltips/filemetadatatooltip.cpp	2013-01-05 14:43:51.135664450 +0100
@@ -30,7 +30,14 @@
 #include <QStylePainter>
 #include <QVBoxLayout>
 
+#ifndef HAVE_NEPOMUK
+#include <KFileMetaDataWidget>
+//namespace Nepomuk2 {
+//    typedef KFileMetaDataWidget FileMetaDataWidget;
+//}
+#else
 #include <nepomuk2/filemetadatawidget.h>
+#endif
 
 // For the blurred tooltip background
 #include <plasma/windoweffects.h>
diff -ru dolphin.org/src/views/tooltips/filemetadatatooltip.h \
                dolphin/src/views/tooltips/filemetadatatooltip.h
--- dolphin.org/src/views/tooltips/filemetadatatooltip.h	2013-01-02 19:17:02.000000000 +0100
+++ dolphin/src/views/tooltips/filemetadatatooltip.h	2013-01-05 14:43:36.667664698 +0100
@@ -27,8 +27,15 @@
 class KFileItemList;
 class QLabel;
 
+#ifndef HAVE_NEPOMUK
+class KFileMetaDataWidget;
+#endif
 namespace Nepomuk2 {
+#ifndef HAVE_NEPOMUK
+    typedef KFileMetaDataWidget FileMetaDataWidget;
+#else
     class FileMetaDataWidget;
+#endif
 }
 
 /**



_______________________________________________
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic