From kde-core-devel Fri Jan 10 08:36:25 2003 From: Ingo =?iso-8859-15?q?Kl=F6cker?= Date: Fri, 10 Jan 2003 08:36:25 +0000 To: kde-core-devel Subject: Moving KMail, KNode, Korn and related libraries to kdepim X-MARC-Message: https://marc.info/?l=kde-core-devel&m=104218790323753 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--Boundary-02=_KYoH+ITR2xbMghu" --Boundary-02=_KYoH+ITR2xbMghu Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Content-Description: signed data Content-Disposition: inline Dear developers, the question whether KMail should be moved to kdepim has already arisen quite a few times on kmail@kde.org (and probably also elsewhere). Last week end at the Kroupware/Kaplan hack fest (cf. the Announcement on kde-core-devel on 21.12.02) we [1] took the chance to talk about this from face to face. After weighing the pros and the cons we finally came to the unanimous conclusion that KMail and the corresponding libs (and therefore also KNode and Korn which also depend on those libs) should be moved. The pros were: + Less code duplication. Currently quite a few code is duplicated, e.g. kdepim/kalarm contains copies of kmime_* files which are actually part of kdenetwork/libkdenetwork. Furthermore all the KOrganizer KActions are duplicated in KMail and there is a second iCalendar parser in KMail which would become obsolete if KMail could use libkcal which is in kdepim. The problems of duplicated code could of course also be solved by moving=20 some of it to kdelibs and introducing plugin interfaces, but moving=20 KMail to kdepim means less work now and in the future. + Reduction of dependencies between CVS modules. Although the dependencies within kdepim would become more complex at first, we expect that it will be easier to resolve this when the code is in one place. + We expect the move to foster communication and cooperation of both developer groups and to be of benefit for both, KMail and kdepim. + An email client is part of a PIM solution. And as we now have Kaplan it makes sense to put at least the most important Kaplan parts into one cvs module. The cons were: =2D The size of the kdepim cvs module will grow. (OTOH the total size of kdepim and kdenetwork will shrink because some duplicate files can be removed immediately after the move.) =2D Danger of uncleaner interfaces. If applications are in the same module it's not imperative to make clean interfaces. We might be tempted to introduce some nasty dependencies e.g. between KO and KM just because it's so easy as they are the same cvs module. =2D Danger of creation of a monolithic application. This is related to the second point. The counter argument to this and the second point is that the Kaplan framework forces the part developers to define clean interfaces. So this should prevent Kaplan from becoming one big fat swiss army knife application. If there are no serious objections of developers which didn't participate in the Osnabrueck meeting, we will make the move at Friday, 17th of January. Regards, Cornelius (for KDE PIM) and Ingo (for KMail) [1] Participants of the hack fest: KDE PIM and KMail developers: =2D Ingo Kl=F6cker (for KMail) =2D Tobias Koenig (for KAddressBook, PIM in general) =2D Daniel Molkentin (for Kaplan) =2D Cornelius Schumacher (for KOrganizer, PIM in general) =2D G=FCnter Schwann (for KOrganizer group scheduling) from the Kroupware Project: =2D David Faure =2D Steffen Hansen =2D Marc Mutz =2D Bernhard Reiter =2D Lutz Rogowski =2D Bo Thorsen =2D Karl-Heinz Zimmer --Boundary-02=_KYoH+ITR2xbMghu Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQA+HoYKGnR+RTDgudgRAtM4AJ4sciEV0iTLS3En+MBCC8ezK0u+cACg1Z84 nQH4XZAP9UXG6e59kBbqrtk= =zcQ1 -----END PGP SIGNATURE----- --Boundary-02=_KYoH+ITR2xbMghu--