PIM/Akregator port: Difference between revisions

From KDE Community Wiki
< PIM
m (policy)
m (15 revisions imported)
 
(8 intermediate revisions by one other user not shown)
Line 5: Line 5:
Running '''git checkout akregator_port''' in these three repositories is enough to build Akregator2.
Running '''git checkout akregator_port''' in these three repositories is enough to build Akregator2.


'''IMPORTANT''': Akregator2 will '''NOT''' replace Akregator. Both are installed and can be executed at the same time.
The master branch is merged regularly into the akregator_port branch.
 
{{note|Akregator2 will '''NOT''' replace Akregator. Both are installed and can be executed at the same time.}}
 
== Code location ==
The Akregator2 related code is split between kdepimlibs, kdepim-runtime and kdepim.
 
* '''Kdepimlibs/krss''' contains the feed parser and the Akonadi collections handling code.
 
* '''Kdepim-runtime/resources/krsslocal''' is the main RSS resource.
 
* '''Kdepim-runtime/resources/tinytinyrss''' is an Akonadi resource to sync data from  a [http://tt-rss.org tinytinyrss] hosting site.


The master branch is merged regularly into the akregator_port branch.
* '''Kdepim-runtime/migration/akregator''' is the migration tool. Please note that the existing Akregator archives are only parsed. No data will be removed.
 
* '''Kdepim-runtime/agents/nepomukfeeder/plugins/nepomukrssfeeder.*''' is a nepomukfeeder plugin.


== Commit policy ==
* '''Kdepim/akregator2''' is the Akonadi based Akregator program.


Only Akregator2 related commits shall be pushed in the akregator_port branch.
* '''Kdepim/kontact/akregator2''' is the Akregator2 plugin for Kontact.


Any other change shall go into master or in the KDE/4.xx branch for bug fixes.
== Commit policy ==


If your pending changes need to be reviewed, please use [https://reviewboard.kde.org Reviewboard].
* Only Akregator2 related commits shall be pushed into the akregator_port branch.
In the groups list, enter '''kdepim''',
* Bug fixes and new features should be pushed into the 4.xx or master branch respectively.
In the people list, enter '''osterfeld'''.
* Bug fixes for Akregator1 shall also be merged into the Akregator2 code if possible.
* If your pending changes need to be reviewed, please use [https://reviewboard.kde.org Reviewboard].
** In the groups list, enter '''kdepim'''.
** In the people list, enter '''osterfeld'''.


== Known bugs ==
== Known bugs ==
Line 31: Line 47:
== Needed features ==
== Needed features ==


* '''[TODO]''' Local storage for feeds. Currently, there's no local storage for Akregator2 data. (maybe use a maildir?)
* '''[TODO]''' Result of the above point, the migration tool should also handle locally stored Akregator2 data
* '''[TODO]''' basic periodic fetching (can this be implemented using CachePolicy?)
* '''[TODO]''' basic periodic fetching (can this be implemented using CachePolicy?)
* '''[TODO]'''  highlighting feeds currently fetched (in the old resource this was done using a custom dbus interface. Is that the only option? maybe use collection properties)
* '''[TODO]'''  highlighting feeds currently fetched (in the old resource this was done using a custom dbus interface. Is that the only option? maybe use collection properties)
* '''[IN PROGRESS]''' (Alessandro) move interval fetching and archive options configuration to a resource configuration dialog
* '''[IN PROGRESS?]''' (Alessandro) move interval fetching and archive options configuration to a resource configuration dialog


== Optional features ==
== Optional features ==

Latest revision as of 13:01, 11 March 2016

Building Akregator2

Akregator2 is developed in the akregator_port branch of the kdepim, kdepim-runtime and kdepimlibs repositories.

Running git checkout akregator_port in these three repositories is enough to build Akregator2.

The master branch is merged regularly into the akregator_port branch.

Note

Akregator2 will NOT replace Akregator. Both are installed and can be executed at the same time.


Code location

The Akregator2 related code is split between kdepimlibs, kdepim-runtime and kdepim.

  • Kdepimlibs/krss contains the feed parser and the Akonadi collections handling code.
  • Kdepim-runtime/resources/krsslocal is the main RSS resource.
  • Kdepim-runtime/resources/tinytinyrss is an Akonadi resource to sync data from a tinytinyrss hosting site.
  • Kdepim-runtime/migration/akregator is the migration tool. Please note that the existing Akregator archives are only parsed. No data will be removed.
  • Kdepim-runtime/agents/nepomukfeeder/plugins/nepomukrssfeeder.* is a nepomukfeeder plugin.
  • Kdepim/akregator2 is the Akonadi based Akregator program.
  • Kdepim/kontact/akregator2 is the Akregator2 plugin for Kontact.

Commit policy

  • Only Akregator2 related commits shall be pushed into the akregator_port branch.
  • Bug fixes and new features should be pushed into the 4.xx or master branch respectively.
  • Bug fixes for Akregator1 shall also be merged into the Akregator2 code if possible.
  • If your pending changes need to be reviewed, please use Reviewboard.
    • In the groups list, enter kdepim.
    • In the people list, enter osterfeld.

Known bugs

Complete bugs list

Most Important Issues:

  • Bug 297662 - Resource crashes when going quickly through unread items.
  • Bug 313751 - migrator tool stalls on the first run.
  • Bug 313760 - migrator sometimes appends articles to the wrong feed.
  • Bug 316376 - articles are not stored locally.

Needed features

  • [TODO] Local storage for feeds. Currently, there's no local storage for Akregator2 data. (maybe use a maildir?)
  • [TODO] Result of the above point, the migration tool should also handle locally stored Akregator2 data
  • [TODO] basic periodic fetching (can this be implemented using CachePolicy?)
  • [TODO] highlighting feeds currently fetched (in the old resource this was done using a custom dbus interface. Is that the only option? maybe use collection properties)
  • [IN PROGRESS?] (Alessandro) move interval fetching and archive options configuration to a resource configuration dialog

Optional features