PIM/Akonadi/Roadmap
Roadmap
The following list contains the things which need to be done for Akonadi.
Note: The person noted in the "Contact" column is not necessarily the one implementing that feature, but the one who can tell you what to do and how to help, i.e. you can also contribute to those tasks ;-)
There is also a more detailed page about bugs and missing features of things that are currently ported here.
KDE 4.1 / Akonadi 1.0
Urgent tasks that need to be finished for the KDE 4.1 release (May 19th):
Status | Item | Description | Contact |
---|---|---|---|
DONE | Item streaming in ItemSync/ResourceBase | As discussed in Osnabrueck | |
DONE | Payload serialization format versioning | see below | |
DONE | API for additional item parts | As discussed in Osnabruck | |
DONE | Infrastructure for showing additional dialogs from agents/resources | As discussed in Osnabrueck | |
DONE | Allow to limit ItemFetchJob to current cache content | Prevents search index feeder agents from downloading all remote data | |
DONE | Fix API for item/collection modifications | See Osnabrueck meeting notes for details | |
DONE | Plugin Versioning | For serializer plugins, also check using Qt plugin stuff instead of the libkdepim plugin framework | |
DONE | Tray app | small app to control the server and have a something that can report errors | |
DONE | Backup support | Dump & Restore database contents, also useful when upgrading to a newer database version | |
DONE | Akonadi Artwork | Icon for the tray app |
KDE 4.2 / Akonadi 1.1
That's the stuff we want to have in 4.2, very roughly ordered by priority. Releases are scheduled for early January 2009.
Status | Item | Description | Contact |
---|---|---|---|
DONE | Server error reporting | Helpful error message when the server cannot be started or if there is some other problem communicating with it. | |
DONE | KResource migration tool | For KABC and KCal resources, setting up Akonadi <-> KResource bridges where needed | |
DONE | KResource bridges | Basically finished, needs more testing | |
DONE | Distribution Lists | Serializer Plugin and resource support | |
DONE | Complete iCal resource | error handling, robustness, legacy formats, file montitoring | |
DONE | Complete vCard resource | same as iCal + binary legacy format | |
DONE | Item size | Needed by Mailody | |
DONE | LINK/UNLINK commands | Managing item references in virtual collections | |
DONE | Akonadi Testrunner | Running tests in a self contained Akonadi setup | |
DONE | Remote file support for iCal/vCard resources | Replaces net/remote KRes resources | |
DONE | Solid integration | Switch online/offline state in ResourceBase automatically |
KDE 4.3 / Akonadi 1.2
Stuff that went into KDE 4.3 and Akonadi server 1.2.
Status | Item | Description | Contact |
---|---|---|---|
DONE | Fix unit tests | Make unittests work without destroying the production database | |
DONE | Filesystem Backend | Store content data in files instead of the database, transfer filehandles instead of data to the client | |
DONE | IMAP resource | ||
DONE | Kolab proxy resource | ||
DONE | RID based operations | Item/collection retrieval and modification based on remote identifiers | |
DONE | Microblog Support | Type library, serializer plugin, identi.ca/twitter resources | |
DONE | ResourceBase::collectionsRetrievalDone is missing | I'm working around by calling collectionsRetrievedIncremental() with empty collection lists |
KDE 4.4 / Akonadi 1.3
The following is being worked on for KDE 4.4 and Akonadi server 1.3.
Status | Item | Description | Contact |
---|---|---|---|
DONE | Port KAddressBook | Replace with KContactManager | |
DONE | Resource testing framework | Automated, shareable tests for resources | |
DONE | Collection statistics for sub-trees | Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc. | |
DONE | Favorite Folder Model | see current KMail | |
DONE | Batch jobs for modifying/deleting collections/items | it would be great to have jobs which perform operations on several entities in one go | |
DONE | Collection streaming support in ResourceBase/CollectionSync | Similar to what is available for items already | |
DONE | MBox resource |
KDE 4.5 / Akonadi 1.4
Stuff that is planned for inclusion in 4.5, partly already available in the akonadi-ports branch.
Status | Item | Description | Contact |
---|---|---|---|
DONE | Account creation wizard | as discussed in Berlin, see below | |
DONE | Subtype identification | See discussion on kde-pim mailinglist | |
DONE | Share mail flag code | Standard actions, standard flag enum/constants, Nepomuk interaction |
KDE 4.6 /Akonadi 1.5
Status | Item | Description | Contact |
---|---|---|---|
DONE | Port KOrganizer | Port from KResource to Akonadi | |
DONE | KMail port | KMail using Akonadi | |
DONE | Remote Search | Delegating searches to resources, see below | |
DONE | KResource Akonadi bridge | for applications using KCal or KABC | |
DONE | Akonadi KResource bridge | for data accessed through KCal or KABC resources | |
DONE | MBOX Resource | ||
DONE | Extend IMAP Resource | ||
DONE | POP3 Resource | ||
DONE | Agenda view | KOrganizer agenda view based on Akonadi | |
DONE | Month view | KOrganizer month view based on Akonadi | |
DONE | Timeline view | KOrganizer timeline view based on Akonadi |
KDE 4.7 / Akonadi 1.6
bugfixes and optimizations only
KDE 4.8 / Akonadi 1.7
Status | Item | Description | Contact |
---|---|---|---|
DONE | Multi-Instance Support | Ability to run more than one Akonadi instance on the same D-Bus session | |
DONE | Mail Filter Agent |
KDE 4.9 / Akonadi 1.8
bugfixes and optimizations only
KDE 4.10 / Akonadi 1.9
bugfixes and optimizations only
KDE 4.11 / Akonadi 1.10
Status | Item | Description | Contact |
---|---|---|---|
DONE | Batch Notifications |
KDE 4.12 / Akonadi 1.11
Status | Item | Description | Contact |
---|---|---|---|
IN PROGRESS | Server-Side Change notification filtering | ||
TO DO | Server-Side Change recording | <Dan> |
Post KDE 4.12 / Akonadi 1.11
This stuff is currently not considered for 4.5 due to lack of resources. Of course it will be added nevertheless if someone implements it. The list is completely unsorted.
Status | Item | Description | Contact |
---|---|---|---|
TO DO | Error reporting | Akonadi::Job basically has only one error code: Unknown | <Tobias> |
IN PROGRESS | Port KNotes | File resource, serializer plugin, KNotes application, Kontact plugin | |
TO DO | Batch job to retrieve a set of items from Akonadi | Those items don't belong to the same collection, rather they are located in different collections | |
TO DO | CollectionFetchJob/ItemFetchJob should be able to retrieve entities by flags/mimetype |
This is problematic with change notifications, as they have to know about the filtering with the \Seen flag as well. This type of filtering would be possible with full Nepomuk interface though. We don't want yet another query language here. The plan is to fix the nepomuk agent and use that as semi-public interface for now. |
|
TO DO | Sync collection tree after creating setting up a resource | see AgentInstanceCreateJob | |
TO DO | Support standard commands for QUndo framework | ||
TO DO | Conflict detection in resources | See Osnabrueck meeting notes for details | |
TO DO | Action framework | see below | |
IN PROGRESS | Fix API docs | The libakonadi move as well as the huge API changes following it broke lots of the docs technical and content-wise, see below | |
TO DO | Alternative for Akonadi::ResourceBase | Not using the scheduler to avoid the serialization of operations, see RSS resource. (This will get very complicated. Maybe use a proxy ResourceBase for this, which is thread-pooled?) |
Resources, Agents and others
Status | Item | Description | Contact |
---|---|---|---|
TO DO | Expire Agent | ||
IN PROGRESS | RSS Resource | in akregator_port branch (Details) | |
TO DO | History resource |