Commit Graph
5733 Commits
Author SHA1 Message Date
Alexandre Alapetite 2e1d45a88d Fix parenthesis escaping bug (#5633)
fix https://github.com/FreshRSS/FreshRSS/issues/5632
In the SQL search, parentheses should not be escaped. Escaped parenthesis in the SQL search were tolerated by PostgreSQL but not by SQLite.
2023-09-05 17:33:38 +02:00
Alexandre Alapetite 1c7c1016f4 Fix JSON export/import (#5626)
* Fix import with empty content
fix https://github.com/FreshRSS/FreshRSS/issues/5622
Cherry picks on https://github.com/FreshRSS/FreshRSS/pull/5584

* Fix export of tags / labels
Article-defined tags were wrongly exported as user-defined labels.

* Fix export of tags / labels
Article-defined tags were wrongly exported as user-defined labels.

* Fix bug with many labels

* Better typing

* Comments
2023-09-04 10:09:37 +02:00
da405ceee6 Fix: sharing via clipboard for no https/localhost environments (#5606)
* Update main.js

* Update p/scripts/main.js

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* improved with negative feedback

* Update p/scripts/main.js

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

---------

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-08-29 23:15:19 +02:00
Miguel Sánchez dd91fe164d Add myself to credits (#5610) 2023-08-25 13:49:13 +02:00
Miguel Sánchez 06b613a50d Fixed Spanish translation typo (#5609) 2023-08-24 19:54:28 +02:00
András Marczinkó 92e56ddc27 Added myself to the credits (#5605) 2023-08-22 21:14:29 +02:00
András MarczinkóandAlexandre Alapetite 93fb55c9f8 Fixed some typos in the Hungarian translation (#5593)
* Fixed some typos in the Hungarian translation

* Fixed a misspelled word in the Hungarian translation

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-08-22 00:40:45 +02:00
maTh 3b4a865ce6 Fix background color of <pre> in Dark mode (#5603) 2023-08-22 00:37:42 +02:00
FromTheMoon 6749adc050 Add Hungarian language (#5589)
* Add Hungarian language

* Fixed missing lines in Hungarian translation
2023-08-15 11:18:47 +02:00
Alexandre Alapetite d165ed1fb6 Fix hash of articles with loadCompleteContent (#5576)
* Fix hash of articles with loadCompleteContent
The detection of modified articles was wrong for feeds using loadCompleteContent. Indeed, the hash is supposed to computed on the content provided by the server of the RSS feed, excluding further modifications.
Furthermore, read hash from database instead of recomputing it all the time.
Slightly related to https://github.com/FreshRSS/FreshRSS/pull/5574

* Explicit SQL alias

* PHPDocs
2023-08-13 15:11:22 +02:00
berumuron 54592fa1fd fix: Fix the "Show all articles" option (#5580) 2023-08-10 17:02:47 +02:00
berumuron 1e0e4f54a5 fix: Allow to access logs when update is disabled (#5577) 2023-08-10 16:43:15 +02:00
berumuron eb57f490db tec: Make FreshRSS_Share::register public (#5578)
I don't know why the visibility of this method has changed, but it's
essential to register custom shares as extensions.

Reference: a13a20de20
2023-08-10 16:41:16 +02:00
6d8a5429cb Add Persian/فارسی Language (#5571)
* Add Persian/فارسی  Language

* Fix i18n

* make fix-all
And several manual fixes

* Exclude Persian from English typo check

* Update CREDITS.md

I added myself to the list

* Credits alphabetic order

---------

Co-authored-by: AmirHossein <marjani@outlook.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-08-07 10:09:31 +02:00
Steve Jones 8f188b57ee [docs] Fix typos on the word 'scrape' and its variations (#5567)
* Fix typos on the word 'scrape' and its variations

* Fix spelling of 'Tipps'
2023-08-05 13:54:09 +02:00
Alexandre Alapetite 6ee73b5fca Revert auto mark as read same titles for existing articles (#5561)
Partial revert of https://github.com/FreshRSS/FreshRSS/pull/5505
We should not apply the auto mark as read rule based on existing titles for updated articles, because the match would most of the time be on that same article's title.
2023-08-03 21:57:25 +02:00
Alexandre Alapetite c49c29a561 OPML export fix empty attributes (#5559)
Fix:
> Deprecated:  DOMElement::setAttributeNS(): Passing null to parameter #3 ($value) of type string is deprecated in /var/www/FreshRSS/lib/marienfressinaud/lib_opml/src/LibOpml/LibOpml.php on line 680
2023-08-03 21:57:00 +02:00
Alexandre Alapetite 4039f6c9a4 Fix cache refresh (#5562)
Improvement of https://github.com/FreshRSS/FreshRSS/pull/4422

The main problem was due to `touch()` not automatically clearing the file status cache, and requiring a call to `clearstatcache()`. Example:

```
php > touch('/tmp/touch.txt');
php > echo date('c', filemtime('/tmp/touch.txt'));
2023-08-03T17:27:43+02:00
php > touch('/tmp/touch.txt');
php > echo date('c', filemtime('/tmp/touch.txt'));
2023-08-03T17:27:43+02:00
php > clearstatcache(true, '/tmp/touch.txt');
php > echo date('c', filemtime('/tmp/touch.txt'));
2023-08-03T17:28:21+02:00
```
2023-08-03 21:56:35 +02:00
Alexandre Alapetite e7689459f2 Rework trusted proxies (#5549)
* Rework trusted proxies
Fix https://github.com/FreshRSS/FreshRSS/issues/5502
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/3226

New environment variable `TRUSTED_PROXY`: set to 0 to disable, or to a list of trusted IP ranges compatible with https://httpd.apache.org/docs/current/mod/mod_remoteip.html#remoteiptrustedproxy

New internal environment variable `CONN_REMOTE_ADDR` to remember the true IP address of the connection (e.g. last proxy), even when using mod_remoteip.

Current working setups should not observe any significant change.

* Minor whitespace

* Safer trusted sources during install
Rework of https://github.com/FreshRSS/FreshRSS/pull/5358
https://github.com/FreshRSS/FreshRSS/issues/5357

* Minor readme
2023-07-30 12:59:18 +02:00
Alexandre Alapetite 0182d84142 Minor update dev dependencies (#5541)
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5538
2023-07-23 14:31:55 +02:00
Alexandre Alapetite 1f05c92376 Fix enclosures in RSS output (#5540)
* Fix enclosures in RSS output
fix https://github.com/FreshRSS/FreshRSS/issues/5539

* another iterable

* Forgotten iterable
2023-07-19 23:40:28 +02:00
Zhaofeng Li c35a9ee061 Docker: Add DATA_PATH to cron env (#5531) 2023-07-19 23:36:13 +02:00
dependabot[bot] d12bcefb5a Bump word-wrap from 1.2.3 to 1.2.4 (#5538)
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 22:45:57 +02:00
a066be93b0 Add OIDC_X_FORWARDED_HEADERS environment variable (fixes #5516) (#5523)
* Add OIDC_X_FORWARDED_HEADERS environment variable (fixes #5516)

The mod_auth_oidc needs an additional directive (`OIDCXForwardedHeaders`)
in case FreshRSS is running behind a reverse proxy, so it knows what host,
protocol and port were used to access it. This information is then used
in the `redirect_uri` when directing the user agent (browser) to the identity
provider for authentication.

Please note that, if you are running FreshRSS behind a reverse proxy that
handles TLS, you may need to update your identity provider's configuration so
it accepts `https://...` as a `redirect_uri`.

* Add link to mod_auth_openidc's documentation for the OIDCXForwardedHeaders Apache configuration directive

* Minor spelling

---------

Co-authored-by: Stefan Zwanenburg <stefan@zwanenburg.info>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-07-16 14:50:42 +02:00
Alexandre Alapetite db5d458cb2 Fix get and order when saving user query (#5515)
fix https://github.com/FreshRSS/FreshRSS/issues/5514
2023-07-10 08:04:26 +02:00
dependabot[bot] 6f4c6f8993 Bump stylelint from 15.8.0 to 15.10.1 (#5513)
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.8.0 to 15.10.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.8.0...15.10.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-08 10:02:21 +02:00
f8f163d054 Chore/processing of depreciations and updating code to php72 minimum (#5504)
* processing of depreciations and updating of code to php7.2 minimum

* Autoformat many strange array indenting
And revert a few unwanted changes

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-07-07 22:36:27 +02:00
7f9594b8c7 fix many "Only booleans are allowed in an if condition" (#5501)
* fix many "Only booleans are allowed in an if condition"

* Update cli/create-user.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update cli/i18n/I18nUsageValidator.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Fix several regressions and other minor things

* Fix another regression

* Update lib/http-conditional.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-07-07 21:53:17 +02:00
Alexandre Alapetite 1db606bc1b New extension hook entry_auto_read (#5505)
* New extension hook entry_auto_read
For extensions to be notified of articles being automatically marked as read for various reasons

* Documentation + entry_auto_unread
2023-07-05 11:00:26 +02:00
maTh ebf62a4296 Delete deprecated themes: BlueLagoon & Screwdriver (#5374)
* delete theme BlueLagoon
* delete theme Screwdriver

Follow-up of #4807
Ref. #4295
2023-07-05 01:30:55 +02:00
otaconix fc579bd2bc Allow choosing the OIDC remote user claim and scopes to request from the identity provider (#5481)
* Allow choosing the OIDC remote user claim and scopes to request from the identity provider

* Added comment to explain how checking whether an environment variable is set is done

* Use apostrophe's instead of single quotes for verb contractions in docs

* Move variables used for checking presence of environment variables inside IfDefine block
2023-06-30 12:58:20 +02:00
maTh ee195354d9 Global view: reduce overhead (#5496) 2023-06-27 11:06:39 +02:00
maThandAlexandre Alapetite 2f48509678 docs: web scrapping with XPath (#5494)
* added docs

* add correct link

* typo

* A bit of typography

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-06-26 23:28:24 +02:00
maThandAlexandre Alapetite 666e951fa3 docs: add deep links (#5493)
* add deep links

* Update docs/en/index.md

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-06-25 00:17:02 +02:00
David Lynch 69994078d7 Fix macOS feed title meta-click behavior (#5492)
* Fix command-click on feed titles in macOS browsers

In macOS command-click is used for open-in-new-tab, not ctrl-click.

* Update CREDITS.md
2023-06-24 20:25:55 +02:00
maThandAlexandre Alapetite fca8ae4207 added: new sharing service: Omnivore (#5477)
* add Omnivore

* fix i18n

* Update app/i18n/en/gen.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-06-20 09:06:23 +02:00
Alexandre Alapetite de59076ae1 Remove unneeded quotes in warning (#5480)
* Remove unneeded quotes in warning
fix https://github.com/FreshRSS/FreshRSS/issues/5479

* Minor whitespace
2023-06-20 09:05:55 +02:00
Alexandre Alapetite 8bf362838e Update dev dependencies (#5478) 2023-06-18 23:05:28 +02:00
Alexandre Alapetite 723f7577d0 Refactor lastSeen and markReadAsGone (#5470)
* Refactor lastSeen and markReadAsGone
Make the logic a bit more robust and explicit

* Remove forgotten SQL param

* Add test inTransaction

* More robust transaction

* Add a debug log

* Add max timestamp to markAsReadUponGone

* Reduce number of debug lines

* typing

* Better detection of when feed is empty

* More explicit case for push
2023-06-16 16:11:16 +02:00
Alexandre Alapetite 228d7adfdb Fix slider views (#5469)
* Fix slider titles
And fix full-page view of category configuration.
FIx https://github.com/FreshRSS/FreshRSS/pull/5449#issuecomment-1590021947

* Fix user queries and user management
Implement https://github.com/FreshRSS/FreshRSS/pull/5469#issuecomment-1591957935
2023-06-15 12:47:47 +02:00
Alexandre Alapetite 644427b9b1 Docker quiet Apache a2enmod (#5464)
Quiet output for a2enmod, a2dismod, a2disconf, a2dissite, a2ensite to avoid many messages the following, which are not even relevant because Apache is not yet started at this stage:

```
To activate the new configuration, you need to run:
  systemctl restart apache2
```

Related to https://github.com/FreshRSS/FreshRSS/pull/5463
2023-06-14 15:18:26 +02:00
Alexandre Alapetite dd5a021061 Docker: Debian 12 (#5461)
https://www.debian.org/releases/bookworm/
With PHP 8.2.5 and Apache 2.4.57
2023-06-14 15:18:03 +02:00
Alexandre Alapetite 3fe68a3285 Allow deep link to extension configuration (#5449)
* Allow deep link to extension configuration
Full screen

* Support slider

* Add aside_configure
Fix https://github.com/FreshRSS/FreshRSS/pull/5449#issuecomment-1588089769
2023-06-13 22:40:28 +02:00
3d9e0c47ec Improved: update page (#5420)
* prependTitle()

* do not need the "damn" in the alert

* update page layout improved

* release channel

* i18n labels

* add log messages while updating

* Delete updatee.php

* Update updateController.php

* Update updateController.php

* Update updateController.php

* Update updateController.php

* add getCurrentGitBranch()

* Update updateController.php

* state2 buttons

* i18n

* loading

* Update feedback.php

* Update feedback.php

* Update feedback.php

* Update extra.js

* Apply suggestions from code review

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>

* Update updateController.php

* Update terminology

* update button is now armed

---------

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-06-13 22:39:33 +02:00
maTh 67130bca3a Fix: conf.php (German i18n) (#5468) 2023-06-13 22:36:54 +02:00
Alexandre Alapetite 148a2268ff Readme minor typo 2023-06-13 22:16:27 +02:00
Alexandre Alapetite ae8dfc1b1b Fix OpenID Connect crash on ARM (#5463)
Only enable the Apache auth_openidc module when actually used
Fix https://github.com/FreshRSS/FreshRSS/issues/5460
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5351
2023-06-13 16:28:51 +02:00
58b254f9cb Add OpenID Connect (#5351)
* Add OIDC

* Update documentation.

* Update apache conf adding IfModule

* Use IfDefine for OIDC in apache conf

* Fix non-oidc support

* Fix typing

* Use IfDefine to enable OIDC

* Add OIDC support to all dockerfiles

* Re add apache Require option

* Fixes and documentation

* A few more fixes

* A bit more doc

* Change type of environment variable

* Update readme

* Correct apache config for OIDC support.

* Fix README formatting

* Update oidc control path

* Fix oidc endpoint being cached

* A bit more review

* Simplify ExpiresActive

* Add session refresh and improve caching

* Allow more different setups

* A bit more documentation

* A bit more readme

---------

Co-authored-by: Aaron Schif <aschif@netdevgroup.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
Co-authored-by: maTh <math-home@web.de>
2023-06-12 10:22:46 +02:00
yubiuserandAlexandre Alapetite 15d143989b Clarify that maximum number to keep is per feed (#5458)
* Clarify that maximum number to keep is per feed

Signed-off-by: Christian König <ckoenig@posteo.de>

* Append //DIRTY

Signed-off-by: Christian König <ckoenig@posteo.de>

* make fix-all

* Revert wrong whitespace

* Amend Credits.md

Signed-off-by: Christian König <ckoenig@posteo.de>

---------

Signed-off-by: Christian König <ckoenig@posteo.de>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-06-12 10:22:14 +02:00
Alexandre Alapetite 2f5ef39cf2 Remove core extensions Google Groups and Tumblr (#5457)
* Remove core extensions Google Groups and Tumblr
* Google Groups seems to have remove support for RSS/ATOM https://github.com/FreshRSS/FreshRSS/pull/2838 (see e.g. https://www.theregister.com/2021/08/16/google_groups_rss/ )
* Tumblr seems to have fixed their RSS/ATOM post-GDPR https://github.com/FreshRSS/FreshRSS/pull/1924

So for both of thems, the extensions have become irrelevant.

* Cleaning
2023-06-12 08:22:02 +02:00