FreshRSS 1.29.0
This is a major release.
Feature highlightsβ¨:
- New sort order preferences at global, category, and feed levels
- Use feed-provided icon
- New option to hide sidebar by default
- Show time since when a feed has problems
- New functions to handle plural in internationalisation
- New
cli/purge.phpto apply purge policy from command line
Bug fixes highlights π:
- Improve support of PHP 8.5+
- Several fixes related to searches
Security highlights π‘:
- Limit cURL to protocols HTTP, HTTPS
UI highlights πΌ:
- Improve mobile view with multiple lines when thumbnails and summaries are shown
- Several themes improved
Extensions highlights π§©:
- New Webhook extension for automated RSS notifications
- New LLM Classification extension to automatically tag incoming articles based on a prompt sent to an LLM
This release has been made by @Alkarex, @Inverle, @Kiblyn11, @math-GH, @rupakbajgain, @xtmd and newcomers @polybjorn, @olivluca, @tomasodehnal, @PeterVavercak, @mrtnrdl, @ale-rt, @cweiske, @rid3r45, @gabbihive, @drosell271, @Kachelkaiser, @zanivann, @nanos, @bowencool, @pe1uca, @matheusroberson, @DenuxPlays, @rlrs, @chanse-syres, @IEEE-754, @umaidshahid, @michi-onl
Full changelog:
- Features
- New sort order preferences at global, category, and feed levels #8234
- New filtering by date of Server modification date #8131, #8576
- Corresponding search operator, e.g.
mdate:P1Dfor finding articles modified by the author / server during the past day. - Especially useful for optimising the API synchronisation.
- Corresponding search operator, e.g.
- Use feed-provided icon #8633
- New option to automatically mark new articles as read if an identical GUID already exists in the same category #8673
- Automatic feed visibility/priority during search #8609
- Add feed visibility filter to statistics view unread dates #8489
- Add option to enable/disable notifications, also for PWA #8458
- Add a form to create new user queries on the User Queries page #8623
- Allow WebSub hub push from same private network #8450
- Support category field in JSON feed import #8786
- Bug fixing
- Fix wrong search
toStringin case of regex-looking string #8479 - Fix article last seen date in case of feed errors #8646
- Fix search expansion with backslash #8497
- Fix user query parsing #8543
- Fix search in shared user queries #8789
- Fix redirect to wrong view after mark as read in reader and global views #8552
- Fix SQLite paging when sorting by article length #8594
- Fix change sorting during paging #8688
- Fix SQL keyset pagination when sorting by category name #8597
- Fix SQL duplicates in the user labels when sorting randomly #8626
- Fix wrong error redirect in subscription management #8625
- Fix do not include hidden feeds when counting total number of unread articles #8715
- Update user modify date when changing extensions UserJS / UserCSS #8607
- Non-strict OPML export #eedefb
- Fix wrong search
- Security
- Limit cURL to protocols HTTP, HTTPS #8713
- Better sanitise favicon URLs #8714
- New setting for
<iframe>referrer allow list #8672 - Fix email validation and allow error page for unverified email users #8582
- Add
allowfullscreento<iframe>#8467 - Rewrite
Set-Cookieusing native PHP support ofSameSite#8447, #8778- Sanitize lifetime of session cookies from
session.cookie-lifetimeinphp.ini
- Sanitize lifetime of session cookies from
- Update to
<meta name="referrer" content="no-referrer" />from deprecatednever#8725 - Preventive measure against search ingestion #8777
- UI
- New option to hide sidebar by default #8528
- Improve mobile view with multiple lines when thumbnails and summaries are shown #8631
- New option to disable unread counter in tab title and favicon #8728
- Show time since when a feed has problems #8670
- Improve add feed UI #8683
- Improve slider behaviour when using navigate back button #8496, #8524
- Improve consistency of slider behaviour after submitting form #8612
- Create dynamic favicons from SVG instead of PNG canvas #8577, #8588
- Only display scrollbar everywhere if there's an overflow (especially for Chromium) #8542
- Fix CSS padding of
.content pre code#8620 - Fix wrong navigation buttons layout on Chromium #8606
- Fix donβt mark as read if middle click is outside of article link #8553
- More robust JS #8595
- Fix sidebar slide animation at narrow viewports #8747
- Visually dim disabled users in user management table #8768
- Improve multiple UI themes #8711, #8732,
#8733, #8734, #8735,
#8736, #8737, #8738,
#8739, #8743, #8746,
#8749, #8761, #8781,
#8784, #8785 - Various UI and style improvements: #8537, #8538,
#8541, #8624, #8731,
#8774
- Deployment
- Extensions
- New Webhook extension for automated RSS notifications Extensions#456
- New LLM Classification extension to automatically tag incoming articles based on a prompt sent to an LLM Extensions#458
- New extension methods to get typed configuration values #8696
- New hook:
Minz_HookType::ActionExecute#8599, #8603 - New hook to modify the list of feeds to actualize #8655, #8675
- Allow passing
Minz_HookTypeas hook name inregisterHook()#8600 - Return more info and status from
httpGet()#8700 - Make
httpGet()cache nullable #8705 - Allow extensionsβ configuration UI to use
select-input-changerJavaScript helper #8721
- SimplePie
- Bump upstream #8628, simplepie#71
- New function
get_icon_url()for feed favicon simplepie#974 - Fix Undefined array key in
get_thumbnail()#8634, simplepie#970 - Fix int types for enclosures #8702, simplepie#975
- Fix HTTPS headers given to SimplePie, e.g. for some HTTP/2 cases #8742
- CLI
- New
cli/purge.phpto apply purge policy #8740
- New
- I18n
- CLI validate language directory names #8767
- New functions to handle plural, and new
timeago()#8670 - Improve German #8491, #8557, #8689,
#8704 - Improve Italian #8517, #8519, #8554,
#8555, #8556, #8566 - Improve Latvian #6553
- Improve Polish #8536
- Improve Portuguese #8649
- Improve Simplified Chinese #8474, #8475, #8476
- Improve Traditional Chinese #8709, #8716, #8723,
#8730, #8748 - Improve Spanish #8572
- Misc.
- Initial conventions for AI agents and humans:
AGENTS.md,SKILLS.md,instructions.md#8478 - Update to CSSXPath 1.5.0 #8642
- Update to PHPMailer 7.0.2 #8483
- SQL improve PHP syntax uniformity #8604
- Trim SQL whitespace before parenthesis #8522
- Improve PHP code #8627, #8644, #8753,
#8697 - Add dev legacy rules PHPCS 3 #8645
- Update dev dependencies #8469, #8480, #8499,
#8545, #8546, #8547,
#8617, #8638, #8660,
#8661, #8662, #8663,
#8664, #8665, #8666,
#8667, #8668, #8685,
#8752, #8754, #8755,
#8756, #8757, #8758,
#8772, #8798
- Initial conventions for AI agents and humans: