Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API: Improve Google Reader API level 2 compatibility #443

Closed
Alkarex opened this issue Mar 2, 2014 · 89 comments
Closed

API: Improve Google Reader API level 2 compatibility #443

Alkarex opened this issue Mar 2, 2014 · 89 comments

Comments

@Alkarex
Copy link
Member

Alkarex commented Mar 2, 2014

More specific follow up of #13 and #328

FreshRSS already supports quite well News+ (https://github.com/noinnion/newsplus ).

It was also tested against a modified version of https://github.com/ericmann/gReader-Library

It is currently being tested (alpha beta quality) against a fork of EasyRSS (https://play.google.com/store/apps/details?id=com.pursuer.reader.easyrss).

To improve compatibility, it would be nice to check with additional clients.

See how to get started with the API

@Alkarex Alkarex added this to the 0.8.0 milestone Mar 2, 2014
@Alkarex Alkarex self-assigned this Mar 2, 2014
Alkarex referenced this issue Mar 2, 2014
#13
Hardcoded passwords, no possibility to add/delete feeds or edit
categories yet.
Alkarex referenced this issue Mar 2, 2014
#13
Slightly better security while waiting for a proper authentification
system
Alkarex referenced this issue Mar 2, 2014
#13
Expiring token not implemented yet
Alkarex added a commit to Alkarex/EasyRSS that referenced this issue Mar 2, 2014
Alkarex added a commit that referenced this issue Mar 3, 2014
#443
Needed for e.g. EasyRSS
Alkarex added a commit that referenced this issue Mar 3, 2014
Alkarex added a commit that referenced this issue Mar 3, 2014
#443
For e.g. EasyRSS
@Alkarex
Copy link
Member Author

Alkarex commented Mar 3, 2014

Support of EasyRSS now at beta quality.

Alkarex added a commit that referenced this issue Mar 4, 2014
@Jucgshu
Copy link
Contributor

Jucgshu commented Mar 4, 2014

Ok I tried so set up EasyRSS without success. I keep having a "Login failed, please check your username and password" error.

I tried to use a password with or without spaces, numbers or capital letters.

Note that my username starts with a capital letter.

Don't know exactly where to look to be more precise on this one.

Am I missing something ?

  • FreshRSS dev branch
  • Nginx
  • https
  • Android 4.1.2

Alkarex added a commit that referenced this issue Mar 4, 2014
@Alkarex
Copy link
Member Author

Alkarex commented Mar 4, 2014

How to test the API in the /dev branch:

  1. Enable the API access in the FreshRSS configuration page.
  2. In the FreshRSS configuration page, define an API password for your user.
  3. Browse to http://your.server.example/FreshRSS/p/api/
  4. Click on first link to check full configuration:
    • If you see "PASS" then you are done, all is good. You may proceed to step 6.
    • If you see "Bad Request!" or "Not Found", then your server probably does not accept slashes / that are escaped %2F. Proceed to step 5.
    • If you see any other error message, proceed to step 5.
  5. Click on the second link to check partial configuration:
  6. You can now try from a mobile app, using http://your.server.example/FreshRSS/p/api/greader.php as the address, together with your FreshRSS username, and the special API password.

@Alkarex
Copy link
Member Author

Alkarex commented Mar 4, 2014

@Jucgshu Thanks for testing :-)
I have not checked with nginx yet, but I will make it work.
Please use the procedure just above.
Please check also ./data/log/api.log and/or send it to me.
P.S. Please update FreshRSS to the latest /dev version

@marienfressinaud
Copy link
Member

I had the same problem as @Jucgshu with HTTPS. No problem by using HTTP…
Same problem with News+ and I think the problem is the self-signed certificate

@Alkarex
Copy link
Member Author

Alkarex commented Mar 4, 2014

Self-signed HTTPS certificates may work, but only if you install them on the client obviously.
Did you have good success in HTTP @marienfressinaud then?

In News+, I am aware of one bug, which I think is a bug in News+: when all articles are marked as read on the server, then the synchronisation does not mark them as read in News+. If there is at least one article not read on the server, then the synchronisation is fine.

@marienfressinaud
Copy link
Member

Yes, all is fine in HTTP 👍 At least for the moment ;)

@Jucgshu
Copy link
Contributor

Jucgshu commented Mar 4, 2014

Working with a self signed certificate indeed.

Anyway, with or without https, I can't get step 4 to work.

I'm getting "404 Not Found".

(php 5.5)

@Alkarex
Copy link
Member Author

Alkarex commented Mar 4, 2014

@Jucgshu Is http://your.server.example/FreshRSS/p/api/greader.php found? It should say "Bad Request!".
@marienfressinaud : Did you try with nginx?

@ghost
Copy link

ghost commented Mar 31, 2016

As far as getallheaders is concerned, would it be possible to use one of the approaches described here to resolve the issue?

https://secure.php.net/getallheaders

@Alkarex
Copy link
Member Author

Alkarex commented Mar 31, 2016

@squarefractal Which issue / problem are you talking about?

@ghost
Copy link

ghost commented Apr 1, 2016

@Alkarex:
The Google reader API fails to work on configurations using php-fpm due to the absence of getallheaders(), so, would it be possible to add one of the implementations discussed in the comments section of this page to work around this issue?

@Alkarex
Copy link
Member Author

Alkarex commented Apr 2, 2016

@squarefractal Ok. Could you please create a new dedicated issue for that?

@ghost
Copy link

ghost commented Apr 9, 2016

Opened #1127 as per @Alkarex's request

@Alkarex
Copy link
Member Author

Alkarex commented Sep 25, 2016

@Alkarex Alkarex closed this as completed Sep 25, 2016
@Alkarex Alkarex mentioned this issue Apr 6, 2017
Alkarex added a commit to Alkarex/FreshRSS that referenced this issue Nov 11, 2017
Alkarex added a commit to Alkarex/FreshRSS that referenced this issue Jan 2, 2018
FreshRSS#907

CURLOPT_FOLLOWLOCATION open_basedir bug (FreshRSS#1657)

CURLOPT_FOLLOWLOCATION cannot be activated when an open_basedir is set
FreshRSS#1655 (comment)
https://stackoverflow.com/questions/6918623/curlopt-followlocation-cannot-be-activated
Manual merge dev

Add an entry in the subscription tool page

I reworked @Alkarex idea proposed in FreshRSS#1292. I though it was a good idea to merge everything in the same location.

Improve translation tools

I was not happy with the previous version. I refactored everything to make it reusable.
It allows me do do more verifications and to build a tool to handle the files themselves.

Merge pull request FreshRSS#1660 from aledeg/api-subscription-tool

Add an entry in the subscription tool page
Merge pull request FreshRSS#1658 from aledeg/improve-i18n-tools

Improve translation tools
Changelog 1247

FreshRSS#1660
FreshRSS#1292
FreshRSS#1247

Merge branch 'FreshRSS/dev' into github-update

[i18] nl/sub: add a few translations
Merge pull request FreshRSS#1661 from FreshRSS/Frenzie-patch-1

[i18] nl/sub: add a few translations
Reworded changelog 1247

FreshRSS#1660
FreshRSS#1292
FreshRSS#1247

Merge branch 'dev' of https://github.com/FreshRSS/FreshRSS into FreshRSS/dev

CLI optimize database (FreshRSS#1663)

CLI optimize database FreshRSS#1583
And VACUUM in SQLite FreshRSS#918
Add VACUUM for PostgreSQL (Not tested yet)
A bit of Apache documentation (FreshRSS#1670)

FreshRSS#1666
FreshRSS#1669
FreshRSS#908
Merge branch 'FreshRSS/dev' into github-update

Delete unneeded update files

Move update scripts

Merge branch 'staging-branch' into github-update

Fix Travis syntax

Fix typo in nl i18n (FreshRSS#1675)


improve zh-cn i18n (FreshRSS#1678)


Move translation tools into the cli folder (FreshRSS#1673)

Translation tools must be used on cli. It is better to have them in the cli folder.
Add a Mastodon share (FreshRSS#1674)

See FreshRSS#1521 
Minor language

Small fix Mastodon share

$a['method'] can be undefined.
FreshRSS#1674
FreshRSS#1521

Changelog Mastodon

Merge pull request FreshRSS#1682 from Alkarex/fix_mastodon_share

Small fix Mastodon share
Merge branch 'FreshRSS/dev' into github-update

More update

Split post-update in disctinct file

Post-update will thus contain code from the new version

Better case for git

Fix link encoding in API (FreshRSS#1686)

FreshRSS#1683
Alkarex/EasyRSS#35
A bit of documentation for the API (FreshRSS#1689)

FreshRSS#1687
FreshRSS#443 (comment)

Merge branch 'FreshRSS/dev' into github-update

[docs] Configuration: some stylistic improvements (FreshRSS#1693)

The main purpose is to fix the `imapcted` typo that was exposed by FreshRSS#1259 (comment)
[FIX] FreshRSS#1690 - Also check pdo_pgsql extension in check_install()

[ADD] 'blankoworld' as contributor in CREDITS

Changelog 1690

FreshRSS#1690
FreshRSS#1691
FreshRSS#1692

I18n - DE (FreshRSS#1698)

* added missing german translations
Call idn_to_ascii with INTL_IDNA_VARIANT_UTS46

Under PHP 7.2, calling `idn_to_ascii($idn)` results in a deprecation warning: 'INTL_IDNA_VARIANT_2003 is deprecated'
See https://secure.php.net/manual/en/function.idn-to-ascii.php 

Therefore, if possible, `idn_to_ascii($idn, 0, INTL_IDNA_VARIANT_UTS46)` should be used instead. `INTL_IDNA_VARIANT_UTS46` was introduced in PHP 5.4, so on versions before that, `idn_to_ascii($idn)` must still be used.

Fixed FreshRSS#1699
A bit more for git updates

Documentation updates (FreshRSS#1697)

* added documentation about updating FreshRSS
moved Installation to admin directory
linked some already existing documentation files
Update panel shows latest version message as success (FreshRSS#1701)

show latest version message as success, FIXES FreshRSS#1586
Merge branch 'FreshRSS/master' into FreshRSS/dev

Remove forgotten punycode line

Credits Craig Andrews

Merge pull request FreshRSS#1700 from candrews/patch-1

Call idn_to_ascii with INTL_IDNA_VARIANT_UTS46
Changelog  1586 1698 1699

FreshRSS#1586
FreshRSS#1701
FreshRSS#1698
FreshRSS#1699
FreshRSS#1700

Merge branch 'dev' of https://github.com/FreshRSS/FreshRSS into FreshRSS/dev

Merge branch 'FreshRSS/dev' into github-update

Add more glyphs for opensans font (FreshRSS#1032)

* Add more glyphs for opensans font

* Update .htaccess to support woff2 file format

* Fixed browser support for new font face

* Fixed Origine theme css and .htaccess

* Deleted unneeded fonts

* Added stylefiles for OpenSans font

* Fixed all themes with new font css

* Avoid additional CSS file

* htaccess cache control public

* Font casing bug

* Remove TTF font

Too big, low need https://caniuse.com/#search=woff

* Changelog 1032

FreshRSS#1032
FreshRSS#1028

Extension function to override entry hash (FreshRSS#1707)

Extension function to override entry hash
FreshRSS#1706


Merge branch 'FreshRSS/dev' into github-update

Show existing extensions in admin panel (FreshRSS#1708)

* first draft

* display installed extension state

* fixed whitespace vs tabs

* added translation in all languages

* added error checks and log messages

* fixed tabs vs whitespace

* another try in fixing whitespaces

* another try in fixing whitespaces

* improved extension list translations

* using JSON from official extension repo

* improved version compare

* updated translations

* French translation

make sure that we do not exceed a certain file size for the users log file

renamed method

incorporated code review feedback

added new extension hook
using hook for reading modes in navigation

refactored ReadingModes to Model

Log rotation, use Minz_Log, new log constants

ADMIN_LOG, API_LOG, PSHB_LOG

Check requirement in CLI script (FreshRSS#1711)

* check requirements in actualize_script before executing, fixes FreshRSS#1710

* removed empty whiteline

* testing all requirements

* incorporated code review feedback

* removed code that is already executed in _cli.php

* added newline at eof

* fixed include problems

* fixed include problems

Merge branch 'dev' into logfilesize
Merge branch 'dev' into logfilesize
Changelog 1708 1711

FreshRSS#1708
FreshRSS#1711

Merge pull request FreshRSS#1712 from kevinpapst/logfilesize

Prevent logfile from growing unlimited
Changelog 1712

FreshRSS#1712
FreshRSS#1562

Use __DIR__ for relative include and require

For uniformity, and to avoid having PHP searching in include_path.
http://php.net/manual/function.include.php
FreshRSS#1715
FreshRSS#1711 (comment)

Merge pull request FreshRSS#1717 from Alkarex/dir_in_require

Use __DIR__ for relative include and require
fixed bug in catch block
added types to docblocks

Merge pull request FreshRSS#1724 from kevinpapst/exception-bug

ExtensionManager fixes
[doc] Extensions: translate various sections from French

See FreshRSS#1697 (comment)

* lowercase dir as pointed out by @kevinpapst in FreshRSS#1704 (comment)

* Add French translation with improvements suggested by @aledeg

Merge branch 'dev' into hebrew-i18n
Fix whitespace

Add message after log rotation

FreshRSS#1712
FreshRSS#1562

Minz Dispatcher Controllers path

FreshRSS#1704

Customisable constants.local.php (FreshRSS#1725)

FreshRSS#1562
FreshRSS#1607
FreshRSS#1656
FreshRSS#1705
FreshRSS#1712
Merge pull request FreshRSS#1726 from Alkarex/message_log_rotation

Add message after log rotation
i18n hebrew more

18n Hebrew more 2

Changelog 1716 1724 1725

https://github.com/FreshRSS/FreshRSS/pull/1716
FreshRSS#1724
FreshRSS#1725

Merge branch 'FreshRSS/dev' into Minz_Dispatcher_paths

Changelog 1729

Merge pull request #1716 from FreshRSS/hebrew-i18n

Add hebrew translation
Changelog 1716

https://github.com/FreshRSS/FreshRSS/pull/1716

Merge pull request FreshRSS#1729 from Alkarex/Minz_Dispatcher_paths

Minz Dispatcher Controllers path
added .editorconfig with basic settings

Minz Controllers directory uppercase

FreshRSS#1729

Merge pull request FreshRSS#1704 from Frenzie/doc-translate-extensions

[doc] Extensions: translate various sections from French
Merge pull request FreshRSS#1732 from kevinpapst/editorconfig

Added .editorconfig
Changelog 1697, 1704, 1732

FreshRSS#1697
FreshRSS#1704
FreshRSS#1732

Merge branch 'dev' of https://github.com/FreshRSS/FreshRSS into FreshRSS/dev

fixed bug when adding a category and feed at the same time (FreshRSS#1731)

fixed bug when adding a category and feed at the same time

Changelog 1731

FreshRSS#1731

Fix favicon for open_basedir (FreshRSS#1733)

Remove open_basedir warning for CURLOPT_FOLLOWLOCATION with PHP 5.6.0- https://bugs.php.net/bug.php?id=65646
Remove warning for CURLOPT_FOLLOWLOCATION with open_basedir (FreshRSS#1734)

For PHP 5.6.0- http://www.php.net/ChangeLog-5.php#5.6.0
https://bugs.php.net/bug.php?id=65646
FreshRSS#1733
FreshRSS#1657
FreshRSS#1655
Prepare release of FreshRSS 1.9.0

Merge pull request FreshRSS#1720 from FreshRSS/dev

FreshRSS 1.9.0
Update FreshRSS version to 1.9.0

Merge branch 'FreshRSS/dev' into FreshRSS/master

[docs] Extensions: fix typo (FreshRSS#1735)


Merge branch 'FreshRSS/dev' into FreshRSS/master

New development version 1.9.1-dev

PHP 7.2: Fix a warning when retrieving the list of entries (FreshRSS#1739)

When retrieving the list of entries when the context was 'all' or 'starred', there was the following warning:

> Warning: count(): Parameter must be an array or an object that implements Countable in /home/alexis/FreshRSS/app/Controllers/indexController.php on line 206

I fixed that by changing how the array is tested.
Fixes link to the "update guidelines" (FreshRSS#1740)


Fixes link to the "update guidelines" (FreshRSS#1740)


Minor changes (FreshRSS#1747)


Tiny additions to .editorconfig (FreshRSS#1744)


Improving README in English and French (FreshRSS#1746)


Merge branch 'FreshRSS/master' into FreshRSS/dev

Adding new items to force-https.default.txt (FreshRSS#1745)


credits  RyDroid

FreshRSS#1747
FreshRSS#1746
FreshRSS#1745
FreshRSS#1744

[doc] Editing for better style (FreshRSS#1736)

* Also removed references to Persona authentication.
* Changed code comment about Persona because it's for HTTP auth
  in general. See FreshRSS@3d87609
  and FreshRSS#358 (comment)
[i18n] Add translation ignore/nl (FreshRSS#1752)


Add shortcuts to switch views (FreshRSS#1755)


Add mute strategy configuration (FreshRSS#1750)


Minor syntax

Merge pull request FreshRSS#1714 from kevinpapst/hook-readingmodes

Added extension hook for reading modes
Changelog 1739, 1745, 1750, 1755

FreshRSS#1739
FreshRSS#1745
FreshRSS#1750
FreshRSS#1755

Fix login bug when HTTP REMOTE_USER changes

YunoHost-Apps/freshrss_ynh#33

Merge pull request FreshRSS#1756 from Alkarex/YunoHost_HTTP_Auth

Fix login bug when HTTP REMOTE_USER changes
Changelog 1756

FreshRSS#1756
YunoHost-Apps/freshrss_ynh#33

Merge branch 'dev' of https://github.com/FreshRSS/FreshRSS into FreshRSS/dev

Fix shortcuts triggering view switching

Merge pull request FreshRSS#1758 from aledeg/fix-nav-buttons

Fix shortcuts triggering view switching
Merge branch 'dev' into github-update
Merge branch 'dev' into github-update
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants