* Read up on OPML/RSS/Atom spec (+ on the itunes podcast extension so we can set appropriate attributes; other extensions?)

* Read up on OPML/RSS/Atom spec (+ on the itunes podcast extension so we can set appropriate attributes; other extensions?)

Line 7:

Line 26:

== TODO ==

== TODO ==

−

* Akonadi (default) tag provider (Dmitry, in process)

+

* Akonadi (default) tag provider (Dmitry, in process) - '''done'''

−

* Use Tag class everywhere (Dmitry, in process)

+

* Use Tag class everywhere (Dmitry, in process) - '''done'''

−

* Refactor the chain: KRss::Item should hold Akonadi::Item which in turn should hold shared_ptr<KRss::ItemPayload> (as payload) and make the RSS serializer plugin work with KRss::ItemPayload instead of KRss::Item (Dmitry)

+

* Refactor the chain: KRss::Item should hold Akonadi::Item which in turn should hold KRss::ItemPayload (as payload) and make the RSS serializer plugin work with KRss::ItemPayload instead of KRss::Item (Dmitry) - '''done'''

−

* Proper initialization of the RSS resource (Dmitry. Finally I figured out what was wrong)

+

* Finish the virtual RSS resource for managing virtual/search RSS feeds (Dmitry. The code floats around somewhere on my disk. There were two blockers on the Akonadi side - the DBus deadlocks and support for link/unlink jobs - which are finally resolved)

* Finish the virtual RSS resource for managing virtual/search RSS feeds (Dmitry. The code floats around somewhere on my disk. There were two blockers on the Akonadi side - the DBus deadlocks and support for link/unlink jobs - which are finally resolved)

+

* Proper handling of icons in feed/item/tag classes (Dmitry)

+

* Replace the hard-coded values with consts ("application/rss+xml" and so on) (Dmitry)

Refactor the chain: KRss::Item should hold Akonadi::Item which in turn should hold KRss::ItemPayload (as payload) and make the RSS serializer plugin work with KRss::ItemPayload instead of KRss::Item (Dmitry) - done

Finish the virtual RSS resource for managing virtual/search RSS feeds (Dmitry. The code floats around somewhere on my disk. There were two blockers on the Akonadi side - the DBus deadlocks and support for link/unlink jobs - which are finally resolved)

Proper handling of icons in feed/item/tag classes (Dmitry)

Replace the hard-coded values with consts ("application/rss+xml" and so on) (Dmitry)

Use stl algorithms instead of Q_FOREACH (Dmitry)

Split the item into 2 parts: Headers and Content (Dmitry) - done

If the resource was not configured by the user (for example when migrating the feedlist from Akregator) create a new OPML file in the default location (somewhere in .kde/share/apps/) - done

BUG: when configuring the resource, tags are not imported from the OPML document (maybe it makes sense to have an option 'Import categories and folders as tags')

Make TreeNode public and pass it around by shared_ptr and kill AbstractFeed* classes - done