πŸ“° RSS/Atom feed reader
ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ
Bernhard Posselt 9eca163aa8 fix doc comment 2014-11-05 11:58:59 +01:00
3rdparty update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
admin add admin settings stub 2014-10-20 19:04:31 +02:00
appinfo update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
articleenhancer fix slashdot enhancer when it hits slashdot beta 2014-10-29 20:25:54 +01:00
bin fix python updater, bump to older url 2014-10-17 09:22:09 +02:00
config update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
controller update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
cron convert tabs indention to indention with 4 spaces because of mixing of both variants in code and better readability on github and websites because you cant set the indention width there and 8 spaces will be used for a tab 2014-10-21 16:45:36 +02:00
css convert tabs indention to indention with 4 spaces because of mixing of both variants in code and better readability on github and websites because you cant set the indention width there and 8 spaces will be used for a tab 2014-10-21 16:45:36 +02:00
db dont generate guid hash by hashing the guid since picofeed already hashes the guid in all cases 2014-10-30 10:26:00 +01:00
fetcher fix doc comment 2014-11-05 11:58:59 +01:00
hooks convert tabs indention to indention with 4 spaces because of mixing of both variants in code and better readability on github and websites because you cant set the indention width there and 8 spaces will be used for a tab 2014-10-21 16:45:36 +02:00
http first try to set indention limit at 80 characters in php 2014-10-21 18:19:23 +02:00
img web app manifest 2014-09-29 13:45:17 -04:00
js update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
l10n [tx-robot] updated from transifex 2014-11-04 01:01:13 -05:00
service update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
templates update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
tests update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
utility update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
.gitignore add model 2014-05-18 18:51:16 +02:00
.scrutinizer.yml first try to set indention limit at 80 characters in php 2014-10-21 18:19:23 +02:00
.travis.yml convert tabs indention to indention with 4 spaces because of mixing of both variants in code and better readability on github and websites because you cant set the indention width there and 8 spaces will be used for a tab 2014-10-21 16:45:36 +02:00
AUTHORS.md changed my github username 2014-01-10 19:43:44 +01:00
CHANGELOG.md update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
COPYING add license file 2013-06-06 00:08:18 +02:00
Makefile fix tests 2014-10-22 10:49:45 +02:00
README.md fix readme 2014-11-05 11:49:48 +01:00
composer.json update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
composer.lock update picofeed, add max size setting, fix #642 2014-11-05 11:30:38 +01:00
phpunit.xml add phpunit xml 2014-06-25 01:18:53 +02:00

README.md

README

Build Status Scrutinizer Code Quality Code Coverage

The News app is an RSS/Atom feed aggregator. It offers a RESTful API for app developers. The source code is available on GitHub

For further developer and user documentation please visit the wiki

Maintainers

Sync Clients

are listed on the ownCloud apps overview

Dependencies

  • ownCloud >= 7.0.3
  • PHP >= 5.4
  • libxml >= 2.7.8 (2.9 recommended)
  • php-curl
  • zlib (if installed from the appstore)
  • SimpleXML

Supported Operating Systems

All of the listed stable Linux distributions will be supported until their next stable version's first bugfix release is released (e.g. Debian 7 is supported until Debian 8.1 is released):

  • Ubuntu 14.04
  • Debian 7 (Wheezy)
  • CentOS 7
  • Arch Linux

Supported Browsers

  • Newest Firefox (Desktop, Android, Firefox OS)
  • Newest Chrome/Chromium (Desktop, Android)

Supported Databases

  • PostgreSQL
  • SQLite
  • MySql

Bugs

Before reporting bugs

If you are not able to add a feed because its XML does not validate (see this issue for an example), check if:

  • it is a valid RSS by running it through the W3C validator
  • you are able to add the feed in other feed readers

When reporting bugs

  • Enable debug mode by putting this at the bottom of config/config.php

    DEFINE('DEBUG', true);
    
  • Turn on debug level debug by adding "loglevel" => 0, to your config/config.php and reproduce the problem

  • check data/owncloud.log

Please provide the following details so that your problem can be fixed:

  • data/owncloud.log (important!)
  • ownCloud version
  • News version
  • Browser and version
  • PHP version
  • Distribution

Before you install the News app

Before you install the app check that the following requirements are met:

  • You can use a cron or webcron to call Background Jobs in ownCloud
  • Your data/ directory is owned by your webserver user and write/readable
  • You have installed php-curl and activated it in the php.ini
  • You run ownCloud 7

Should you have upgraded from a prior version, disable the CSS and JavaScript caching by adding this to owncloud/config/config.php:

DEFINE('DEBUG', true);

You can remove the line after a page reload

App Store

  • Go to the ownCloud apps page

  • Activate the News app in the apps menu

  • If the app fails to install, add this at the bottom of the file config/config.php:

    $CONFIG["appcodechecker"] = false;
    
  • Set up ownCloud Background Jobs to enable feed updates. A recommended timespan for feed updates is 15-30 Minutes.

The News App can be updated through the ownCloud apps page.

Git (development version)

  • The master branch will always be stable in conjunction with the latest master branch from ownCloud

  • Clone the News app into the /var/www/owncloud/apps/ directory:

    git clone https://github.com/owncloud/news.git

  • If the app fails to install, add this at the bottom of the file config/config.php:

    $CONFIG["appcodechecker"] = false;
    
  • Activate the News app in the apps menu

  • Set up ownCloud Background Jobs to enable feed updates. A recommended timespan for feed updates is 15-30 Minutes.

To update the News app use:

cd /var/www/owncloud/apps/news
git pull --rebase origin master

Performance Notices

FAQ

After updating to 4.x all my read articles reappear as unread

We switched to a different feed parsing library which creates article ids differently than before. This means that the same article is not found in the database because it was generated with a different id. This should happen only once after the upgrade and there is no data loss. Unfortunately there is no fix for this since the id is a hash which can not be reversed, so a smooth transition is not possible.

How do I reset the News app

Delete the folder owncloud/apps/news/ and owncloud/data/news/, then connect to your database and run the following commands where oc_ is your table prefix (defaults to oc_)

DELETE FROM oc_appconfig WHERE appid = 'news';
DROP TABLE oc_news_items;
DROP TABLE oc_news_feeds;
DROP TABLE oc_news_folders;

App is stuck in maintenance mode after failed update

Check the owncloud/data/owncloud.log for hints why it failed. After the issues are fixed, turn off the maintenance mode by editing your owncloud/config/config.php by setting the maintenance key to false:

"maintenance" => false,

All feeds are not updated anymore

This is a bug in the core backgroundjob system deleting the owncloud/data/cron.lock file gets the cron back up running

Another way to fix this is to run a custom updater script

All feeds are not updated and theres no cron.lock

  • Check if the cronjob exists with crontab -u www-data -e (replace www-data with your httpd user)
  • Check the file permissions of the cron.php file and if www-data (or whatever your httpd user is called like) can read and execute that script
  • Check if the cronjob is ever executed by placing an error_log('updating') in the background job file. If the cronjob runs, there should be an updating log statement in your httpd log.
  • If there is no updating statement in your logs check if your cronjob is executed by executing a different script
  • If your cron works fine but owncloud's cronjobs are never executed, file a bug in core
  • Try the updater script

Configuration

All configuration values are set inside owncloud/data/news/config/config.ini and can be edited in the admin panel.

The configuration is in INI format and looks like this:

autoPurgeMinimumInterval = 60
autoPurgeCount = 200
maxRedirects = 10
maxSize = 104857600
feedFetcherTimeout = 60
useCronUpdates = true
  • autoPurgeMinimumInterval: Minimum amount of seconds after deleted feeds and folders are removed from the database. Values below 60 seconds are ignored
  • autoPurgeCount: Defines the minimum amount of articles that can be unread per feed before they get deleted, a negative value will turn off deleting articles completely
  • maxRedirects: How many redirects the updater should follow
  • maxSize: Maximum feed size in bytes. If the RSS/Atom page is bigger than this value, the update will be aborted
  • feedFetcherTimeout: Maximum number of seconds to wait for an RSS or Atom feed to load. If a feed takes longer than that number of seconds to update, the update will be aborted
  • useCronUpdates: To use a custom update/cron script you need to disable the cronjob which is run by ownCloud by default by setting this to false

Translations

For translations in other languages than English, we rely on the Transifex platform.

If you want to help with translating the app, please do not create a pull request. Instead, head over to https://www.transifex.com/projects/p/owncloud/resource/news/ and join the team of your native language.

If approved, the translation will be automatically ported to the code within 24 hours.