Difference between revisions of "Projects/PIM/Akonadi/Roadmap"

< Projects‎ | PIM‎ | Akonadi
Jump to: navigation, search
(Move Akonadi roadmap section from parent page here.)
 
m (fix task status)
 
(2 intermediate revisions by one user not shown)
Line 1: Line 1:
== Roadmap ==
+
= Roadmap =
 
The following list contains the things which need to be done for Akonadi.
 
The following list contains the things which need to be done for Akonadi.
  
Line 6: Line 6:
 
There is also a more detailed page about bugs and missing features of things that are currently ported [[Projects/PIM/Akonadi/PortingStatus|here]].
 
There is also a more detailed page about bugs and missing features of things that are currently ported [[Projects/PIM/Akonadi/PortingStatus|here]].
  
==== KDE 4.1 / Akonadi 1.0 ====
+
== KDE 4.1 / Akonadi 1.0 ==
  
 
Urgent tasks that need to be finished for the KDE 4.1 release ('''May 19th'''):
 
Urgent tasks that need to be finished for the KDE 4.1 release ('''May 19th'''):
Line 26: Line 26:
 
|}
 
|}
  
==== KDE 4.2 / Akonadi 1.1 ====
+
== 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.
 
That's the stuff we want to have in 4.2, very roughly ordered by priority. Releases are scheduled for early January 2009.
Line 46: Line 46:
 
|}
 
|}
  
==== KDE 4.3 / Akonadi 1.2 ====
+
== KDE 4.3 / Akonadi 1.2 ==
  
 
Stuff that went into KDE 4.3 and Akonadi server 1.2.
 
Stuff that went into KDE 4.3 and Akonadi server 1.2.
Line 62: Line 62:
 
|}
 
|}
  
==== KDE 4.4 / Akonadi 1.3 ====
+
== KDE 4.4 / Akonadi 1.3 ==
  
 
The following is being worked on for KDE 4.4 and Akonadi server 1.3.
 
The following is being worked on for KDE 4.4 and Akonadi server 1.3.
Line 71: Line 71:
 
{{FeatureDone|Port KAddressBook|Replace with KContactManager|Tobias}}
 
{{FeatureDone|Port KAddressBook|Replace with KContactManager|Tobias}}
 
{{FeatureDone|Resource testing framework|Automated, shareable tests for resources|Igor/Volker}}
 
{{FeatureDone|Resource testing framework|Automated, shareable tests for resources|Igor/Volker}}
{{FeatureInProgress|Review change notifications|See the various discussions about shortcomings in that area|Volker,Steve}}
 
 
{{FeatureDone|Collection statistics for sub-trees|Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc.|Kevin}}
 
{{FeatureDone|Collection statistics for sub-trees|Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc.|Kevin}}
 
{{FeatureDone|Favorite Folder Model|see current KMail|Kevin}}
 
{{FeatureDone|Favorite Folder Model|see current KMail|Kevin}}
Line 79: Line 78:
 
|}
 
|}
  
==== Scheduled for KDE 4.5 / Akonadi 1.4 ====
+
== KDE 4.5 / Akonadi 1.4 ==
  
 
Stuff that is planned for inclusion in 4.5, partly already available in the akonadi-ports branch.
 
Stuff that is planned for inclusion in 4.5, partly already available in the akonadi-ports branch.
Line 86: Line 85:
 
|- style="background: #ececec; white-space:nowrap;"
 
|- style="background: #ececec; white-space:nowrap;"
 
! Status !! Item !! Description !! Contact
 
! Status !! Item !! Description !! Contact
{{FeatureInProgress|Port KOrganizer|Port from KResource to Akonadi|Frank/Sebastian}}
 
 
{{FeatureDone|Account creation wizard|as discussed in Berlin, see below|Volker,Laurent,Tom}}
 
{{FeatureDone|Account creation wizard|as discussed in Berlin, see below|Volker,Laurent,Tom}}
{{FeatureInProgress|KMail port|KMail using Akonadi|everyone}}
+
{{FeatureDone|Subtype identification|See discussion on kde-pim mailinglist|Kevin}}
{{FeatureInProgress|Remote Search|Delegating searches to resources, see below|Volker}}
+
{{FeatureDone|Share mail flag code|Standard actions, standard flag enum/constants, Nepomuk interaction|}}
 
|}
 
|}
  
==== Post KDE 4.5 /Akonadi 1.4 ====
+
== KDE 4.6 /Akonadi 1.5 ==
  
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.
+
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 +
|- style="background: #ececec; white-space:nowrap;"
 +
! Status !! Item !! Description !! Contact
 +
{{FeatureDone|Port KOrganizer|Port from KResource to Akonadi|Frank/Sebastian}}
 +
{{FeatureDone|KMail port|KMail using Akonadi|everyone}}
 +
{{FeatureDone|Remote Search|Delegating searches to resources, see below|Volker}}
 +
{{FeatureDone|KResource Akonadi bridge|for applications using KCal or KABC|kevin.krammer@gmx.at|Kevin}}
 +
{{FeatureDone|Akonadi KResource bridge|for data accessed through KCal or KABC resources|kevin.krammer@gmx.at|Kevin}}
 +
{{FeatureDone|MBOX Resource||Bertjan}}
 +
{{FeatureDone|Extend IMAP Resource||Kevin/Andras}}
 +
{{FeatureDone|POP3 Resource||Thomas}}
 +
{{FeatureDone|Agenda view|KOrganizer agenda view based on Akonadi|Sergio,Kevin}}
 +
{{FeatureDone|Month view|KOrganizer month view based on Akonadi|Bruno?}}
 +
{{FeatureDone|Timeline view|KOrganizer timeline view based on Akonadi|}}
 +
|}
 +
 
 +
== KDE 4.7 / Akonadi 1.6 ==
 +
 
 +
bugfixes and optimizations only
 +
 
 +
== KDE 4.8 / Akonadi 1.7 ==
  
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
|- style="background: #ececec; white-space:nowrap;"
 
|- style="background: #ececec; white-space:nowrap;"
 
! Status !! Item !! Description !! Contact
 
! Status !! Item !! Description !! Contact
{{FeatureTodo|Error reporting|Akonadi::Job basically has only one error code: Unknown|Tobias}}
+
{{FeatureDone|Multi-Instance Support|Ability to run more than one Akonadi instance on the same D-Bus session|Volker, Christian}}
{{FeatureInProgress|Port KNotes|File resource, serializer plugin, KNotes application, Kontact plugin|}}
+
{{FeatureDone|Mail Filter Agent||Tobias, Andras}}
{{FeatureTodo|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|}}
+
{{FeatureTodo|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.|}}
+
{{FeatureTodo|Nepomuk integration|Generic Item tag/rate/comment, etc.|Tom}}
+
{{FeatureTodo|Sync collection tree after creating setting up a resource|see AgentInstanceCreateJob|}}
+
{{FeatureTodo|Support standard commands for QUndo framework||}}
+
{{FeatureTodo|Conflict detection in resources|See Osnabrueck meeting notes for details|}}
+
{{FeatureInProgress|Action framework|see below|vkrause@kde.org|Volker}}
+
{{FeatureInProgress|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|Tobias}}
+
{{FeatureInProgress|Migration|Data and settings from pre-Akonadi times, see below|}}
+
{{FeatureInProgress|Extended notifications|Item change notification do not yet include their source collections (real and virtual)|}}
+
{{FeatureTodo|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?)|}}
+
 
|}
 
|}
  
 +
== KDE 4.9 / Akonadi 1.8 ==
  
=== Mail specific extensions ===
+
bugfixes and optimizations only
 +
 
 +
== KDE 4.10 / Akonadi 1.9 ==
 +
 
 +
bugfixes and optimizations only
 +
 
 +
== KDE 4.11 / Akonadi 1.10 ==
  
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
|- style="background: #ececec; white-space:nowrap;"
 
|- style="background: #ececec; white-space:nowrap;"
 
! Status !! Item !! Description !! Contact
 
! Status !! Item !! Description !! Contact
{{FeatureTodo|Share mail flag code|Standard actions, standard flag enum/constants, Nepomuk interaction|}}
+
{{FeatureDone|Batch Notifications||Dan}}
 
|}
 
|}
  
=== Event/Todo/Journal specific extensions ===
+
== KDE 4.12 / Akonadi 1.11 ==
  
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 
|- style="background: #ececec; white-space:nowrap;"
 
|- style="background: #ececec; white-space:nowrap;"
 
! Status !! Item !! Description !! Contact
 
! Status !! Item !! Description !! Contact
{{FeatureTodo|Todo proxy model|See KOrganizers To-Do view|Bruno?}}
+
{{FeatureInProgress|Server-Side Change notification filtering||Dan}}
{{FeatureDone|Subtype identification|See discussion on kde-pim mailinglist|Kevin}}
+
{{FeatureTodo|Server-Side Change recording||Dan}}
{{FeatureInProgress|Agenda view|KOrganizer agenda view based on Akonadi|Sergio,Kevin}}
+
{{FeatureTodo|Month view|KOrganizer month view based on Akonadi|Bruno?}}
+
{{FeatureTodo|Timeline view|KOrganizer timeline view based on Akonadi|}}
+
 
|}
 
|}
 +
 +
== 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.
 +
 +
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
 +
|- style="background: #ececec; white-space:nowrap;"
 +
! Status !! Item !! Description !! Contact
 +
{{FeatureTodo|Error reporting|Akonadi::Job basically has only one error code: Unknown|Tobias}}
 +
{{FeatureInProgress|Port KNotes|File resource, serializer plugin, KNotes application, Kontact plugin|}}
 +
{{FeatureTodo|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|}}
 +
{{FeatureTodo|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.|}}
 +
{{FeatureTodo|Sync collection tree after creating setting up a resource|see AgentInstanceCreateJob|}}
 +
{{FeatureTodo|Support standard commands for QUndo framework||}}
 +
{{FeatureTodo|Conflict detection in resources|See Osnabrueck meeting notes for details|}}
 +
{{FeatureTodo|Action framework|see below|}}
 +
{{FeatureInProgress|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|Tobias}}
 +
{{FeatureTodo|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 ===
 
=== Resources, Agents and others ===
Line 142: Line 173:
 
|- style="background: #ececec; white-space:nowrap;"
 
|- style="background: #ececec; white-space:nowrap;"
 
! Status !! Item !! Description !! Contact
 
! Status !! Item !! Description !! Contact
{{FeatureDone|KResource Akonadi bridge|for applications using KCal or KABC|kevin.krammer@gmx.at|Kevin}}
 
{{FeatureDone|Akonadi KResource bridge|for data accessed through KCal or KABC resources|kevin.krammer@gmx.at|Kevin}}
 
 
{{FeatureTodo|Expire Agent||}}
 
{{FeatureTodo|Expire Agent||}}
{{FeatureDone|MBOX Resource||Bertjan}}
 
{{FeatureDone|Extend IMAP Resource||Kevin/Andras}}
 
{{FeatureInProgress|POP3 Resource||Thomas}}
 
 
{{FeatureInProgress|RSS Resource|in akregator_port branch ([[Projects/PIM/RSS_framework_for_Akonadi|Details]])|Frank}}
 
{{FeatureInProgress|RSS Resource|in akregator_port branch ([[Projects/PIM/RSS_framework_for_Akonadi|Details]])|Frank}}
{{FeatureInProgress|Filter Agent||Szymon}}
 
{{FeatureTodo|Search||}}
 
 
{{FeatureTodo| History resource||}}
 
{{FeatureTodo| History resource||}}
{{FeatureInProgress|Filter Rule GUI|Used by filters and searches|Szymon}}
 
 
|}
 
|}

Latest revision as of 10:36, 18 July 2013

Contents

[edit] 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.

[edit] 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 <Tom/Volker>
DONE Payload serialization format versioning see below

tokoe@kde.org

<Tobias>
DONE API for additional item parts As discussed in Osnabruck <Volker/Tobias>
DONE Infrastructure for showing additional dialogs from agents/resources As discussed in Osnabrueck <Tom>
DONE Allow to limit ItemFetchJob to current cache content Prevents search index feeder agents from downloading all remote data Volker <vkrause@kde.org>
DONE Fix API for item/collection modifications See Osnabrueck meeting notes for details Volker <vkrause@kde.org>
DONE Plugin Versioning For serializer plugins, also check using Qt plugin stuff instead of the libkdepim plugin framework Tobias <tokoe@kde.org>
DONE Tray app small app to control the server and have a something that can report errors Toma <tomalbers@kde.nl>
DONE Backup support Dump & Restore database contents, also useful when upgrading to a newer database version <tomalbers@kde.nl>
DONE Akonadi Artwork Icon for the tray app Toma <tomalbers@kde.nl>

[edit] 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. Volker <vkrause@kde.org>
DONE KResource migration tool For KABC and KCal resources, setting up Akonadi <-> KResource bridges where needed <Volker>
DONE KResource bridges Basically finished, needs more testing <Kevin>
DONE Distribution Lists Serializer Plugin and resource support <Tobias,Kevin>
DONE Complete iCal resource error handling, robustness, legacy formats, file montitoring <Volker>
DONE Complete vCard resource same as iCal + binary legacy format <Bertjan>
DONE Item size Needed by Mailody <toma@kde.org>
DONE LINK/UNLINK commands Managing item references in virtual collections Volker <vkrause@kde.org>
DONE Akonadi Testrunner Running tests in a self contained Akonadi setup Igor <igor_trindade@yahoo.com.br>
DONE Remote file support for iCal/vCard resources Replaces net/remote KRes resources <Bertjan>
DONE Solid integration Switch online/offline state in ResourceBase automatically <Bertjan>

[edit] 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 <Igor/Volker>
DONE Filesystem Backend Store content data in files instead of the database, transfer filehandles instead of data to the client <Andras>
DONE IMAP resource <Kevin>
DONE Kolab proxy resource <Andras>
DONE RID based operations Item/collection retrieval and modification based on remote identifiers <Volker>
DONE Microblog Support Type library, serializer plugin, identi.ca/twitter resources <Tom>
DONE ResourceBase::collectionsRetrievalDone is missing I'm working around by calling collectionsRetrievedIncremental() with empty collection lists <Volker>

[edit] 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 <Tobias>
DONE Resource testing framework Automated, shareable tests for resources <Igor/Volker>
DONE Collection statistics for sub-trees Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc. <Kevin>
DONE Favorite Folder Model see current KMail <Kevin>
DONE Batch jobs for modifying/deleting collections/items it would be great to have jobs which perform operations on several entities in one go <Volker>
DONE Collection streaming support in ResourceBase/CollectionSync Similar to what is available for items already <Volker>
DONE MBox resource <Bertjan>

[edit] 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 <Volker,Laurent,Tom>
DONE Subtype identification See discussion on kde-pim mailinglist <Kevin>
DONE Share mail flag code Standard actions, standard flag enum/constants, Nepomuk interaction [mailto: <>]

[edit] KDE 4.6 /Akonadi 1.5

Status Item Description Contact
DONE Port KOrganizer Port from KResource to Akonadi <Frank/Sebastian>
DONE KMail port KMail using Akonadi <everyone>
DONE Remote Search Delegating searches to resources, see below <Volker>
DONE KResource Akonadi bridge for applications using KCal or KABC Kevin <kevin.krammer@gmx.at>
DONE Akonadi KResource bridge for data accessed through KCal or KABC resources Kevin <kevin.krammer@gmx.at>
DONE MBOX Resource <Bertjan>
DONE Extend IMAP Resource <Kevin/Andras>
DONE POP3 Resource <Thomas>
DONE Agenda view KOrganizer agenda view based on Akonadi <Sergio,Kevin>
DONE Month view KOrganizer month view based on Akonadi <Bruno?>
DONE Timeline view KOrganizer timeline view based on Akonadi [mailto: <>]

[edit] KDE 4.7 / Akonadi 1.6

bugfixes and optimizations only

[edit] 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 Christian <Volker, Christian>
DONE Mail Filter Agent Andras <Tobias, Andras>

[edit] KDE 4.9 / Akonadi 1.8

bugfixes and optimizations only

[edit] KDE 4.10 / Akonadi 1.9

bugfixes and optimizations only

[edit] KDE 4.11 / Akonadi 1.10

Status Item Description Contact
DONE Batch Notifications <Dan>

[edit] KDE 4.12 / Akonadi 1.11

Status Item Description Contact
IN PROGRESS Server-Side Change notification filtering <Dan>
TO DO Server-Side Change recording <Dan>

[edit] 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 [mailto: <>]
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 [mailto: <>]
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.

[mailto: <>]
TO DO Sync collection tree after creating setting up a resource see AgentInstanceCreateJob [mailto: <>]
TO DO Support standard commands for QUndo framework [mailto: <>]
TO DO Conflict detection in resources See Osnabrueck meeting notes for details [mailto: <>]
TO DO Action framework see below [mailto: <>]
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 <Tobias>
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?) [mailto: <>]


[edit] Resources, Agents and others

Status Item Description Contact
TO DO Expire Agent [mailto: <>]
IN PROGRESS RSS Resource in akregator_port branch (Details) <Frank>
TO DO History resource [mailto: <>]

This page was last modified on 18 July 2013, at 10:36. This page has been accessed 749 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal