FreshRSS/FreshRSS
### [`v1.20.0`](https://togithub.com/FreshRSS/FreshRSS/blob/HEAD/CHANGELOG.md#2022-09-10-FreshRSS-1200)
[Compare Source](https://togithub.com/FreshRSS/FreshRSS/compare/1.19.2...1.20.0)
- Features
- New Web scraping feature *HTML+XPath* for Web pages without any RSS/ATOM feed [#4220](https://togithub.com/FreshRSS/FreshRSS/pull/4220)
- Add support for *Dynamic OPML* [#4407](https://togithub.com/FreshRSS/FreshRSS/pull/4407)
- Subscriber: Ability for a category to be dynamically populated with a list of feeds provided by a remote OPML
- Publisher: Ability to dynamically export a FreshRSS view (all, feed, category) into a dynamic OPML
- New search engine supporting (nested) parentheses [#4378](https://togithub.com/FreshRSS/FreshRSS/pull/4378), [#4503](https://togithub.com/FreshRSS/FreshRSS/pull/4503)
- `(author:Alice OR intitle:hello) (author:Bob OR intitle:world)`
- also with negation: `!((author:Alice intitle:hello) OR (author:Bob intitle:world))`
- and supporting calling user queries from the search field by name: `search:"My query"` or `search:QueryA`, or by ID: `S:3`
- Allow many (50k+) feeds [#4347](https://togithub.com/FreshRSS/FreshRSS/pull/4347)
- Note: only for new users or after an export/import or a manual database update
- See also [#4357](https://togithub.com/FreshRSS/FreshRSS/pull/4357), [#4353](https://togithub.com/FreshRSS/FreshRSS/pull/4353),
[#4417](https://togithub.com/FreshRSS/FreshRSS/pull/4417), [#4502](https://togithub.com/FreshRSS/FreshRSS/pull/4502)
- New option to exclude some DOM elements with a CSS Selector when retrieving an article full content [#4501](https://togithub.com/FreshRSS/FreshRSS/pull/4501)
- New option to automatically mark as read gone articles [#4426](https://togithub.com/FreshRSS/FreshRSS/pull/4426)
- New OPML export/import of some proprietary FreshRSS attributes [#4342](https://togithub.com/FreshRSS/FreshRSS/pull/4342)
- Tolerate the import of some invalid OPML files [#4591](https://togithub.com/FreshRSS/FreshRSS/pull/4591)
- New feed settings to allow cookies and HTTP redirects [#4470](https://togithub.com/FreshRSS/FreshRSS/pull/4470)
- Performance: Easier [text search indexes](https://freshrss.github.io/FreshRSS/en/admins/DatabaseConfig.html) for fast searches with PostgreSQL [#4505](https://togithub.com/FreshRSS/FreshRSS/pull/4505)
- The indexes must be manually added for now. Using GIN `pg_trgm`
- Easier definition of default user queries for new users in `data/config-user.custom.php` [#4360](https://togithub.com/FreshRSS/FreshRSS/pull/4360)
- New sharing through standard [Web Share API](https://www.w3.org/TR/web-share/) [#4271](https://togithub.com/FreshRSS/FreshRSS/pull/4271)
- New sharing with Xing, Reddit, Pinterest, WhatsApp [#4270](https://togithub.com/FreshRSS/FreshRSS/pull/4270)
- New sharing with [`archive.today`](https://archive.ph/) [#4530](https://togithub.com/FreshRSS/FreshRSS/pull/4530)
- SimplePie
- New method `rename_attribute()` instead of removing attributes to better be able to style/hide content of articles [#4175](https://togithub.com/FreshRSS/FreshRSS/pull/4175),
[simplepie#717](https://togithub.com/simplepie/simplepie/pull/717)
- Fix parsing of HTTP Links [simplepie#729](https://togithub.com/simplepie/simplepie/pull/729)
- Fix `status_code` type for PHP 8.1+ [simplepie#728](https://togithub.com/simplepie/simplepie/pull/728)
- Fix relative URLs [simplepie#744](https://togithub.com/simplepie/simplepie/pull/744)
- Bug fixing
- Fix last update & archive logic (especially for very long feeds, for which some old items were marked as unread) [#4422](https://togithub.com/FreshRSS/FreshRSS/pull/4422)
- Fix regression with Fever API on 32-bit platforms [#4201](https://togithub.com/FreshRSS/FreshRSS/pull/4201)
- Fix read-when-same-title bug [#4206](https://togithub.com/FreshRSS/FreshRSS/pull/4206)
- Fix some search expressions such as `"ab cd"` and `ab-cd` [#4277](https://togithub.com/FreshRSS/FreshRSS/pull/4277)
- Fix auto-load of more articles when using shortcuts [#4532](https://togithub.com/FreshRSS/FreshRSS/pull/4532)
- Fix space shortcut [#4581](https://togithub.com/FreshRSS/FreshRSS/pull/4581)
- WebSub: Use hash instead of base64 to handle long URLs [#4282](https://togithub.com/FreshRSS/FreshRSS/pull/4282)
- Fix handling of authors with ampersand `&` [#4287](https://togithub.com/FreshRSS/FreshRSS/pull/4287)
- Fix lazy loading images containing a quote `'` in the address [#4330](https://togithub.com/FreshRSS/FreshRSS/pull/4330)
- Fix database size calculation for PostgreSQL [#4249](https://togithub.com/FreshRSS/FreshRSS/pull/4249)
- Fix HTTP root redirection in some cases (trailing slash with a proxy) [#4167](https://togithub.com/FreshRSS/FreshRSS/pull/4167)
- Fix `htmlspecialchars()` warnings with PHP 8.1+ [#4411](https://togithub.com/FreshRSS/FreshRSS/pull/4411)
- Fix OPML category encoding [#4427](https://togithub.com/FreshRSS/FreshRSS/pull/4427)
- Fix one category of favicon update problem [#4358](https://togithub.com/FreshRSS/FreshRSS/pull/4358)
- Fix rare mark-as-read bug [#4456](https://togithub.com/FreshRSS/FreshRSS/pull/4456)
- Add missing extension hook `freshrss_user_maintenance` in CLI [#4495](https://togithub.com/FreshRSS/FreshRSS/pull/4495)
- Rename conflicting function `errorMessage()` which exists on some platforms [#4289](https://togithub.com/FreshRSS/FreshRSS/pull/4289)
- Fix remain of bookmarklet [#4240](https://togithub.com/FreshRSS/FreshRSS/pull/4240)
- UI
- Performance: Automatic simplification of layout for 1000+ feeds [#4357](https://togithub.com/FreshRSS/FreshRSS/pull/4357)
- Performance: New option *icons-as-emojis* [#4353](https://togithub.com/FreshRSS/FreshRSS/pull/4353)
- Manage feed configuration using a dynamic slider view [#4226](https://togithub.com/FreshRSS/FreshRSS/pull/4226), [#4297](https://togithub.com/FreshRSS/FreshRSS/pull/4297), [#4394](https://togithub.com/FreshRSS/FreshRSS/pull/4394)
- New option for custom HTML logo/title in the main Web UI view [#4369](https://togithub.com/FreshRSS/FreshRSS/pull/4369)
- Show errored, empty, muted feeds in statistics [#4276](https://togithub.com/FreshRSS/FreshRSS/pull/4276)
- Improve configuration of registration form [#3932](https://togithub.com/FreshRSS/FreshRSS/pull/3932)
- Improve subscription list drag & drop [#3953](https://togithub.com/FreshRSS/FreshRSS/pull/3953)
- Improve extension manager [#4181](https://togithub.com/FreshRSS/FreshRSS/pull/4181)
- Improve idle feeds list [#4192](https://togithub.com/FreshRSS/FreshRSS/pull/4192)
- Improve feed link in normal view [#4006](https://togithub.com/FreshRSS/FreshRSS/pull/4006)
- Improve browser notification for unread message [#4193](https://togithub.com/FreshRSS/FreshRSS/pull/4193)
- Improve notification banner [#4023](https://togithub.com/FreshRSS/FreshRSS/pull/4023)
- Improve new article banner [#4037](https://togithub.com/FreshRSS/FreshRSS/pull/4037)
- Improve pagination + *load more* button [#4125](https://togithub.com/FreshRSS/FreshRSS/pull/4125)
- Improve log view [#4204](https://togithub.com/FreshRSS/FreshRSS/pull/4204)
- Improve unread articles counter in normal view [#4166](https://togithub.com/FreshRSS/FreshRSS/pull/4166)
- Automatically set the category when adding a feed from an existing category [#4333](https://togithub.com/FreshRSS/FreshRSS/pull/4333)
- Better PWA colours for mobile [#4254](https://togithub.com/FreshRSS/FreshRSS/pull/4254)
- Improve article footer [#4306](https://togithub.com/FreshRSS/FreshRSS/pull/4306)
- Various UI and style improvements [#4205](https://togithub.com/FreshRSS/FreshRSS/pull/4205), [#4212](https://togithub.com/FreshRSS/FreshRSS/pull/4212), [#4218](https://togithub.com/FreshRSS/FreshRSS/pull/4218),
[#4238](https://togithub.com/FreshRSS/FreshRSS/pull/4238), [#4455](https://togithub.com/FreshRSS/FreshRSS/pull/4455), [#4298](https://togithub.com/FreshRSS/FreshRSS/pull/4298),
[#4383](https://togithub.com/FreshRSS/FreshRSS/pull/4383), [#4452](https://togithub.com/FreshRSS/FreshRSS/pull/4452), [#4455](https://togithub.com/FreshRSS/FreshRSS/pull/4455),
[#4466](https://togithub.com/FreshRSS/FreshRSS/pull/4466), [#4471](https://togithub.com/FreshRSS/FreshRSS/pull/4471), [#4472](https://togithub.com/FreshRSS/FreshRSS/pull/4472),
[#4474](https://togithub.com/FreshRSS/FreshRSS/pull/4474), [#4498](https://togithub.com/FreshRSS/FreshRSS/pull/4498), [#4502](https://togithub.com/FreshRSS/FreshRSS/pull/4502),
[#4504](https://togithub.com/FreshRSS/FreshRSS/pull/4504), [#4558](https://togithub.com/FreshRSS/FreshRSS/pull/4558), [#4546](https://togithub.com/FreshRSS/FreshRSS/pull/4546),
[#4541](https://togithub.com/FreshRSS/FreshRSS/pull/4541)
- Themes
- New theme *Dark pink* [#4311](https://togithub.com/FreshRSS/FreshRSS/pull/4311)
- New theme *Nord* [#4400](https://togithub.com/FreshRSS/FreshRSS/pull/4400)
- Improve themes *Alternative Dark* [#4587](https://togithub.com/FreshRSS/FreshRSS/pull/4587);
*Ansum* [#4538](https://togithub.com/FreshRSS/FreshRSS/pull/4538), [#4549](https://togithub.com/FreshRSS/FreshRSS/pull/4549);
*Flat* [#4575](https://togithub.com/FreshRSS/FreshRSS/pull/4575);
*Mapco* [#4491](https://togithub.com/FreshRSS/FreshRSS/pull/4491), [#4491](https://togithub.com/FreshRSS/FreshRSS/pull/4491);
*Swage* [#4493](https://togithub.com/FreshRSS/FreshRSS/pull/4493), [#4512](https://togithub.com/FreshRSS/FreshRSS/pull/4512), [#4566](https://togithub.com/FreshRSS/FreshRSS/pull/4566)
- Extensions
- Allow extensions using `entry_before_insert` to change `entry->isRead()` [#4331](https://togithub.com/FreshRSS/FreshRSS/pull/4331)
- i18n
- Improve i18n CLI [#4197](https://togithub.com/FreshRSS/FreshRSS/pull/4197), [#4199](https://togithub.com/FreshRSS/FreshRSS/pull/4199)
- Add Chinese (Traditional) [#4578](https://togithub.com/FreshRSS/FreshRSS/pull/4578)
- Improve Chinese (Simplified) [#4332](https://togithub.com/FreshRSS/FreshRSS/pull/4332), [#4337](https://togithub.com/FreshRSS/FreshRSS/pull/4337), [#4379](https://togithub.com/FreshRSS/FreshRSS/pull/4379),
[#4509](https://togithub.com/FreshRSS/FreshRSS/pull/4509), [#4577](https://togithub.com/FreshRSS/FreshRSS/pull/4577)
- Improve English [#4450](https://togithub.com/FreshRSS/FreshRSS/pull/4450)
- Improve German [#4525](https://togithub.com/FreshRSS/FreshRSS/pull/4525)
- Improve Korean [#4572](https://togithub.com/FreshRSS/FreshRSS/pull/4572)
- Improve Occitan [#4548](https://togithub.com/FreshRSS/FreshRSS/pull/4548)
- Improve Polish [#4363](https://togithub.com/FreshRSS/FreshRSS/pull/4363)
- Improve Russian [#4385](https://togithub.com/FreshRSS/FreshRSS/pull/4385)
- Improve Slovak [#4524](https://togithub.com/FreshRSS/FreshRSS/pull/4524)
- API
- Restrict maximum length of item content length for clients compatibility [#4583](https://togithub.com/FreshRSS/FreshRSS/pull/4583)
- Supported by [Fluent Reader Lite](https://hyliu.me/fluent-reader-lite/) [#4595](https://togithub.com/FreshRSS/FreshRSS/pull/4595)
- Deployment
- Docker: Performance: entrypoint fix buffering, problematic when importing large OPMLs during install [#4417](https://togithub.com/FreshRSS/FreshRSS/pull/4417)
- Docker default image (Debian 11 Bullseye) updated to PHP 7.4.30 and Apache 2.4.54
- Docker: alternative image updated to Alpine 3.16 with PHP 8.0.22 and Apache 2.4.54 [#4391](https://togithub.com/FreshRSS/FreshRSS/pull/4391)
- Add PHP extensions `php-openssl` (used by PHPMailer) and `php-xml` (used by SimplePie) [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420)
- Docker: Upgraded dev image `freshrss/freshrss:newest` to PHP 8.2 [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420)
- Include PHP extensions in Composer for easier automated deployment [#4497](https://togithub.com/FreshRSS/FreshRSS/pull/4497)
- Improved trimming of `base_url` to avoid some common configuration bugs, especially via Docker / CLI [#4423](https://togithub.com/FreshRSS/FreshRSS/pull/4423)
- CLI
- Allow empty DB prefix [#4488](https://togithub.com/FreshRSS/FreshRSS/pull/4488)
- Compatibility
- Initial support for PHP 8.2+ [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420), [#4421](https://togithub.com/FreshRSS/FreshRSS/pull/4421)
- Security
- Improved error page, properly returning HTTP 500 and CSP [#4465](https://togithub.com/FreshRSS/FreshRSS/pull/4465)
- Misc.
- Replace `lib_phpQuery` by [`PhpGt/CssXPath`](https://togithub.com/PhpGt/CssXPath) library for full content retrieval [#4261](https://togithub.com/FreshRSS/FreshRSS/pull/4261)
- Add support for star CSS Selectors such as `a[href*="example"]` [CssXPath#181](https://togithub.com/PhpGt/CssXPath/pull/181)
- Performance: Do not render irrelevant HTML for Ajax calls [#4310](https://togithub.com/FreshRSS/FreshRSS/pull/4310), [#4366](https://togithub.com/FreshRSS/FreshRSS/pull/4366)
- Performance: New limit option when reloading a feed [#4370](https://togithub.com/FreshRSS/FreshRSS/pull/4370)
- Optional possibility to use Composer to update some libraries [#4329](https://togithub.com/FreshRSS/FreshRSS/pull/4329), [#4368](https://togithub.com/FreshRSS/FreshRSS/pull/4368)
- Update to PHPMailer 6.6.0 [#4329](https://togithub.com/FreshRSS/FreshRSS/pull/4329)
- Use `.gitattributes` `export-ignore` [#4415](https://togithub.com/FreshRSS/FreshRSS/pull/4415)
- Remove HTTP Referer for HTML download [#4372](https://togithub.com/FreshRSS/FreshRSS/pull/4372)
- Add database field `attributes` (JSON) for entries [#4444](https://togithub.com/FreshRSS/FreshRSS/pull/4444)
- Improve dev automated checks [#4209](https://togithub.com/FreshRSS/FreshRSS/pull/4209)
- Update dev dependencies [#4173](https://togithub.com/FreshRSS/FreshRSS/pull/4173), [#4203](https://togithub.com/FreshRSS/FreshRSS/pull/4203), [#4241](https://togithub.com/FreshRSS/FreshRSS/pull/4241),
[#4419](https://togithub.com/FreshRSS/FreshRSS/pull/4419), [#4424](https://togithub.com/FreshRSS/FreshRSS/pull/4424)
- Fix extension list warning when offline[#4571](https://togithub.com/FreshRSS/FreshRSS/pull/4571)
- Code improvements [#4130](https://togithub.com/FreshRSS/FreshRSS/pull/4130), [#4194](https://togithub.com/FreshRSS/FreshRSS/pull/4194), [#4201](https://togithub.com/FreshRSS/FreshRSS/pull/4201),
[#4202](https://togithub.com/FreshRSS/FreshRSS/pull/4202), [#4258](https://togithub.com/FreshRSS/FreshRSS/pull/4258), [#4263](https://togithub.com/FreshRSS/FreshRSS/pull/4263),
[#4356](https://togithub.com/FreshRSS/FreshRSS/pull/4356), [#4436](https://togithub.com/FreshRSS/FreshRSS/pull/4436), [#4489](https://togithub.com/FreshRSS/FreshRSS/pull/4489),
[#4490](https://togithub.com/FreshRSS/FreshRSS/pull/4490), [#4496](https://togithub.com/FreshRSS/FreshRSS/pull/4496)
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
1.19.2
->1.20.0
Release Notes
FreshRSS/FreshRSS
### [`v1.20.0`](https://togithub.com/FreshRSS/FreshRSS/blob/HEAD/CHANGELOG.md#2022-09-10-FreshRSS-1200) [Compare Source](https://togithub.com/FreshRSS/FreshRSS/compare/1.19.2...1.20.0) - Features - New Web scraping feature *HTML+XPath* for Web pages without any RSS/ATOM feed [#4220](https://togithub.com/FreshRSS/FreshRSS/pull/4220) - Add support for *Dynamic OPML* [#4407](https://togithub.com/FreshRSS/FreshRSS/pull/4407) - Subscriber: Ability for a category to be dynamically populated with a list of feeds provided by a remote OPML - Publisher: Ability to dynamically export a FreshRSS view (all, feed, category) into a dynamic OPML - New search engine supporting (nested) parentheses [#4378](https://togithub.com/FreshRSS/FreshRSS/pull/4378), [#4503](https://togithub.com/FreshRSS/FreshRSS/pull/4503) - `(author:Alice OR intitle:hello) (author:Bob OR intitle:world)` - also with negation: `!((author:Alice intitle:hello) OR (author:Bob intitle:world))` - and supporting calling user queries from the search field by name: `search:"My query"` or `search:QueryA`, or by ID: `S:3` - Allow many (50k+) feeds [#4347](https://togithub.com/FreshRSS/FreshRSS/pull/4347) - Note: only for new users or after an export/import or a manual database update - See also [#4357](https://togithub.com/FreshRSS/FreshRSS/pull/4357), [#4353](https://togithub.com/FreshRSS/FreshRSS/pull/4353), [#4417](https://togithub.com/FreshRSS/FreshRSS/pull/4417), [#4502](https://togithub.com/FreshRSS/FreshRSS/pull/4502) - New option to exclude some DOM elements with a CSS Selector when retrieving an article full content [#4501](https://togithub.com/FreshRSS/FreshRSS/pull/4501) - New option to automatically mark as read gone articles [#4426](https://togithub.com/FreshRSS/FreshRSS/pull/4426) - New OPML export/import of some proprietary FreshRSS attributes [#4342](https://togithub.com/FreshRSS/FreshRSS/pull/4342) - Tolerate the import of some invalid OPML files [#4591](https://togithub.com/FreshRSS/FreshRSS/pull/4591) - New feed settings to allow cookies and HTTP redirects [#4470](https://togithub.com/FreshRSS/FreshRSS/pull/4470) - Performance: Easier [text search indexes](https://freshrss.github.io/FreshRSS/en/admins/DatabaseConfig.html) for fast searches with PostgreSQL [#4505](https://togithub.com/FreshRSS/FreshRSS/pull/4505) - The indexes must be manually added for now. Using GIN `pg_trgm` - Easier definition of default user queries for new users in `data/config-user.custom.php` [#4360](https://togithub.com/FreshRSS/FreshRSS/pull/4360) - New sharing through standard [Web Share API](https://www.w3.org/TR/web-share/) [#4271](https://togithub.com/FreshRSS/FreshRSS/pull/4271) - New sharing with Xing, Reddit, Pinterest, WhatsApp [#4270](https://togithub.com/FreshRSS/FreshRSS/pull/4270) - New sharing with [`archive.today`](https://archive.ph/) [#4530](https://togithub.com/FreshRSS/FreshRSS/pull/4530) - SimplePie - New method `rename_attribute()` instead of removing attributes to better be able to style/hide content of articles [#4175](https://togithub.com/FreshRSS/FreshRSS/pull/4175), [simplepie#717](https://togithub.com/simplepie/simplepie/pull/717) - Fix parsing of HTTP Links [simplepie#729](https://togithub.com/simplepie/simplepie/pull/729) - Fix `status_code` type for PHP 8.1+ [simplepie#728](https://togithub.com/simplepie/simplepie/pull/728) - Fix relative URLs [simplepie#744](https://togithub.com/simplepie/simplepie/pull/744) - Bug fixing - Fix last update & archive logic (especially for very long feeds, for which some old items were marked as unread) [#4422](https://togithub.com/FreshRSS/FreshRSS/pull/4422) - Fix regression with Fever API on 32-bit platforms [#4201](https://togithub.com/FreshRSS/FreshRSS/pull/4201) - Fix read-when-same-title bug [#4206](https://togithub.com/FreshRSS/FreshRSS/pull/4206) - Fix some search expressions such as `"ab cd"` and `ab-cd` [#4277](https://togithub.com/FreshRSS/FreshRSS/pull/4277) - Fix auto-load of more articles when using shortcuts [#4532](https://togithub.com/FreshRSS/FreshRSS/pull/4532) - Fix space shortcut [#4581](https://togithub.com/FreshRSS/FreshRSS/pull/4581) - WebSub: Use hash instead of base64 to handle long URLs [#4282](https://togithub.com/FreshRSS/FreshRSS/pull/4282) - Fix handling of authors with ampersand `&` [#4287](https://togithub.com/FreshRSS/FreshRSS/pull/4287) - Fix lazy loading images containing a quote `'` in the address [#4330](https://togithub.com/FreshRSS/FreshRSS/pull/4330) - Fix database size calculation for PostgreSQL [#4249](https://togithub.com/FreshRSS/FreshRSS/pull/4249) - Fix HTTP root redirection in some cases (trailing slash with a proxy) [#4167](https://togithub.com/FreshRSS/FreshRSS/pull/4167) - Fix `htmlspecialchars()` warnings with PHP 8.1+ [#4411](https://togithub.com/FreshRSS/FreshRSS/pull/4411) - Fix OPML category encoding [#4427](https://togithub.com/FreshRSS/FreshRSS/pull/4427) - Fix one category of favicon update problem [#4358](https://togithub.com/FreshRSS/FreshRSS/pull/4358) - Fix rare mark-as-read bug [#4456](https://togithub.com/FreshRSS/FreshRSS/pull/4456) - Add missing extension hook `freshrss_user_maintenance` in CLI [#4495](https://togithub.com/FreshRSS/FreshRSS/pull/4495) - Rename conflicting function `errorMessage()` which exists on some platforms [#4289](https://togithub.com/FreshRSS/FreshRSS/pull/4289) - Fix remain of bookmarklet [#4240](https://togithub.com/FreshRSS/FreshRSS/pull/4240) - UI - Performance: Automatic simplification of layout for 1000+ feeds [#4357](https://togithub.com/FreshRSS/FreshRSS/pull/4357) - Performance: New option *icons-as-emojis* [#4353](https://togithub.com/FreshRSS/FreshRSS/pull/4353) - Manage feed configuration using a dynamic slider view [#4226](https://togithub.com/FreshRSS/FreshRSS/pull/4226), [#4297](https://togithub.com/FreshRSS/FreshRSS/pull/4297), [#4394](https://togithub.com/FreshRSS/FreshRSS/pull/4394) - New option for custom HTML logo/title in the main Web UI view [#4369](https://togithub.com/FreshRSS/FreshRSS/pull/4369) - Show errored, empty, muted feeds in statistics [#4276](https://togithub.com/FreshRSS/FreshRSS/pull/4276) - Improve configuration of registration form [#3932](https://togithub.com/FreshRSS/FreshRSS/pull/3932) - Improve subscription list drag & drop [#3953](https://togithub.com/FreshRSS/FreshRSS/pull/3953) - Improve extension manager [#4181](https://togithub.com/FreshRSS/FreshRSS/pull/4181) - Improve idle feeds list [#4192](https://togithub.com/FreshRSS/FreshRSS/pull/4192) - Improve feed link in normal view [#4006](https://togithub.com/FreshRSS/FreshRSS/pull/4006) - Improve browser notification for unread message [#4193](https://togithub.com/FreshRSS/FreshRSS/pull/4193) - Improve notification banner [#4023](https://togithub.com/FreshRSS/FreshRSS/pull/4023) - Improve new article banner [#4037](https://togithub.com/FreshRSS/FreshRSS/pull/4037) - Improve pagination + *load more* button [#4125](https://togithub.com/FreshRSS/FreshRSS/pull/4125) - Improve log view [#4204](https://togithub.com/FreshRSS/FreshRSS/pull/4204) - Improve unread articles counter in normal view [#4166](https://togithub.com/FreshRSS/FreshRSS/pull/4166) - Automatically set the category when adding a feed from an existing category [#4333](https://togithub.com/FreshRSS/FreshRSS/pull/4333) - Better PWA colours for mobile [#4254](https://togithub.com/FreshRSS/FreshRSS/pull/4254) - Improve article footer [#4306](https://togithub.com/FreshRSS/FreshRSS/pull/4306) - Various UI and style improvements [#4205](https://togithub.com/FreshRSS/FreshRSS/pull/4205), [#4212](https://togithub.com/FreshRSS/FreshRSS/pull/4212), [#4218](https://togithub.com/FreshRSS/FreshRSS/pull/4218), [#4238](https://togithub.com/FreshRSS/FreshRSS/pull/4238), [#4455](https://togithub.com/FreshRSS/FreshRSS/pull/4455), [#4298](https://togithub.com/FreshRSS/FreshRSS/pull/4298), [#4383](https://togithub.com/FreshRSS/FreshRSS/pull/4383), [#4452](https://togithub.com/FreshRSS/FreshRSS/pull/4452), [#4455](https://togithub.com/FreshRSS/FreshRSS/pull/4455), [#4466](https://togithub.com/FreshRSS/FreshRSS/pull/4466), [#4471](https://togithub.com/FreshRSS/FreshRSS/pull/4471), [#4472](https://togithub.com/FreshRSS/FreshRSS/pull/4472), [#4474](https://togithub.com/FreshRSS/FreshRSS/pull/4474), [#4498](https://togithub.com/FreshRSS/FreshRSS/pull/4498), [#4502](https://togithub.com/FreshRSS/FreshRSS/pull/4502), [#4504](https://togithub.com/FreshRSS/FreshRSS/pull/4504), [#4558](https://togithub.com/FreshRSS/FreshRSS/pull/4558), [#4546](https://togithub.com/FreshRSS/FreshRSS/pull/4546), [#4541](https://togithub.com/FreshRSS/FreshRSS/pull/4541) - Themes - New theme *Dark pink* [#4311](https://togithub.com/FreshRSS/FreshRSS/pull/4311) - New theme *Nord* [#4400](https://togithub.com/FreshRSS/FreshRSS/pull/4400) - Improve themes *Alternative Dark* [#4587](https://togithub.com/FreshRSS/FreshRSS/pull/4587); *Ansum* [#4538](https://togithub.com/FreshRSS/FreshRSS/pull/4538), [#4549](https://togithub.com/FreshRSS/FreshRSS/pull/4549); *Flat* [#4575](https://togithub.com/FreshRSS/FreshRSS/pull/4575); *Mapco* [#4491](https://togithub.com/FreshRSS/FreshRSS/pull/4491), [#4491](https://togithub.com/FreshRSS/FreshRSS/pull/4491); *Swage* [#4493](https://togithub.com/FreshRSS/FreshRSS/pull/4493), [#4512](https://togithub.com/FreshRSS/FreshRSS/pull/4512), [#4566](https://togithub.com/FreshRSS/FreshRSS/pull/4566) - Extensions - Allow extensions using `entry_before_insert` to change `entry->isRead()` [#4331](https://togithub.com/FreshRSS/FreshRSS/pull/4331) - i18n - Improve i18n CLI [#4197](https://togithub.com/FreshRSS/FreshRSS/pull/4197), [#4199](https://togithub.com/FreshRSS/FreshRSS/pull/4199) - Add Chinese (Traditional) [#4578](https://togithub.com/FreshRSS/FreshRSS/pull/4578) - Improve Chinese (Simplified) [#4332](https://togithub.com/FreshRSS/FreshRSS/pull/4332), [#4337](https://togithub.com/FreshRSS/FreshRSS/pull/4337), [#4379](https://togithub.com/FreshRSS/FreshRSS/pull/4379), [#4509](https://togithub.com/FreshRSS/FreshRSS/pull/4509), [#4577](https://togithub.com/FreshRSS/FreshRSS/pull/4577) - Improve English [#4450](https://togithub.com/FreshRSS/FreshRSS/pull/4450) - Improve German [#4525](https://togithub.com/FreshRSS/FreshRSS/pull/4525) - Improve Korean [#4572](https://togithub.com/FreshRSS/FreshRSS/pull/4572) - Improve Occitan [#4548](https://togithub.com/FreshRSS/FreshRSS/pull/4548) - Improve Polish [#4363](https://togithub.com/FreshRSS/FreshRSS/pull/4363) - Improve Russian [#4385](https://togithub.com/FreshRSS/FreshRSS/pull/4385) - Improve Slovak [#4524](https://togithub.com/FreshRSS/FreshRSS/pull/4524) - API - Restrict maximum length of item content length for clients compatibility [#4583](https://togithub.com/FreshRSS/FreshRSS/pull/4583) - Supported by [Fluent Reader Lite](https://hyliu.me/fluent-reader-lite/) [#4595](https://togithub.com/FreshRSS/FreshRSS/pull/4595) - Deployment - Docker: Performance: entrypoint fix buffering, problematic when importing large OPMLs during install [#4417](https://togithub.com/FreshRSS/FreshRSS/pull/4417) - Docker default image (Debian 11 Bullseye) updated to PHP 7.4.30 and Apache 2.4.54 - Docker: alternative image updated to Alpine 3.16 with PHP 8.0.22 and Apache 2.4.54 [#4391](https://togithub.com/FreshRSS/FreshRSS/pull/4391) - Add PHP extensions `php-openssl` (used by PHPMailer) and `php-xml` (used by SimplePie) [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420) - Docker: Upgraded dev image `freshrss/freshrss:newest` to PHP 8.2 [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420) - Include PHP extensions in Composer for easier automated deployment [#4497](https://togithub.com/FreshRSS/FreshRSS/pull/4497) - Improved trimming of `base_url` to avoid some common configuration bugs, especially via Docker / CLI [#4423](https://togithub.com/FreshRSS/FreshRSS/pull/4423) - CLI - Allow empty DB prefix [#4488](https://togithub.com/FreshRSS/FreshRSS/pull/4488) - Compatibility - Initial support for PHP 8.2+ [#4420](https://togithub.com/FreshRSS/FreshRSS/pull/4420), [#4421](https://togithub.com/FreshRSS/FreshRSS/pull/4421) - Security - Improved error page, properly returning HTTP 500 and CSP [#4465](https://togithub.com/FreshRSS/FreshRSS/pull/4465) - Misc. - Replace `lib_phpQuery` by [`PhpGt/CssXPath`](https://togithub.com/PhpGt/CssXPath) library for full content retrieval [#4261](https://togithub.com/FreshRSS/FreshRSS/pull/4261) - Add support for star CSS Selectors such as `a[href*="example"]` [CssXPath#181](https://togithub.com/PhpGt/CssXPath/pull/181) - Performance: Do not render irrelevant HTML for Ajax calls [#4310](https://togithub.com/FreshRSS/FreshRSS/pull/4310), [#4366](https://togithub.com/FreshRSS/FreshRSS/pull/4366) - Performance: New limit option when reloading a feed [#4370](https://togithub.com/FreshRSS/FreshRSS/pull/4370) - Optional possibility to use Composer to update some libraries [#4329](https://togithub.com/FreshRSS/FreshRSS/pull/4329), [#4368](https://togithub.com/FreshRSS/FreshRSS/pull/4368) - Update to PHPMailer 6.6.0 [#4329](https://togithub.com/FreshRSS/FreshRSS/pull/4329) - Use `.gitattributes` `export-ignore` [#4415](https://togithub.com/FreshRSS/FreshRSS/pull/4415) - Remove HTTP Referer for HTML download [#4372](https://togithub.com/FreshRSS/FreshRSS/pull/4372) - Add database field `attributes` (JSON) for entries [#4444](https://togithub.com/FreshRSS/FreshRSS/pull/4444) - Improve dev automated checks [#4209](https://togithub.com/FreshRSS/FreshRSS/pull/4209) - Update dev dependencies [#4173](https://togithub.com/FreshRSS/FreshRSS/pull/4173), [#4203](https://togithub.com/FreshRSS/FreshRSS/pull/4203), [#4241](https://togithub.com/FreshRSS/FreshRSS/pull/4241), [#4419](https://togithub.com/FreshRSS/FreshRSS/pull/4419), [#4424](https://togithub.com/FreshRSS/FreshRSS/pull/4424) - Fix extension list warning when offline[#4571](https://togithub.com/FreshRSS/FreshRSS/pull/4571) - Code improvements [#4130](https://togithub.com/FreshRSS/FreshRSS/pull/4130), [#4194](https://togithub.com/FreshRSS/FreshRSS/pull/4194), [#4201](https://togithub.com/FreshRSS/FreshRSS/pull/4201), [#4202](https://togithub.com/FreshRSS/FreshRSS/pull/4202), [#4258](https://togithub.com/FreshRSS/FreshRSS/pull/4258), [#4263](https://togithub.com/FreshRSS/FreshRSS/pull/4263), [#4356](https://togithub.com/FreshRSS/FreshRSS/pull/4356), [#4436](https://togithub.com/FreshRSS/FreshRSS/pull/4436), [#4489](https://togithub.com/FreshRSS/FreshRSS/pull/4489), [#4490](https://togithub.com/FreshRSS/FreshRSS/pull/4490), [#4496](https://togithub.com/FreshRSS/FreshRSS/pull/4496)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.