Difference between revisions of "KDE PIM/Meetings/Akonadi-2010-05"

Line 342: Line 342:
14:00 Make IMAP resource work with Tom's server
14:00 Make IMAP resource work with Tom's server
17:30 Second API review session
16:00 Hacking
19:30 Dinner
19:30 Dinner

Revision as of 17:31, 14 May 2010

This page is about the upcoming Akonadi Meeting in May 2010


13th to 16th of May 2010.

Location / Travel Information


Attention: KDAB moved since last time!

Tempelhofer Ufer 11
10963 Berlin
Phone: +49-30-5213254-70

Google Maps

Getting there by public transportation:

  • subway lines U1 or U6 to "Hallesches Tor"
  • subway lines U1 or U7 to "Möckernbrücke"
  • bus line M41 to "Hallesches Tor" (leaves from Berlin Hauptbahnhof)

Getting in:

  • If the big front door is closed, there is a door bell on the right, labeled 'KDAB'.
  • After passing the main gate, there are two options:
    • Take the stairs on the right, go up one floor, take the door on your right and go up one more floor. You'll find a door labeled KDAB in front of your with a door bell on the right (that one might need some more pressure to trigger).
    • Be lazy and go through the second big door right in front of you, turn right and take the entrance to the elevator on your right. KDAB is on the second floor.


Hotel Ibis Berlin City Ost
An der Schillingbrucke 2
10243 Berlin
Phone: (+49)30/257600 
Fax : (+49)30/25760333

Google Maps

Easiest way to reach the hotel is by taking a train to Ostbahnhof (it's just across the street from the station). If your train doesn't stop there, take the S-Bahn from Hauptbahnhof, any east-bound line will do.

From TXL take the bus labeld 'TXL' to Hauptbahnhof or Alexanderplatz and switch to the S-Bahn there, any east-bound train will do.

From SXF take the regional train 'RE7' or 'RB14' towards Berlin to station "Ostbahnhof" (2 stops, about 20 min).

Hotel <-> Office

Two options with public transportation:

  • via Friedrichstraße
    • any westbound S-Bahn from Ostbahnhof to Friedrichstraße (4 stops)
    • U6 southwards (direction Alt-Mariendorf) until Hallesches Tor (4stops)
  • via Warschauer Straße
    • any eastbound S-Bahn from Ostbahnhof to Warschauer Straße (1 stop)
    • U1 westwards (there is only one direction, the station is the terminus for U1) to Hallesches Tor (5 stops)

Or take a taxi, possibly even cheaper when shared with enough people.

Public Transportation

Some general notes on public transportation in Berlin, more relevant this time with hotel and office not in walking distance from each other.

Reginal trains/S-Bahn/U-Bahn/Tram/Bus Tickets


Everywhere you need to go is covered by the 'AB' zone tickets, with the exception of SXF, for that you need one for the 'ABC' zone.

Buying Tickets

Tickets can be bought at ticket machines which you'll find at every station and the bus stop at TXL. On stations with long-distance connections you might find two types of ticket machines, use the ones labeled 'BVG' in black on a yellow square, not the ones labeled 'DB' or 'Deutsche Bahn'.

Ticket machines always take coins, and sometimes bills and ec cards (no credit cards IIRC).

Prices and Price Optimizations

Single trip costs 2.10€ in 'AB' zone and 2.50€ for 'ABC'. The ticket if valid for a single trip (including changing trains, as long as you go roughly into one direction) for all means of transportation listed above, ie. you don't need two tickets when switching from S-Bahn to U-Bahn for example. Tickets have to be stamped before entering the train once.

There are a number of optimizations though:

  • You can purchase a batch of four tickets at once ("4 Fahrten Karte"), which costs 8€ for 'AB'.
  • If you plan to do more than 2 trips a day, purchase the day ticket instead, 6.10€ for 'AB'.
  • If you do two trips a day with 4 or 5 persons, consider the group day ticket ("Kleingruppenkarte"), which costs 15.90€ for 'AB'.
  • If you only travel for three stops, there is the short trip ticket which costs 1.30€. This might be interesting in combination with the next option.
  • If you are traveling together with a local who has a monthly ticket, one additional person can tag along for free after 20:00 on workdays and during the entire day on weekends and public holidays.

Schedule can be checked online (see link below), which makes sense when traveling outside of the normal working hours on weekdays (where trains go every 5 minutes). During weekdays service ends at around 1am. On weekends, public holidays and nights leading up to those trains usually go all night but only every 15 or 20 minutes.

More Information

Local transportation in Berlin

Subway and railway map of Berlin


Taxi to TXL costs 20-25€, taxi between office and hotel around 10€. So, if you order a big one this might actually be the cheapest and most comfortable way to travel between office and hotel.


There are currently two active airports in Berlin: Tegel (TXL) and Schönefeld (SXF). Make sure you know which one to go to, picking the wrong one has only happend to locals so far and you don't want to change that :)

TXL is not connected to any train line, but there is a shuttle bus (called 'TXL') leaving in front of the terminal building towards the city center.

SXF has a station for both regional trains (red 'B' on white square) and a S-Bahn line (white 'S' on green circle).

Berlin airport website (includes airport maps etc.)


Please add yourself, your travel details and accommodation needs as well as your preferred date to the following table.

Name Travel Arrival Departure Accommodation needed
Volker Krause none already here not leaving no
Tom Albers Train 12-05-2010 23u30 16-05-2010 16u30 yes, single room.
Bertjan Broeksema none already here not leaving no
Stephen Kelly none already here not leaving no
Thomas McGuire train 12.05, around 3 pm, ICE857 16.05, around 2 pm, ICE556 yes, single room, non smoking
Matthew Leach Flying from Manchester Arriving at Berlin Schoenefeld 12 May 17:10 Departing from Berlin Schoenefeld 17 May 17:35 yes, single room, non smoking
Sascha Peilicke Train from Magdeburg 14.05, around 10:00 14.05, in the evening Not needed
Tobias Koenig Train from Dresden 12.05.2010 16.05.2010 yes, sharing room is ok
Kevin Krammer plane GRZ-VIE-TXL 2010-05-11 19:05 2010-05-17 09:20 yes, single room, non smoking
Sérgio Martins plane from Lisbon 11-05-2010 (17:55 TXL) 16-05-2010 (19:00 TXL) yes, single room, non smoking
Kevin Ottens Plane: TLS->LHR->TXL 11-05-2010 (landing 13:45) 16-05-2010 (takeoff 07:15) yes, single room, non smoking


Please collect stuff you want to do/discuss here.

  • API review
    • Reviewing new public API, as usual, see table below for the changes that still need to be reviewed
    • Discuss deprecating the KResource API and porting away or identifing the last users of it in PIM
    • Review Maemo's KCal patches
  • KDE PIM 4.5 Release
    • Evaluate the state of KMail and the Kontact suite and decide on release plan
    • identify KMail release blockers
    • identity KOrganizer release blockers
    • Making KDE PIM ready for 4.5 if in a releasable state, or execute a Plan B
  • Project Management
    • Branch strategy during the 4.5 freeze regarding KDE PIM Mobile work
    • Git migration: Status and timeline discussion
  • Look at KMail filtering and evaluate the amount of work needed to integrate teh filtering framework from Szymon. Maybe start a first hacking session for that.
  • IMAP resource
    • Kevin's refactoring plan
    • Unit testing the resource
    • Attachment load on demand
  • Summer of Code/ Season of KDE projects
    • Roadmap/plans of the SyncML GSoC and SOK

  • Mobile specific stuff (can be done during the mobile team pre-meeting)
    • incidenceeditor refactoring plan
    • Porting plan for KOrganizer to its extracted view components
    • Replacement for KDGantt1 based views in KOrganizer
    • Mail composer: how to share even more code with kmail-mobile

API Review

Library Changes since 4.4 Status
Akonadi diff TODO
GpgME++ diff Done by trusting Marc
KABC diff Reviewed, changes pending
KCal diff Reviewed, changes pending
KHolidays diff Only moved code
KIMAP diff Reviewed, changes DONE
KLDAP diff Revert entirely, changes pending
KMime diff Reviewed, changes pending
Kontact Interface diff Reviewed, changes pending
KPimIdentities diff Only comment changes
KPimTextEdit diff Reviewed, changes pending
KPimUtils diff Only comment and style changes
MailTransport diff Reviewed, changes pending
kdeui/itemviews diff Several new classes, mostly refactored out of KSelectionProxyModel


To be filled...


8:30 Incidence editor internals refactoring/redesign discussion

9:30 Start, getting set up, get coffee and fill the schedule

10:10 Report on what happened since Osnabrück 8

10:45 First API review session

13:00 Lunch

14:30 Nepomuk tag widget discussion

14:45 Mailtransport API review

15:30 KCal changes from MeeGo team

17:45 KDE 4.5 release discussion

19:00 Hacking

19:45 Leaving for dinner

20:00 Dinner

22:00 Hacking


8:00 Breakfast

9:45 Discuss KCal/MeeGo invitation API

11:45 Hacking

12:30 Lunch

13:45 Group Photo

14:00 Make IMAP resource work with Tom's server

16:00 Hacking

19:30 Dinner

21:30 Hacking


9:00 Start

10:00 Forced Akademy Sign-Ups

free slot

12:30 Lunch

free slot

19:30 Dinner

free slot


9:00 Start

10:00 Setup KMail2 for Thomas

free slot

12:30 Lunch

free slot


Meeting Notes

Please fill this section.

KOrganizer Refactoring Plan

Make reusable components out of KOrganizer for reuse in the mobile applications, initial draft based on KOrganizer meeting from April 12th. Current status in square brackets.

Incidence Editor

eventually used in: KOrganizer desktop and mobile, invitation BPF plugin, korgac, summary view, plasmoids

  • To make it independent from KOrganizer we need at least:
    • split up preferences [done]
    • get rid of interfaces/incidencechangerbase [done]
    • move incidencechanger to kcal_next [done]
  • For mobile we need:
    • new fb view, see below [Bertjan volunteered to investigate that]
    • ui'ify [in progress, Bertjan]
    • get rid of Qt3Support usage [done excpet for fbview]
  • Bonus points for:
    • remove code duplication between eventeditor, todoeditor, journaleditor
New Design

Similar to KCM, consisting of compositable sub-components.

Free/Busy and Timeline view

Write a new freebusy graph widget (libfbview) that can also be used in timelineview

Still unsure which option is best:

  • use and extend KDGantt2
  • write a entirely new view, possible reusing some of the rendering and layouting code from month/agenda view

[Bertjan volunteered to investigate that]

Incidence Viewer

  • eliminate duplication between KOrganizer and akonadi/kcal, necessary since korgac depends on the koeventviewer.




Make views independent from KOrganizer

  • kdepim/libeventviews
    • move all non-todoview views here
    • move interfaces/baseview.h here
    • move view kcms here as well
  • kdepim/libtodoviews
    • move todoview here
    • shouldn't need baseview.h
    • anything reusable in/for zanshin here?
  • remove Qt3support
Current State
  • agenda view extracted
    • Qt3Support removal complete
    • Decorations are still disabled
    • KOrganizer still has its own copy
      • to be ported after 4.5 branching
      • Sergio monitors commits and merges them between the two copies if necessary
      • Porting KOrganizer requires porting the multi agenda view away from Q3ScrollArea as well
  • month view
    • Sergio says it's much easier to do
  • timeline view
    • see above, requires a rewrite
  • todo model/view
    • Sergio says it's easy

MeeGo KCal Extensions

  • Created ExtendedCalendar and ExtendedStorage classes.
    • Acceptable, but BIC, evaluate BC way to do this
  • Adding multicalendar support using one ExtendedCalendar object. Not using many Calendar objects as originally.
    • Acceptable, but BIC, evaluate BC way to do this
  • Not needing to load all Incidences into memory, UI can load on demand. New ways of loading from storages.
    • same as above
  • New storage classes, Sqlite, tracker, etc.
    • Acceptable, depends on items above, not build by default
  • Improved performance in sorting. New sorting algorithms.
    • Acceptable immediately, obviously :)
  • Services Plugins. Support for invitations, attachments from different sources.
    • Acceptable. API draft to be developed tomorrow.
  • RecurrenceID support in all Incidence types, not just Todo.
    • Acceptable, but BIC currently. Can be fixed separately from items above. Can be taken into pipeline first.
  • Some bug fixes.
    • Acceptable immediately as well.

Allow parallel installation of KDE KCal and MeeGo KCal as long as they are BIC.

  • Needs different library name (already done)
  • Rename namespace

KCal Refactoring Plan KDE/MeeGo

The initial agreement to be able to maintain a common code base between MeeGo KCal and KDE's KCal is the following:

  • Create a new library initially named libkcalcore. This library will contain:
    • Data Definitions and the code to operate them. (Eg: Incidence and all related subclasses, also alarms).
    • Recurrence Handling.
    • TimeZone handling.
    • Common interface for the Invitation handler plugin (only the interface, the real implementation of the loading and unloading is separated).
  • Improve the API (eg: Use shared pointers instead plain pointers as it is now).
  • Integrate the extendedkcal sorting optimizations.
  • Integrate the extendedkcal bugfixes.

MeeGo will extend the KCalCore with some library that will include all the extensions currently implemented in extendedkcal and the Calendar and Storage classes from the original Kcal.

KDE will only use the kcalcore, because all the other functionality is provided currently by akonadi.

In order to make everything working and iteroperable the Kdecore needs to be available into MeeGo, not like currently in extendedkcal that the classes needed are just copied, and also not like in FreOffice where there is a stripped down version (not compatible with standard KDE apps).

Tom's IMAP Server

Works now!

Problems fixed:

  • NetworkManager reports wrong network state on Debian (allways offline), worked around by disabling network state tracking for now
  • LOGIN auth method bug in KIMAP, fixed.
  • ItemSync terminates too early on local job failures causing the resource to hang, fixed. Needs verification that we caught all cases.

Blogs / Press

Please add links to everything referring to this meeting, very helpful for e.V. reporting and dot story writing etc.

This page was last edited on 14 May 2010, at 17:31. Content is available under Creative Commons License SA 4.0 unless otherwise noted.