These are the individual reports of the participants of the meeting.
Reinhold:First, I started off fixing some smaller korganizer bugs and discussing some patches with Lutz. Later I merged the two kpilot config dilogs to one, so that we'll only have one kcm module for kpilot. The rest of the time was spent on trying to convert all of kpilot to KConfig XT (only partly finished) and writing the kontact plugin (showing kpilot's current state and config in the summary view and making the config available in the menu). The latter is more or less finished already, but not yet commited, the KConfig XT is under way (and still needs a lot of work to fix the config sync issue, as we have two processes working on the same config at the same time), and the KCMification of KPilot's setup dialog is also done but not commited yet. To sum up, what's finished: -) combine the two kpilot setup dialogs to one -) make kcm for setup dialog -) write kontact plugin to show the status of kpilot and make the kcm available in the config dlg What's halfway done: -) Moving all conduits and the kpilot and kpilotDaemon apps to KConfig XT (yes, that's the boring and time-consuming monkey-work on the one hand, and on the other hand I have to redesign the whole config stuff framework in kpilot, which was already quite sophisticated by passing on the global config object to the conduits and making sure that the config loaded in kpilot and in kpilotDaemon stay in sync -- at least most of the time ;-) ) Still missing: -) Config sync issue of kpilot and kpilotDaemon -) add a dcop signal to kpilotDaemon to indicate a config and/or status change, so the plugin can connect to that signal and doesn't have to poll the daemon ever few seconds to update the status. -) Simple "Wizard" to setup KPilot and its conduits for kontactDaniel:
I started by looking through the bugreports and looking for ready-to-apply patches. I was lucky and found one by Volker Krause who fixed the problem with KNode not honoring the statusbar extension. With that patch the KNode part does no longer permanently occupy the statusbar after being launched. Then I fixed icon loading in KOrganizer when running as part and investigated a nasty crash that was caused by a dangling pointer and that was eventually fixed and committed. Inbetween, I stopped PIM hacking to investigate issues with icecream, the new cool tool distcc-derived tool that we used for distributed compilation. I ported the scheduler and server over to use getopts() for commandline parameter handling and added a README. In osnabrueck_branch, I fulfilled some minor wishlist items, such as renaming items which is currently not possible anymore due to string freeze. Finally I went through the Kontact Settings menu and tried to ensure constant menus. XMLGUI is tricky, but with David's help, I was able to get a consistant menu structure without too much hassle. Aside of that, I had some interesting discussions with Lutz about syncing and available applications and libraries. I assisted David to fix the nasty KUniqueApplication issues. Finally I cleaned up the bug databaseTobias:
At first I applyed some patches from my harddisc which hadn't been
reviewed and did manly the following stuff
Kontact:
- using 'Configure Summary View...' as action name #70466
- show this configure action only when kcms are available #71326
- let the knotes part and summary widget using CalendarResources
- a small gui improvement by using grey bars as headlines
- add configUpdate() method to Kontact::Plugin
KAddressBook:
- made VCardTool a private class and port all apps to VCardConverter
- removed wrongly added picture #71852
KOrganizer:
- add multi day selection to osnabrueck_branch
- fixed issue with missing actions of the plugins when embedded in
kontact
Furthermore I reworked the contact editor in KAddressBook, it's now
extensible via plugins.
During the last days my main actions were bugfixing and adding new cool
stuff, see the next cvs digest for more info ;)
Till:
I did some dimap fixes, reworked its status handling to upload locally changed flags and share more code with online imap. Then I started on porting the kmail configure dialogs to kcms and the kmail config backend to KConfigXT for easier integration in Kontact and the overall greater good. Inbetween I spent time discussing details of the mimetypehandler plugin design with Marc and Ingo.Bo:
Work quite a lot on dIMAP. It's now as good as it gets for 3.2, and it is a lot faster and much better. Thanks to Till for helping me out here. I have now gotten the IMAP resource for KAddressBook in shape. Most of this work was done during the meeting, some of it by Tobias (thanks). KMail now no longer links to ktnef or libkcal - a process that was started during the meeting and just finished. This is the first step in having a plugin for showing invitations. I also made the first step towards having invitations handled in kroupware_branch style again. This will be finished during the upcoming week. And finally the IMAP interface of KMail was completed.David:
Speedup loading of files with many events by a factor of 7 (this helps with karm and korganizer startup times). Fixed karm so that it doesn't create an event every time the autosave timer fired. This was the reason for the huge number of events in karm's .ics file. Improve integration between standalone apps and kontact. This means one can launch "kmail", "kmail address@kde.org", "korganizer", "kaddressbook --new-contact", "knode news://server/group" while kontact is running, and kontact will answer that call the right way (switching to the part if no argument was given, or handling the command lines arguments). In all cases the kontact window is also activated (brought to the front). Also wrote a test plan (in uniqueapphandler.cpp) to make sure to test all cases. Technical description of the above: * kontact plugins provide a DCOPObject to handle newInstance calls. In order to parse command-line options it needs to call something in the part - which it does using an in-process DCOP call, since it doesn't link to it. * the above isn't done if standalone app was already running when kontact starts. In such a case the plugin has to watch for the moment when the standalone app terminates, using the DCOPClient signal. Then it can create the above. Note that once this happens, kontact "takes over", the standalone app can't be launched anymore. * This required two changes in kdelibs (new method in DCOPClient, and a way to reset KCmdLineArgs in order to redefine a complete new set of arguments).Adriaan:
The only thing I really did was make the KPilot KNotes conduit mostly work. With Reinhold, we re-did the configuration of KPilot yet again, and started a move to kconfigXT (and discovered all of its limitations). Reinhold made a kontact summary plugin for kpilot, so that the first steps to visibly integrating kpilot with kontact have been made.Ingo:
I did the following at Osnabrck: - Discussed with Marc the body part formatter plugins (which will be used for handling invitations) and started the implementation. - Fixed bugs, handled bug reports, reviewed patches.Cornelius:
- Generic framework for configuration wizards based on KConfig XT. This currently consists of two classes (KConfigPropagator and KConfigWizard) and a small test program in libkdepim. The goal is to describe configuration wizards by some propagation rules for configuration options added to a KConfig XT XML file and some simple widgets to be put in into a standard wizard-like dialog. This should solve the problem of the Kolab client configuration which needs a lot of settings in the individual applications to be set based on only a small set of information like address and account information of the Kolab server etc. - Release planning for kdepim-3.3 - Discussions, patch reviewing, organization