Forward includes

2013-10-18 Thread Aleix Pol
Hi,
I realized recently that we have a weird setup for those CamelCased
includes that now we keep in kdelibs/includes, so I was guessing that
probably we want to split them and move them into each directory.

Also we should decide if we want to keep them in KDE/ or in a KModule/
directory and point to it from the Config.cmake files.

What do you guys think?

Aleix
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Forward includes

2013-12-27 Thread Aleix Pol
Hi,
I've been going through the kde4support forward includes, since I wanted to
start making the modules I decided we'd better make sure all of them are
working properly.

After some research, I found that I don't have these available, can
somebody please tell me if I'm missing some dependency or if these are
indeed not available [1]? If there's no problem with this, I'll proceed to
change these for a warning that they're not available anymore (see
attachment).

Cheers!
Aleix

PS: Happy holidays!

[1]
KAuth/ActionWatcher
KCalendarSystemFactory
KConfigINIBackEnd
KCrashBookmarkImporter
KCrashBookmarkImporterImpl
KDateTable
KDateValidator
KDBusServiceStarter
KDNSSD/Configuration
KFileSharePropsPlugin
KFileTreeBranch
KFileTreeView
KIdentityProxyModel
KIMProxy
KIO/Connection
KIO/SessionData
KIO/Task
KMimeTypeResolver
KNS/Author
KNS/Category
KNS/Engine
KNS/Installation
KNS/KTranslatable
KParts/DockMainWindow3
KPixmapRegionSelectorDialog
KSMIMECrypto
KSystemEventFilter
KTimeZoneWidget
KUnitTest/Runner
KUnitTest/SlotTester
KUnitTest/Tester
KUnitTest/TestResults
ThreadWeaver/JobCollection
ThreadWeaver/JobSequence
ThreadWeaver/WeaverObserver
diff --git a/src/includes/KAuth/ActionWatcher b/src/includes/KAuth/ActionWatcher
index 36a503d..e868dfc 100644
--- a/src/includes/KAuth/ActionWatcher
+++ b/src/includes/KAuth/ActionWatcher
@@ -1 +1 @@
-#include "../../kauthactionwatcher.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KCalendarSystemFactory b/src/includes/KCalendarSystemFactory
index 3ab6d1d..e868dfc 100644
--- a/src/includes/KCalendarSystemFactory
+++ b/src/includes/KCalendarSystemFactory
@@ -1 +1 @@
-#include "../kcalendarsystemfactory.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KConfigINIBackEnd b/src/includes/KConfigINIBackEnd
index 5e607af..e868dfc 100644
--- a/src/includes/KConfigINIBackEnd
+++ b/src/includes/KConfigINIBackEnd
@@ -1 +1 @@
-#include "../kconfigini.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KCrashBookmarkImporter b/src/includes/KCrashBookmarkImporter
index 1128400..e868dfc 100644
--- a/src/includes/KCrashBookmarkImporter
+++ b/src/includes/KCrashBookmarkImporter
@@ -1 +1 @@
-#include "../kbookmarkimporter_crash.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KCrashBookmarkImporterImpl b/src/includes/KCrashBookmarkImporterImpl
index 1128400..e868dfc 100644
--- a/src/includes/KCrashBookmarkImporterImpl
+++ b/src/includes/KCrashBookmarkImporterImpl
@@ -1 +1 @@
-#include "../kbookmarkimporter_crash.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KDBusServiceStarter b/src/includes/KDBusServiceStarter
index 7eb6fa6..e868dfc 100644
--- a/src/includes/KDBusServiceStarter
+++ b/src/includes/KDBusServiceStarter
@@ -1 +1 @@
-#include "../kdbusservicestarter.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KDNSSD/Configuration b/src/includes/KDNSSD/Configuration
index c568305..e868dfc 100644
--- a/src/includes/KDNSSD/Configuration
+++ b/src/includes/KDNSSD/Configuration
@@ -1 +1 @@
-#include "../../kdnssd/settings.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KDateTable b/src/includes/KDateTable
index 08c8315..e868dfc 100644
--- a/src/includes/KDateTable
+++ b/src/includes/KDateTable
@@ -1 +1 @@
-#include "../kdatetable.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KDateValidator b/src/includes/KDateValidator
index 08c8315..e868dfc 100644
--- a/src/includes/KDateValidator
+++ b/src/includes/KDateValidator
@@ -1 +1 @@
-#include "../kdatetable.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KFileSharePropsPlugin b/src/includes/KFileSharePropsPlugin
index aefd8d2..e868dfc 100644
--- a/src/includes/KFileSharePropsPlugin
+++ b/src/includes/KFileSharePropsPlugin
@@ -1 +1 @@
-#include "../kfilesharedialog.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KFileTreeBranch b/src/includes/KFileTreeBranch
index dda7372..e868dfc 100644
--- a/src/includes/KFileTreeBranch
+++ b/src/includes/KFileTreeBranch
@@ -1 +1 @@
-#include "../kfiletreebranch.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KFileTreeView b/src/includes/KFileTreeView
index a3bb394..e868dfc 100644
--- a/src/includes/KFileTreeView
+++ b/src/includes/KFileTreeView
@@ -1 +1 @@
-#include "../kfiletreeview.h"
+#warning "This file is not available anymore"
diff --git a/src/includes/KIMProxy b/src/includes/KIMProxy
index f092060..e868dfc 100644
--- a/src/includes/KIMProxy
+++ b/src/includes/KIMProxy
@@ -1 +1 @@
-#include "../kimproxy.h"
+#warning "This fi

Re: Forward includes

2013-10-21 Thread Kevin Ottens
Hello,

On Friday 18 October 2013 20:24:00 Aleix Pol wrote:
> I realized recently that we have a weird setup for those CamelCased
> includes that now we keep in kdelibs/includes, so I was guessing that
> probably we want to split them and move them into each directory.

I think we want those installed as is by kde4support, because they're here for 
existing code to still compile (we got KDE/foo includes in our codebase).

> Also we should decide if we want to keep them in KDE/ or in a KModule/
> directory and point to it from the Config.cmake files.

IIRC the last time this topic was discussed I think we were leaning toward a 
KF5/Module/ directory. And yes the Config.cmake files should point to it IMO.
 
> What do you guys think?

The above is pretty much it on my side, but I'd like to add something:
We should get those forwarding includes generated to not have to maintain them 
by hand anymore. Since we had to do some header generation in some of the 
frameworks to get them to comply with the standard directory layout, it looks 
like something we could get cmake to do.

Regards.
-- 
Kévin Ottens, http://ervin.ipsquad.net

Sponsored by KDAB to work on KDE Frameworks
KDAB - proud supporter of KDE, http://www.kdab.com

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Forward includes

2013-10-22 Thread Ivan Čukić

> The above is pretty much it on my side, but I'd like to add something:
> We should get those forwarding includes generated to not have to maintain

Lets bring this topic back from the dead.

I don't have a real preference between include/Module, include/KDE/Module and 
include/KF5/Module.

Main benefit of include/KF5/Module is the fact that the users will be able to 
have different non-ABI/API-compatible versions of KF installed at the same 
time, if this is needed at all.

As for pointing the cmake configs to that path, it might be tricky to achieve 
in all libraries. Namely those that rely on namespaces instead of prefixing 
the names of classes with K or KSomething.

For example, while #include can work without collisions, it can not for 
libraries like Solid (classes named Camera, Video, Button -> needs to be 
#include etc.) or KActivities (Controller, Info -> 
#include etc.)

Cheers,
Ivan


-- 
The problem with object-oriented languages is they’ve got all this
implicit environment that they carry around with them. You wanted
a banana but what you got was a gorilla holding the banana.
  -- Joe Armstrong

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Forward includes

2013-10-23 Thread Aleix Pol
On Mon, Oct 21, 2013 at 11:39 AM, Kevin Ottens  wrote:

> Hello,
>
> On Friday 18 October 2013 20:24:00 Aleix Pol wrote:
> > I realized recently that we have a weird setup for those CamelCased
> > includes that now we keep in kdelibs/includes, so I was guessing that
> > probably we want to split them and move them into each directory.
>
> I think we want those installed as is by kde4support, because they're here
> for
> existing code to still compile (we got KDE/foo includes in our codebase).
>
> > Also we should decide if we want to keep them in KDE/ or in a KModule/
> > directory and point to it from the Config.cmake files.
>
> IIRC the last time this topic was discussed I think we were leaning toward
> a
> KF5/Module/ directory. And yes the Config.cmake files should point to it
> IMO.
>
> > What do you guys think?
>
> The above is pretty much it on my side, but I'd like to add something:
> We should get those forwarding includes generated to not have to maintain
> them
> by hand anymore. Since we had to do some header generation in some of the
> frameworks to get them to comply with the standard directory layout, it
> looks
> like something we could get cmake to do.
>
> Regards.
> --
> Kévin Ottens, http://ervin.ipsquad.net
>
> Sponsored by KDAB to work on KDE Frameworks
> KDAB - proud supporter of KDE, http://www.kdab.com
>
> ___
> Kde-frameworks-devel mailing list
> Kde-frameworks-devel@kde.org
> https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
>

Ok, works for me, consider it as an assigned task.

Aleix
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Forward includes

2013-10-23 Thread Aleix Pol
On Tue, Oct 22, 2013 at 11:06 AM, Ivan Čukić  wrote:

>
> > The above is pretty much it on my side, but I'd like to add something:
> > We should get those forwarding includes generated to not have to maintain
>
> Lets bring this topic back from the dead.
>
> I don't have a real preference between include/Module, include/KDE/Module
> and
> include/KF5/Module.
>
> Main benefit of include/KF5/Module is the fact that the users will be able
> to
> have different non-ABI/API-compatible versions of KF installed at the same
> time, if this is needed at all.
>
> As for pointing the cmake configs to that path, it might be tricky to
> achieve
> in all libraries. Namely those that rely on namespaces instead of prefixing
> the names of classes with K or KSomething.
>
> For example, while #include can work without collisions, it can not
> for
> libraries like Solid (classes named Camera, Video, Button -> needs to be
> #include etc.) or KActivities (Controller, Info ->
> #include etc.)
>
> Cheers,
> Ivan
>
>
> --
> The problem with object-oriented languages is they’ve got all this
> implicit environment that they carry around with them. You wanted
> a banana but what you got was a gorilla holding the banana.
>   -- Joe Armstrong
>
> ___
> Kde-frameworks-devel mailing list
> Kde-frameworks-devel@kde.org
> https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
>

I'll be sending a review soon, we can discuss it further over some code :).

Aleix
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Forward includes

2013-12-27 Thread Àlex Fiestas
On Friday 27 December 2013 19:00:14 Aleix Pol wrote:
> Hi,
> I've been going through the kde4support forward includes, since I wanted to
> start making the modules I decided we'd better make sure all of them are
> working properly.
> 
> After some research, I found that I don't have these available, can
> somebody please tell me if I'm missing some dependency or if these are
> indeed not available [1]? If there's no problem with this, I'll proceed to
> change these for a warning that they're not available anymore (see
> attachment).
> 
> Cheers!
> Aleix
> 
> PS: Happy holidays!

I have checked a few of them manually and indeed the real header files do not 
exists.

The approach in the patch seems correct, we don't want to add a source 
incompatible change by removing them, but I'd change the message from:

#warning "This file is not available anymore in KF5, please see 
http://community.kde.org/Frameworks/Porting_Notes
"

Or something in this fashion so it is more useful.

Cheers.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Forward includes

2013-12-28 Thread David Faure
On Friday 27 December 2013 19:54:14 Àlex Fiestas wrote:
> On Friday 27 December 2013 19:00:14 Aleix Pol wrote:
> > Hi,
> > I've been going through the kde4support forward includes, since I wanted
> > to
> > start making the modules I decided we'd better make sure all of them are
> > working properly.
> > 
> > After some research, I found that I don't have these available, can
> > somebody please tell me if I'm missing some dependency or if these are
> > indeed not available [1]? If there's no problem with this, I'll proceed to
> > change these for a warning that they're not available anymore (see
> > attachment).
>
> I have checked a few of them manually and indeed the real header files do
> not exists.

Yes, but for at least one of them it's a mistake:
I forgot to add the rule for installing kdbusservicestarter.h
Will fix asap.

The others look like stuff that got removed, or was made internal.
 
> The approach in the patch seems correct, we don't want to add a source
> incompatible change by removing them, but I'd change the message from:
> 
> #warning "This file is not available anymore in KF5, please see
> http://community.kde.org/Frameworks/Porting_Notes

I think you should use #error instead.
#warning doesn't work with MSVC iirc (it uses #pragma message("..") instead).

Well, #pragma message() works with gcc, so you could use that everywhere if 
you don't want to make it an error.

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Working on KDE, in particular KDE Frameworks 5

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel