普通视图

发现新文章,点击刷新页面。
昨天以前FreshRSS releases

FreshRSS 1.28.1

作者 Alkarex
2026年1月26日 02:20

This is a release focussing on bug fixing, in particular regressions from the release 1.28.0.

Selected new features ✨:

  • New customisable message for closed registrations
  • Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy

Improved performance 🏎️:

  • Disable counting articles in user labels for Ajax requests (unused)

Many bug fixes 🐛

This release has been made by @Alkarex, @Frenzie, @Inverle and newcomers @ciro-mota, @eveiscoull, @hackerman70000, @Hufschmidt, @johan456789, @martgnz, @mmeier86, @netsho, @neuhaus, @RobLoach, @rupakbajgain.

Full changelog:

  • Features
    • Handle Web scraping of text/plain as <pre class="text-plain"> #8340
    • New customisable message for closed registrations #8462
  • Bug fixing
    • Fix unwanted expansion of user queries (saved searches) applied to filters #8395
    • Fix encoding of filter actions for labels #8368
    • Fix searching of tags #8425
    • Fix refreshing feeds with token while anonymous refresh is disabled #8371
    • Fix RSS and OPML access by token #8434
    • Fix MySQL/MariaDB transliterator_transliterate fallback (when the php-intl extension is unavailable) #8427
    • Fix regression with MySQL/MariaDB index hint #8460
    • Auto-add lastUserModified database column also during mark-as-read action #8346
    • Do not include hidden feeds when counting unread articles in categories #8357
    • Remove wrong PHP deprecation of OPML export action #8399
    • Fix shortcut for next unread article #8466
    • Fix custom session.cookie-lifetime #8446
    • Fix feed validator button when changing the feed URL #8436
  • Performance
    • Disable counting articles in user labels for Ajax requests (unused) #8352
  • Security
    • Change Content-Disposition: inline to attachment in f.php #8344
    • Hardened user methods exists, mtime, ctime #26c1102
  • Deployment
    • Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy #8392
  • SimplePie
  • Extensions
    • Update .gitignore to ignore installed extensions #8372
  • UI
    • Add data-category="3" to ease custom CSS styling of articles #8397
    • Fix space between By: and the author’s name #8422
  • I18n
  • Misc.

FreshRSS 1.28.0

作者 Alkarex
2025年12月25日 03:27

This is a major release, just in time for the holidays 🎄

Selected new features ✨:

  • New sorting and filtering by date of User modified, with corresponding search operator, e.g. userdate:PT1H for the past hour
  • New sorting by article length
  • New advanced search form
  • New overview of dates with most unread articles
  • New ability to share feed visibility through API (implemented by e.g. Capy Reader)
    • Bonus: Capy Reader is also the first open source Android app to support user labels
  • Better transitions UI between groups of articles
  • New links in UI for transitions between groups of articles, and jump to next transition
  • Docker default image updated to Debian 13 Trixie with PHP 8.4.11
  • And much more…

Improved performance 🏎️:

  • Scaling of user statistics in Web UI and CLI, to help instances with 1k+ users
  • Improve SQL speed for some critical requests for large databases
  • API performance optimisation thanks to streaming of large responses

Selected bug fixes 🐛:

  • Fix OpenID Connect with Debian 13
  • Fix MySQL / MariaDB bug wrongly sorting new articles
  • Fix SQLite bind bug when adding tag

Breaking changes 💥:

  • Move unsafe autologin to an extension
  • Potential breaking changes for some extensions (which have to rename some old functions)

This release has been made by @Alkarex, @Frenzie, @Inverle, @aledeg, @andris155, @horvi28, @math-GH, @minna-xD and newcomers @Darkentia, @FollowTheWizard, @GreyChame1eon, @McFev, @jocmp, @larsks, @martinhartmann, @matthew-neavling, @pudymody, @raspo, @scharmach, @scollovati, @stag-enterprises, @vandys, @xtmd, @yzx9.

Full changelog:

  • Features
    • New sorting and filtering by date of User modified #7886, #8090,
      #8105, #8118, #8130
      • Corresponding search operator, e.g. userdate:PT1H for the past hour #8093
      • Allows finding articles marked by the local user as read/unread or starred/unstarred at specific dates for e.g. undo action.
    • New sorting by article length #8119
    • New advanced search form #8103, #8122, #8226
    • Add compatibility with PCRE word boundary \b and \B for regex search using PostgreSQL #8141
    • More uniform SQL search and PHP search for accents and case-sensitivity (e.g. for automatically marking as read) #8329
    • New overview of dates with most unread articles #8089
    • Allow marking as read articles older than 1 or 7 days also when sorting by publication date #8163
    • New option to show user labels instead of tags in RSS share #8112
    • Add new feed visibility (priority) Show in its feed #7972
    • New ability to share feed visibility through API (implemented by e.g. Capy Reader) #7583, #8158
    • Configurable notification timeout #7942
    • OPML export/import of unicity criteria #8243
    • Ensure stable IDs (categories, feeds, labels) during export/import #7988
    • Add username and timestamp to SQLite export from Web UI #8169
    • Add option to apply filter actions to existing articles #7959, #8259
    • Support CSS selector ~ subsequent-sibling #8154
    • Rework saving of configuration files for more reliability in case of e.g. full disk #8220
    • Web scraping support date format as milliseconds for Unix epoch #8266
    • Allow negative category sort numbers #8330
  • Performance
    • Improve SQL speed for updating cached information #6957, #8207,
      #8255, #8254, #8255
    • Fix SQL performance issue with MySQL, using an index hint #8211
    • Scaling of user statistics in Web UI and CLI, to help instances with 1k+ users #8277
    • API streaming of large responses for reducing memory consumption and increasing speed #8041
  • Security
    • 💥 Move unsafe autologin to an extension #7958
    • Fix some CSRFs #8035
    • Strengthen some crypto (login, tokens, nonces) #8061, #8320
    • Create separate HTTP Retry-After rules for proxies #8029, #8218
    • Add data: to CSP in subscription controller #8253
    • Improve anonymous authentication logic #8165
    • Enable GitHub release immutability #8205
  • Bug fixing
    • Exclude local networks for domain-wide HTTP Retry-After #8195
    • Fix OpenID Connect with Debian 13 #8032
    • Fix MySQL / MariaDB bug wrongly sorting new articles #8223
    • Fix MySQL / MariaDB database size calculation #8282
    • Fix SQLite bind bug when adding tag #8101
    • Fix SQL auto-update of field f.kind to ease migrations from FreshRSS versions older than 1.20.0 #8148
    • Fix search encoding and quoting #8311, #8324, #8338
    • Fix handling of database unexpected null content (during migrations) #8319, #8321
    • Fix drag & drop of user query losing information #8113
    • Fix DOM error while filtering retrieved full content #8132, #8161
    • Fix config.custom.php during install #8033
    • Fix do not mark important feeds as read from category #8067
    • Fix regression of warnings in Web browser console due to lack of window.bcrypt object #8166
    • Fix chart resize regression due to chart.js v4 update #8298
    • Fix CLI user creation warning when language is not given #8283
    • Fix merging of custom HTTP headers #8251
    • Fix bug in the case of duplicated mark-as-read filters #8322
  • SimplePie
  • Deployment
    • Docker default image updated to Debian 13 Trixie with PHP 8.4.11 and Apache 2.4.65 #8032
    • Docker alternative image updated to Alpine 3.23 with PHP 8.4.15 and Apache 2.4.65 #8285
    • Fix Docker healthcheck cli/health.php compatibility with OpenID Connect #8040
    • Improve Docker for compatibility with other base images such as Arch Linux #8299
      • Improve cli/access-permissions.sh to detect the correct permission Web group such as www-data, apache, or http
    • Update PostgreSQL volume for Docker #8216, #8224
    • Catch lack of exec() function for git update #8228
    • Work around DOMDocument::saveHTML() scrambling charset encoding in some versions of libxml2 #8296
    • Improve configuration checks for PHP extensions (in Web UI and CLI), including recommending e.g. php-intl #8334
  • UI
    • New button for toggling sidebar on desktop view #8201, #8286
    • Better transitions between groups of articles #8174
    • New links in transitions and jump to next transition #8294
    • More visible selected article #8230
    • Show the parsed search query instead of the original user input #8293,
      #8306, #8341
    • Show search query in the page title #8217
    • Scroll into filtered feed/category on page load in the sidebar #8281, #8307
    • Fix autocomplete issues in change password form #7812
    • Fix navigating between read feeds using shortcut shift+j/k #8057
    • Dark background in Web app manifest to avoid white flash when opening #8140
    • Increase button visibility in UI to change theme #8149
    • Replace arrow navigation in theme switcher with <select> #8190
    • Improve scroll of article after load of user labels #7962
    • Keep scroll state of page when closing the slider #8295, #8301
    • Scroll into filtered feed/category on page load #8281
    • Display sidebar dropdowns above if no space below #8335, #8336
    • Use native CSS instead of SCSS #8200, #8241
    • Various UI and style improvements: #8171, #8185, #8196
    • JavaScript finalise migration from Promise to async/await: #8182
  • API
    • API performance optimisation: streaming of large responses #8041
    • Fever API: Add with_ids parameter to mass-change read/unread/saved/unsaved on lists of articles #8312
    • Misc API: better REST error semantics #8232
  • Extensions
    • Add support for extension priority #8038
    • Add support for extension compatibility #8081
    • Improve PHP code with hook enums #8036
    • New hook nav_entries #8054
    • Rename Extensions default branch from master to main #8194
  • I18n
    • Translation status as text in README #7842
    • Add new translate CLI commands move #8214
    • Change some regional language codes to comply with RFC 5646 / IETF BCP 47 / ISO 3166 / ISO 639-1 #8065
    • Improve German #8028
    • Improve Greek #8146
    • Improve Finnish #8073, #8092
    • Improve Hungarian #8244
    • Improve Italian #8115, #8186
    • Improve Polish #8134, #8135
    • Improve Russian #8155, #8197
    • Improve Simplified Chinese #8308, #8313
  • Misc.

FreshRSS 1.27.0

作者 Alkarex
2025年8月19日 00:03

A few highlights ✨:

  • Implement support for HTTP 429 Too Many Requests and 503 Service Unavailable, obey Retry-After
  • Add sort by category title, or by feed title
  • Add search operator c: for categories like c:23,34 or !c:45,56
  • Custom feed favicons
  • Several security improvements, such as:
    • Implement reauthentication (sudo mode)
    • Add Content-Security-Policy: frame-ancestors
    • Ensure CSP everywhere
    • Fix access rights when creating a new user
  • Several bug fixes, such as:
    • Fix redirections when scraping from HTML
    • Fix feed redirection when coming from WebSub
    • Fix support for XML feeds with HTML entities, or encoded in UTF-16LE
  • Docker alternative image updated to Alpine 3.22 with PHP 8.4 (PHP 8.4 for default Debian image coming soon)
  • Start supporting PHP 8.5+
  • And much more…

This release has been made by @Alkarex, @Inverle, @the7thNightmare and newcomers @Deioces120, @Fraetor, @Tarow, @dotsam, @hilariousperson, @pR0Ps, @triatic, @tryallthethings

Full changelog:

  • Features
    • Implement support for HTTP 429 Too Many Requests and 503 Service Unavailable, obey Retry-After #7760
    • Add sort by category title, or by feed title #7702
    • Add search operator c: for categories like c:23,34 or !c:45,56 #7696
    • Custom feed favicons #7646, #7704, #7717,
      #7792
    • Rework fetch favicons for fewer HTTP requests #7767
    • Add more unicity criteria based on title and/or content #7789
    • Automatically restore user configuration from backup #7682
    • API add support for states in s parameter of streamId #7695
    • Improve sharing via Print #7728
    • Redirect to the login page from bookmarklet instead of 403 #7782
    • Clean local cache more often, when refreshing feeds #7827
  • Security
    • Implement reauthentication (sudo mode) #7753
    • Add Content-Security-Policy: frame-ancestors #7677
    • Ensure CSP everywhere #7810
    • Show warning when unsafe CSP policy is in use #7804
    • Fix access rights when creating a new user #7783
    • Improve security of form for user details #7771, #7786
    • Disallow setting non-existent theme #7722
    • Regenerate cookie ID after logging out #7762
    • Require current password when setting new password #7763
    • Add missing access checks for feed-related actions #7768
    • Strip more unsafe attributes such as referrerpolicy, ping #7770
    • Remove unneeded execution permissions #7802
  • Bug fixing
    • Fix redirections when scraping from HTML #7654, #7741
    • Fix multiple authentication HTTP headers #7703
    • Fix HTML queries with a single feed #7730
    • WebSub: only perform a redirection when coming from WebSub #7738
    • Include enclosures in entries’ hash #7719
      • Negative side-effect: users of the option to automatically mark updated articles as unread will once have some articles with enclosures re-appear as unread
    • Fix cancellation of slider exit UI #7705
    • Honor disable update on update page #7733
    • Fix no registration limit setting #7751
    • Fix XML encoding of sharing functions #7822
  • SimplePie
  • Deployment
    • Docker default image (Debian 12 Bookworm) updated to PHP 8.2.29 #7805
    • Docker alternative image updated to Alpine 3.22 with PHP 8.4.11 and Apache 2.4.65 #7740, #7740,
      #7803
    • Start supporting PHP 8.5+ #7787, #7826
      • Docker Alpine dev image :newest updated to PHP 8.5-alpha and Apache 2.4.65 #7773
    • Docker: interpolate FRESHRSS_INSTALL and FRESHRSS_USER variables #7725
    • Docker: Reduce how much data needs to be chown/chmod’ed on container startup #7793
    • Test for database PDO typing support during install (relevant for MySQL / MariaDB with obsolete driver) #7651
  • Extensions
    • Add API endpoint for extensions #7576
    • Expose the reading modes for extensions #7668, #7688
    • New extension hook before_login_btn #7761
  • UI
    • Improve mark as read request showing popup due to onbeforeunload #7554
    • Fix lazy-loading for <video poster="..."> and <image> #7636
    • Avoid styling <code> inside of <pre> #7797
    • Improve confirmation logic with data-auto-leave-validation #7785
    • Update chart.js to 4.5.0 #7752, #7816
    • Various UI and style improvements: #7616, #7811
  • I18n
  • Misc.

FreshRSS 1.26.3

作者 Alkarex
2025年6月3日 06:10

This is a bug-fix release for FreshRSS 1.26.x

A few highlights ✨:

  • Keep sort and order criteria during navigation
  • Implement loading spinner for marking as favourite/read
  • Many bug fixes

This release has been made by @Alkarex, @Inverle and newcomers @CarelessCaution, @the7thNightmare

Full changelog:

  • Features
    • Keep sort and order criteria during navigation #7585
    • Add info about PDO::ATTR_CLIENT_VERSION (relevant for MySQL / MariaDB with obsolete driver) #7591
  • Bug fixing
    • Fix SQL request for user labels with custom sort (affecting PostgreSQL) #7588
    • Fix regression for favicon in GReader and Fever APIs #7573
    • Fix newest articles (within last second) not shown #7577
    • Fix duplicate HTTP header for POST #7556
    • Fix important articles on reader view #7602
    • Fix remove last share method #7613
    • Fix API handling of default category #7610
    • Fix user self-deletion #7626
    • Move PHP minimum version check #7560
  • Security
    • Fix encoding of themes #7565
    • Fix .htaccess.dist for access to /scripts/vendor/ #7598
  • SimplePie
    • Strip more HTML deprecated styles attributes: bgcolor, text, background, link, alink, vlink #7606
  • UI
    • Implement loading spinner for marking as favourite/read #7564
    • Provide theme class for CSS #7559
  • Deployment
    • Use HTTP Cache-Control: immutable for some files #7552
    • Drop Apache 2.2 (only support Apache 2.4+) #7561
  • I18n
  • Misc.

FreshRSS 1.26.2

作者 Alkarex
2025年5月4日 04:27

This is a security-focussed release for FreshRSS 1.26.x, addressing several CVEs (thanks @Inverle) 🛡

A few highlights ✨:

  • Implement JSON string concatenation with & operator
  • Support multiple JSON fragments in HTML+XPath+JSON mode (e.g. JSON-LD)
  • Multiple security fixes with CVEs
  • Bug fixes

Notes ℹ:

  • Favicons will be reconstructed automatically when feeds gets refreshed. After that, you may need to refresh your Web browser as well.

This release has been made by @Alkarex, @Frenzie, @hkcomori, @loviuz, @math-GH
and newcomers @dezponia, @glyn, @Inverle, @Machou, @mikropsoft

Full changelog:

FreshRSS 1.26.0

作者 Alkarex
2025年2月24日 02:30

In this release, we have restarted to focus on features. A long-awaited feature has been added, namely sorting articles by various criteria: received date (existing, default), publication date, title, link, random.

A few highlights ✨:

  • Add order-by options to sort articles by received date (existing, default), publication date, title, link, random
  • Allow searching in all feeds, also feeds only visible at category level with &get=A, and also those archived with &get=Z
    • UI accessible from user-query view
  • New shortcuts for adding user labels to articles
  • Several improvements and bug fixes

This release has been made by @Alkarex, @b-reich, @hkcomori, @math-GH, @UserRoot-Luca
and newcomers @a6software, @aftix, @bl00dy1837, @brtmax, @Roan-V, @ShaddyDC, @UncleArya

Full changelog:

  • Features
    • Add order-by options to sort articles by received date (existing, default), publication date, title, link, random #7149
    • Allow searching in all feeds, also feeds only visible at category level with &get=A, and also those archived with &get=Z #7144
      • UI accessible from user-query view
    • Add search operator intext: #7228
    • New shortcuts for adding user labels to articles #7274
    • New About page with system information #7161
  • Bug fixing
    • Fix regression denying access to app manifest #7158
    • Fix unwanted feed description updates #7269
    • Ensure no PHP buffer for SQLite download (some setups would first put the file in memory) #7230
    • Fix XML encoding regression in HTML+XPath mode #7345
    • Improve cURL proxy options and fix some constants #7231
    • Fix UI of global view unread articles counter #7247
    • Hide base theme in carrousel #7234
  • Deployment
    • Reduce superfluous Docker builds #7137
    • Docker default image (Debian 12 Bookworm) updated to PHP 8.2.26 and Apache 2.4.62
    • Docker alternative image (Alpine 3.21) updated to PHP 8.3.16
  • UI
    • Add footer icons to reader view #7133
    • Remove local reference to font Open Sans to avoid bugs with some local versions #7215
    • Improve stats page layout #7243
    • Smaller mark as read button in mobile view #5220
    • Add CSS class to various types of notifications to allow custom styling #7287
    • Various UI and style improvements: #7162, #7268
      Security
    • Better authorization label for OIDC in the UI #7264
    • Allow comments in force-https.txt #7259
  • I18n:
  • Misc.

FreshRSS 1.25.0

作者 Alkarex
2024年12月23日 19:19

In this release, the coding focus has been on moving to PHP 8.1+ and refactoring the integration of the SimplePie library (which was long due). At the same time, plenty of new features have been added. Enjoy! 🎄

Breaking changes 💥:

  • Require PHP 8.1+ (and improved support of PHP 8.4+)
  • Require PostgreSQL 10+ or MariaDB 10.0.5+ or MySQL 8+

A few highlights ✨:

  • Add support for regex search (regular expressions)
    • ⚠️ Advanced regex syntax for searches depends on the database used (SQLite, PostgreSQL, MariaDB, MySQL),
      but FreshRSS filter actions such as auto-mark-as-read and auto-favourite always use PHP PCRE2 syntax.
  • Allow dynamic search operator in user queries, like search:UserQueryA date:P1d
  • New feed mode HTML+XPath+JSON dot notation (JSON in HTML)
  • Better HTTP compliance with support for HTTP response headers Cache-Control: max-age and Expires
  • New unicity policies and heuristic for feeds with bad article IDs (reduce the problem of duplicated articles)
  • New option to automatically mark new articles as read if an identical title already exists in the same category
  • Add ability to remove content from articles with CSS selectors, also when not using full content
  • New condition option to selectively retrieve full content of articles
  • New UI feature to download a user’ SQLite database or a database SQLite export (to be produced by CLI)
  • Supported by Capy Reader (Android, open source)
  • Many bug fixes, UI improvements, and a lot more

This release has been made by @aledeg, @Alkarex, @Art4, @ColonelMoutarde, @Frenzie, @math-GH, @ramazansancar
and newcomers @DevGrohl, @UserRoot-Luca, @aarnej, @andrey-utkin, @bhj, @christophehenry, @davralin, @drego85, @ev-gor, @killerog, @kwarraich, @minna-xD, @mtalexan, @oshaposhnyk, @patHyatt

Full changelog:

  • Features
    • Add support for regex search (regular expressions) #6706, #6926
      • ⚠️ Advanced regex syntax for searches depends on the database used (SQLite, PostgreSQL, MariaDB, MySQL),
        but FreshRSS filter actions such as auto-mark-as-read and auto-favourite always use PHP PCRE2 syntax.
    • Allow dynamic search operator in user queries, like search:UserQueryA date:P1d #6851
    • New feed mode HTML+XPath+JSON dot notation (JSON in HTML) #6888
    • Better HTTP compliance with support for HTTP response headers Cache-Control: max-age and Expires #6812, FreshRSS/simplepie#26
    • Support custom HTTP request headers per feed (e.g. for Authorization) #6820
    • New unicity policies and heuristic for feeds with bad article IDs #4487, #6900
    • Fallback to GUID if article link is empty #7051
    • New option to automatically mark new articles as read if an identical title already exists in the same category #6922
    • New reading view option to display unread articles + favourites #7088
      • And corresponding new filter state &state=96 (no UI button yet)
    • Add ability to remove content from articles with CSS selectors, also when not using full content #6786, #6807
    • Update phpgt/cssxpath library with improved CSS selectors #6618
      • Support for :last-child, :first-of-type, :last-of-type, ^=, |=
    • New condition option to selectively retrieve full content of articles
      #33fd07f6f26310d4806077cc87bcdf9b8b940e35, #7082
    • Allow parentheses in quoted search #7055
    • New UI feature to download a user’ SQLite database or a database SQLite export (to be produced by CLI) #6931
    • New button to delete errored feeds from a category #7030
    • Better import of Inoreader user labels #6791
    • Rebuild feed favicon on cache clear #6961
    • New sharing with Bluesky #7116
    • New sharing with Telegram #6838
  • Bug fixing
    • Fix searches with a parenthesis before an operator like ("a b") or (!c) #6818
    • Fix auto-read tags #6790
    • Fix CSS selector for removing elements #7037, #7073,
      #7081, #7091, #7083
    • Fix redirection error after creating a new user #6995
    • Fix favicon error in case of wrong URL #6899
    • Use cURL to fetch extensions list (allows e.g. IPv6) #6767
    • Fix XML encoding in cURL options #6821
    • Fix initial UI scroll for some browsers #7059
    • Fix menu for article tags in some cases #6990
    • Fix share menu shortcut #6825
    • Fix HTML regex pattern during install for compatibility with v mode #7009
    • More robust creation of user data folder #7000
  • API
    • Fix API for categories and labels containing a + #7033
      • Compatibility with FocusReader
    • Supported by Capy Reader (Android, open source) capyreader#492
    • Improved UI for API #7048
    • Allow adding multiple feeds to a category via API #7017
    • API support edit multiple tags #7060
    • API return all categories also those without any feed #7020
  • Compatibility
  • Deployment
    • Docker: dev image freshrss/freshrss:oldest updated to Alpine 3.16 with PHP 8.1.22 and Apache 2.4.59 #6711
    • Docker alternative image updated to Alpine 3.21 with PHP 8.3.14 and Apache 2.4.62 #5383
    • Update Dockerfiles to newer key-value format #6819
    • Docker minor improvement of entrypoint #6827
  • SimplePie
  • Security
    • Apache protect more non-public folders and files #6881, #6893, #7008
    • Add privacy settings on extension list retrieval #4603, #7132
    • Fix login in unsafe mode when using a password with special XML characters #6797
    • Fix login in e.g. Brave browser by avoiding synchronous XHR #7023
    • Fix invalid login message #7066
    • Modernise windows.open noopener (to avoid flash of white page in dark mode) #7077, #7089
  • UI
    • Searchable My Labels field #6753
    • Add subscription management button to reading view #6946
    • New option for showing label menu in article row #6984
    • Move to next unread label on mark as read #6886
    • Improved article footer for small / mobile screens #7031
    • Improve Web accessibility: fix aria-hidden bug, and use HTML5 hidden #6910
    • Default styles for <pre> and <code> #6770
    • Refactor the sharing menu to use a <template> instead of duplicated HTML code #6751, #7113
    • Refactor the label menu to use a <template> #6864
    • Rework UI for authors #7054
      • Avoid Unicode escape of authors in HTML UI #7056
    • Improved subscription management page #6816
    • Improve user query management page #7062
    • Restore JavaScript form validation compatibility with Web browsers using older engines (SeaMonkey) #6777
    • Reorganise some options #6920
    • New shortcut ? to show shortcut page and help #6981
    • Use of consistent colours in statistics #7090
    • Various UI and style improvements #6959
  • Extensions
    • New extension hook simplepie_after_init #7007
  • I18n
  • Misc.

FreshRSS 1.24.2

作者 Alkarex
2024年9月24日 04:49

This is a quality-focussed release for the 1.24.x series meant to provide a good product to people blocked on PHP 7.4, while we will increase the requirements to PHP 8.1+ from the next 1.25.x series.

A few highlights ✨:

  • New global option to automatically add articles to favourites
  • New option to share articles from the article title line
  • Add core extensions, shipped by default: UserCSS and UserJS
  • Security: Force log out of users when they are disabled
  • Many bug and regression fixes

This release has been made by @Alkarex, @ColonelMoutarde, @den13501, @hkcomori, @math-GH
and newcomers @dservian, @crisukbot, @TomW1605

Full changelog:

  • Features
    • New global option to automatically add articles to favourites #6648
    • New possibility to share a user query in JSON GReader format #6655
    • New fields image and description for user query share #6541
    • Show article first words when an article title is empty #6240
    • New option to share articles from the article title line #6395
    • Improve JSON Dot Notation module to access more string-friendly types #6631
    • Improve detection of image types for enclosures not providing a type #6653
    • Add sharing to archive.is #6650
  • Security
    • Force log out of users when they are disabled #6612
    • Increase default values for OpenID Connect OIDCSessionMaxDuration and OIDCSessionInactivityTimeout #6642
    • Add default API CORS HTTP headers to shareable user queries #6659
  • Bug fixing
    • Fix parentheses for complex OR Boolean search expressions #6672
    • Fix keep max unread #6632
    • Fix regression in mark as read upon gone #6663
    • Fix regression on mark duplicate titles as read for modified articles #6664
    • Fix regression for Fever API, remove dependency to Exif extension #6624
    • Fix muted feeds for WebSub #6671
    • Fix performance / deadlock of PostgreSQL and MySQL / MariaDB during schema updates #6692
    • Fix HTTP cache of main page (regression since 1.18.0) #6719
    • Fix HTTP cache of shareable user queries #6718
    • Fix HTTP cache for feeds with modified Last-Modified when content is not modified #6723
  • Extensions
    • Add core extensions, shipped by default: UserCSS and UserJS #6267
      • Replaces CustomCSS and CustomCS extensions
    • Strong type array parameter helper #6661
  • CLI
    • Add quiet option to cli/db-backup.php #6593
  • Compatibility
  • Deployment
    • Docker default image (Debian 12 Bookworm) updated to PHP 8.2.20 and Apache 2.4.61
    • Docker alternative image updated to Alpine 3.20 with PHP 8.3.10 and Apache 2.4.62 #5383
    • Docker: Alpine dev image freshrss/freshrss:newest updated to PHP 8.4.0beta3 and Apache 2.4.62 #5764
  • UI
    • Default dark mode to auto #5582
    • New option to control action icons position in reading view #6297
    • Sticky buttons at the bottom of settings #6304
    • Various UI and style improvements #6446, #6485,
      #6651
  • I18n
    • Czech: use correct ISO 639-1 code cs (and not cz, which is the country) #6514
    • Improve Japanese #6564
    • Improve Spanish #6634
    • Improve Traditional Chinese #6691
  • Misc.

FreshRSS 1.24.1

作者 Alkarex
2024年6月5日 23:35

This is a bug-fix release for the 1.24.0 release, addressing several regressions.

A few highlights ✨:

  • New button to export OMPL of a category
  • Many bug fixes

This release has been made by @Alkarex, @math-GH, and newcomers @ramazansancar, @robinmetral

Full changelog:

  • Features
    • New button to export OMPL of a category #6519
    • Better git error messages in built-in Web update #6496
  • Bug fixing
    • Fix regression HTTP GET curl options #6492
    • Fix regression of mark as read if an identical title already exists #6536, #6543
    • Fix connection to PostgreSQL databases with uppercase letters #6482
    • Fix UI regression hover over title while having the navigation buttons in mobile view #6486
    • Fix UI for some drag & drops #6505, #6508
  • i18n
  • Misc.

FreshRSS 1.24.0

作者 Alkarex
2024年5月23日 17:54

A few highlights ✨:

  • New shareable user query mechanism to share lists of articles by HTML, RSS, OPML
    • Deprecates RSS sharing with master token
  • New CLI for database backup & restore
  • New JSON scraping mode to consume JSON data and JSON Feeds
  • New support for HTTP POST
  • New option to automatically add labels to incoming articles
  • New button to download a feed configuration as OPML
  • Many bug fixes

This release has been made by several contributors: @aledeg, @Alkarex, @andris155, @CilgaIscan, @cn-tools, @den13501, @eta-orionis, @Frenzie, @FromTheMoon85, @gmgall, @hkcomori, @jakopo87, @laxmanpradhan, @loviuz, @math-GH, @MayMeow, @OctopusET, @PedroPMS, @roughnecks, @soniyaprasad77, @th0mcat, @thomasrenes, @tiborepcek, @wolfpld, @yzqzss, @zukizukizuki
and several newcomers @eta-orionis, @gmgall, @hkcomori, @jakopo87, @jgtorcal, @krm-shrftdnv, @laxmanpradhan, @loviuz, @PedroPMS, @roughnecks, @soniyaprasad77, @th0mcat, @zukizukizuki

Full changelog:

  • Features
    • New shareable user query mechanism to share list of articles by HTML, RSS, OPML #6052
      • Deprecates RSS sharing with master token
    • New JSON scraping mode to consume JSON data #5662, #6317,
      #6369, #6476
    • New support for JSON Feeds #5662
    • New support for HTTP POST #5662
    • New options to automatically add labels to incoming articles #5954
    • New button to download a feed configuration as OPML #6312
    • Web scraping support more encodings such as EUC-JP #6112
    • Web scraping support password-protected queries (refactor some cURL options and use CURLOPT_USERPWD) #6177
    • Web scraping HTTP GET allow UTF-8 even when charset is far from top #6271
    • Allow manual refresh of disabled feeds #6408
    • Allow multiple authors on enclosures #6272
    • New system option in data/config.php for number of feeds to refresh in parallel from UI #6124
  • CLI
  • API
    • New compatible app Read You #4633, #6050
    • Reduce API memory consumption #6137
    • Allow negative feed IDs for future special cases #6010
    • Only return OK for requests without query parameters #6238
  • Bug fixing
    • Better account for some edge cases for cron and automatic labels during feed refresh #6117
    • Better support for thumbnails in RSS feeds #5972
    • Auto-update PostgreSQL or MariaDB / MySQL databases for column details changes since FreshRSS 1.21.0 #6279
      • For SQLite, DB update require running ./cli/db-backup.php ; ./cli/db-restore.php --force-overwrite
    • Fix SQLite import of exports produced before FreshRSS 1.20.0 #6450
    • Fix SQLite release handle to fix deleting users on Microsoft Windows #6285
    • Fix to allow admins to create user even when there are Terms Of Service #6269
    • Fix updating the uncategorized category deletes the title #6073
    • Fix disable master authentication token #6185
    • Fix CSS selector preview #6423
    • Fix CSS selector encoding #6426
    • Fix export of CSS selector in OPML of individual feeds #6435
    • Fix OPML import of CURLOPT_PROXYTYPE #6439
    • Fix favicon with protocol-relative URLs have duplicate slashes #6068
    • Fix feed TTL+muted logic #6115
    • Fix apply mark as read to updated articles too #6334
    • Fix ZIP export on systems with custom temp folder #6392
    • Fix number of posts per page during paging #6268
    • Fix clipboard sharing UI #6301
    • Fix shortcut for clipboard sharing #6277
    • Fix user-query filter display #6421
  • SimplePie
  • Security
    • Replace iframe allow attribute #6274
  • Deployment
    • Disable unused PHP modules in our Debian-based Docker image #5994
  • UI
  • i18n
  • Extensions
    • Sanitize parsing list of extensions names and version number #6016,
      #6155, Extensions#214, #6186
    • Apply filter actions such as mark as read after the entry_before_insert hook for extensions #6091
    • New developer command to test all third-party extensions Extensions#228, #6273
      • composer run-script phpstan-third-party
    • New function Minz_Extension::amendCsp() for extensions to modify HTTP headers for Content Security Policy #6246
    • New property FreshRSS_Entry::isUpdated() for extensions to know whether an entry is new or updated #6334
  • Compatibility
    • Fix PHP 7.4 compatibility for automated tests #6038, #6039
    • Fix PHP 8.2+ compatibility for e-mails #6130
    • Use PHP 8.3+ #[\Override] #6273
  • Misc.

FreshRSS 1.23.1

作者 Alkarex
2023年12月31日 21:32

This is a bug-fix release for the 1.23.0 release, addressing several regressions.

This release has been made by @Alkarex, @andris155, @math-GH, @yzqzss, @zhzy0077

Full changelog:

  • Bug fixing
    • Fix crash regression with the option Max number of tags shown #5978
    • Fix crash regression when enabling extensions defined by old FreshRSS installations #5979
    • Fix crash regression during export when using MySQL #5988
    • More robust assignment of categories to feeds #5986
    • Fix base_url being cleared when saving settings #5992
    • Fix unwanted button in UI of update page #5999
  • Deployment
    • Exclude more folders with .dockerignore #5996
  • i18n
    • Improve simplified Chinese #5977
    • Improve Hungarian #6000

FreshRSS 1.20.1

作者 Alkarex
2022年11月14日 21:26

A few highlights ✨:

  • Focusing mostly on bug-fixes of 1.20.0
  • Several UI / themes improvements
  • Improved and new translations (Greek, Indonesian)

Detailed tracked changes.

Full changelog:

  • Features
    • Add support for custom XPath date/time format #4703
    • Add default redirect when authenticating #4778
    • Force default user before rendering login page #4620
  • API
    • Minor Google Reader API improvements #4763
  • Bug fixing
    • Fix SQL transaction rollbacks during auto-update #4622
    • Fix opcache bug during Web update #4629, update.freshrss.org#4
    • Fix export bug #4822
    • Fix OPML import of special feed attributes #4708
    • Fix JavaScript bug with remembering opened categories #4827
    • Fix curlopt options for HTML+XPath #4759
    • Fix charset bug for HTML+XPath #4623
    • Fix HTML-encoding of CSS selectors #4707, #4823
    • Fix some broken author links #4743
    • Fix show settings page after adding new feed #4631
    • Fix login page when user does not exist #4621
    • Fix feed manage link on stats page #4768
    • Fix minor layout bugs #4830
    • Fix minor UI bugs with Safari #4643
  • UI
    • Change some default settings related to marking articles as read #4736
    • Improve scrollbar when slider is open #4692
    • Improve Subscription Management: Show the category position number #4679
    • Improve Reader view: Mark article as read while scrolling #4652
    • Improve sharing / integration page #4774
    • Improve article summary text cut #4666
    • Improve HTML semantics for some boxes #4665
    • Change dynamic OPML icon #4673, #4810
    • Improve box layout for global view #4791
    • Improve logs layout #4594
    • Improve Feed configuration: number of articles #4625
    • Improve drop-down menus #4597
    • Show tile with explanation when hovering empty feeds #4617
    • Added bottom nav padding for iOS #4741
  • Themes
  • i18n
  • Compatibility
    • Compatibility PHP 8.1+ strip_tags() #4688
    • Fix GLOB_BRACE is not available on all platforms #4628
  • Deployment
    • Docker default image (Debian 11 Bullseye) updated to PHP 7.4.33
    • Docker: alternative image (Alpine 3.16) updated to PHP 8.0.25
  • Misc.
    • Added Linkding as a sharing method #4721
    • Exclude .git/ from tests #4824
    • Exclude extensions/ from eslint and stylelint tests #4606
    • Update GitHub Actions version #4717

FreshRSS 1.19.2

作者 Alkarex
2022年2月4日 22:27

A few highlights:

  • Improve dropdown menus on mobile view #4141, #4128
  • Fix regression regarding keeping read state after seeing favourites / labels #4178
  • Lots of code improvements, including improved support of PHP 8.1
  • And more!

Detailed tracked changes.

Full changelog:

  • Bug fixing
    • Fix regression regarding keeping read state after seeing favourites / labels #4178
    • Fix migration system on Synology and systems adding custom files to folders #4163
    • Fix wrong dropdown triangle UI for labels #4174
    • Fix minor UI bugs #4169, #4189, #4188
    • Fix minor SCSS details for the themes Ansum and Mapco #4146
  • UI
    • Improve dropdown menus on mobile view #4141, #4128
    • Improve menu icons #4004
  • Features
    • Support JSON import with date in milliseconds (e.g., Feedly) #4186
  • Deployment
    • Docker: development image :newest updated to PHP 8.1.1 and Apache 2.4.52 #3666
  • i18n
    • Improve i18n CLI #4131
    • Use typographic quotes #4133
    • Improve message regarding forced feeds #4145
    • Improve Czech #4151
    • Improve English #4161
  • Misc.
    • Increase PHPStan to level 5 for code quality, also fixing several PHP 8.1 warnings #4110, #4123, #4119, #4182
    • Clean temporary files generated by automated tests #4177
    • Add automated spell checking of the code using typos #4138, #4134
    • Enforce code style opening brace on same line in PHPCS #4122
    • Remove broken GitHub Action automatically adding the latest tag to git #4135

FreshRSS 1.19.0

作者 Alkarex
2022年1月2日 23:27

A few highlights:

  • Drop support for PHP 5.x (require PHP 7.0+) and initial support for PHP 8.1+
  • Drop support for Microsoft Internet Explorer (IE11)
  • New thumbnail and/or summary options for the normal view #3805
    image
  • New setting to automatically mark as read a new article if there is already one with the same title in the same feed
  • New setting to keep only a maximum number of unread articles in a given feed
  • Mobile view can access the configuration menus

Detailed tracked changes.

Full changelog:

  • Features
    • New thumbnail and/or summary options for the normal view #3805
    • New setting to automatically mark as read a new article if there is already one with the same title in the same feed #3303
    • New setting to keep only a maximum number of unread articles in a given feed #3303
    • New search operator based on custom labels, or not #3709
      • Search articles with label IDs: L:12,13,14 or label names: label:something or labels:"my label,my other label,🧪"
      • Search articles with any label: L:* or no label: !L:*
    • Add support for installable progressive web app (PWA) #3890
  • Bug fixing
    • Fix marking as read a label with SQLite and PostgreSQL #3711
    • Better fallback for feeds without title #3787
    • Fix auto-load articles in anonymous mode and global view #4082
    • Fix several typos found by PHPStan, including one affecting the cache of keep max unread articles #4019
    • Fix warning in Fever API #4056
    • Show no articles alert-box also in global view #4042, #3099
    • Fix theme selection when a theme has been deleted #3874
    • Fix keyboard shortcuts in anonymous mode #3945
    • Fix show password in settings #3966
    • Fix JavaScript warnings for non-validated users #3980
    • Fix drag & drop layout for subscriptions #3949
  • Security
    • Better error handling when a user does not exist (especially for API) #3751, #4084
    • Do not show Add new feed for anonymous users #4040
    • Do not show Mark as read / unread / favourite for anonymous users #3871, #3876
    • Do not show back link on error pages if the user does not have access #3765
    • Only show Back to RSS feeds when logged-in #3790
    • Fix for special characters in keyboard shortcuts #3922
    • Remove old workarounds with white space to prevent password autocompletion #3814
  • Compatibility
    • Require PHP 7.0+ (drop support for PHP 5.x) #3666
    • Drop support for Microsoft Internet Explorer (IE11) #3666
    • Fix some warnings with PHP 8.1+ #4012, #4018
    • Fix back-compatibility with Git 2.21- for automatic updates #3669
    • Fix JavaScript caching and compression for some Apache platforms #4075
  • Deployment
    • Docker: development image :oldest is now based on alpine:3.5 with PHP 7.0.33 and Apache 2.4.35 #3666
    • Docker: default image updated to Debian 11 Bullseye with PHP 7.4.25 and Apache 2.4.51 #3782
    • Docker: alternative image updated to Alpine 3.15 with PHP 8.0.14 and Apache 2.4.52 #3996
    • Docker: fix inclusion of .htaccess for ./p/themes/ folder #4074
    • Docker: only add the crontab when CRON_MIN is set #3927
    • Docker: move logic to disable FreshRSS updates #3973
    • Docker: allow mounting a volume for the cron file #3927
    • Images on Docker Hub are automatically scanned for software vulnerabilities
  • UI
  • Themes
    • Show search box for all themes in mobile view #4025
    • Fix alternative-dark theme to avoid bright elements #3774, #3806
    • Improve the contrast of message boxes for the Origine theme #3725
    • Uniformize the size of inputand select elements for the Origine theme #3727
    • Fix style of banner text for the Origine theme #3731
  • i18n
  • Extensions
    • Add system configuration for extension #3626
  • SimplePie
    • Merge from upstream, help with PHP 8.1+ #4011
    • Fallback to file extensions for enclosures not providing a media type #3861
  • Misc.
    • Implement GitHub Actions for continuous integration / automated testing 3920
    • Use ESLint instead of JSHint #3906
    • Improve .editorconfig and .stylelintrc #3895, #3912
    • Simplify Minz code with PHP 7 ?? operator #4020
    • Upgrade PHPMailer to 6.5.1 #3977
    • Added Raindrop.io as sharing option #3717
    • Delete outdated information regarding Firefox feed reader list #3822

FreshRSS 1.18.1

作者 Alkarex
2021年6月7日 05:01

Note: Last release before dropping support for PHP 5 and Internet Explorer 11.

Changelog:

  • Features
    • Support standard HTTP 410 Gone by disabling (muting) gone feeds #3561
    • Make advanced feed options such as SSL available to non-admins #3612
  • API
  • UI
    • Allow Unicode for shortcuts #3548
  • Bug fixing
    • Fix database lock during refresh with MariaDB #3559
    • Fix database creation from CLI #3544
    • Fix: pdo_sqlite is optional except for export/import SQLite #3545
    • Fix import of JSON and TT-RSS files, especially with PHP 8 #3553
      • Allow import of more than 999 favourites/labelled articles even with SQLite
    • Fix additional SQL limits, especially for SQLite #3586
    • Fix search param encoding in user query #3541
    • Fix undefined variable & dead code when adding feed #3546
    • Fix missing translation in feed configuration #3554
    • Fix double escaping in feed filters #3563
    • Fix bugs in migration system #3589
    • Fix regression preventing showing startup errors #3590
    • Fix form redirection after erroneous user creation #3656
    • Fix JavaScript error during navigation when no article is selected #3655
    • Fix link to add feeds from the empty homepage #3650
    • Fix git update error message #3645
  • SimplePie
    • Fix regression about media attachments #3565
    • Fix regression about forcing HTTPS for enclosures #3568
    • Catch ValueError for loadHTML with PHP 8 simplepie#673
    • Provide access to latest HTTP status code simplepie#674
    • Fix wrong SimplePie type hint simplepie#678
    • Merge details from upstream PRs #3588, #3614
  • API
    • Compatibility with Web servers providing ORIG_PATH_INFO #3560
  • i18n
  • Code improvements:
    • Friendly constant syntax for Intellisense #3577
    • Fix several comments syntaxes #3615
    • Minor uniform stricter HTML #3616
    • Removed unused variable #3587
    • Provide action name in Minz controller exception #3624
    • New convenience method to extract multiline GET parameters from e.g. <textarea> #3629
  • Deployment
    • Automatically apply latest tag in git for the latest FreshRSS release #3524
  • Misc.
    • Remove legacy data/do-install.txt for triggering install process #3555
    • If using built-in git updates, automatically change to git edge branch if using old master or dev branch names #3589

FreshRSS 1.18.0

作者 Alkarex
2021年3月15日 01:51

Changelog:

  • Features
    • Allow parallel requests #3096
      • Much faster manual feeds refresh
    • Reload full article content when an article has changed #3506
    • New share article link to clipboard #3330
    • Improved OPML import of feeds with multiple categories #3286
    • Add a content action parameter to work with CSS selector #3453
    • New cURL options per feed: proxy, cookie, user-agent #3367, #3494, #3516
    • Do not import feeds causing database errors (e.g. due to conflicting HTTP redirections) ##3347
  • UI
    • New option to remember open categories #3185
    • Remember the scroll position of the sidebar #3231
    • Feedback messages are now properly attached to a request, in case multiple tabs are open #3208
    • New user query configuration page #3366
    • Allow sorting and drag & drop in the list of user queries #3346, #3355
    • Change layout to add a subscription #3289
    • Change integration configuration page #3372
    • Improve author search when clicking on an author #3315
    • Allow typing a label name instead of selecting it #3213
    • Use same behaviour for labels than the option Show all articles in favourites #3472
    • Change naming from Tag management to Label management #3446
    • Sort options alphabetically in share menu #3331
    • Case-insensitive sort order of feeds in category settings #3466
    • Better compression of the images #3184
    • Fix minor jaggy motion of the sidebar #3266
    • Remove useless reset action in sharing configuration page #3365
    • Add autofocus on subscription page #3334
    • Fix contrast issue by enforcing black text in base theme #3196
    • Adjust brightness & contrast of images and videos in dark themes #3356
    • Improve menu bar of several themes for mobile view #3480, #3491
    • Fix dropdown menu for user queries with BlueLagoon and Screwdriver themes #3485
    • Upgrade to jQuery 3.6.0 for statistics #3501
  • Bug fixing
    • Fix the reloading of full article content with SQLite #3461
    • Fix the caching of an SQL prepared statement affecting the read state of updated articles #3500
    • Better handle expected article conflicts in database #3409
    • Fix SQL syntax error/warning when deleting temporary articles #3357
    • Fix login and refresh bugs in anonymous mode #3305
    • Fix i18n init #3249
    • Fix tag management #3292
    • Fix user queries with labels #3285
    • Fix loading of default actions for shortcuts #3394
    • Fix extensions when using CLI #3443
    • Fix translation CLI #3364
    • Allow searching for + sign #3489
    • Fix cURL version detection in install script #3519
  • Compatibility
    • Support PHP 8+ #3186, #3207, #3459, #3487
      • Note: needed for MySQL 8+ with default authentication settings
      • Change ZIP-handling method #3470
  • API
    • Supported by FocusReader (Android) #3478
    • Implement OPML import/export #3424
    • Add canonical field for fluent-reader, better compatibility InoReader #3391
    • Better compatibility with BazQux API #3320
    • Fix continuation token by ensuring it is a string (for Reeder) #3247
  • CLI
    • Add requirements check in relevant CLI #3410
  • Deployment
    • Possibility to auto-install via e.g. docker-compose #3353
      • New tolerance when the database is not available / up (yet) by trying a few times to connect
    • Docker: use Apache remoteip to log the client remote IP instead of the local proxy IP #3226
    • Docker: new environment variable LISTEN to change the internal Apache port when running in host network mode #3343
    • Docker: Alpine image updated to 3.13 with PHP 8.0.3 and Apache 2.4.46 #3375
      • Note: needed for MySQL 8+ with default authentication settings #3191
    • Docker default image (Debian 10 Buster) updated to PHP 7.3.27
    • New Docker development image based on alpine:edge to test the latest PHP 8+ version #3294
    • New Docker development image based on alpine:3.4 to test oldest supported PHP 5.6.36 version with Apache 2.4.43 #3274
    • Disable built-in update mechanism for new installations using Docker #3496
    • Check that PHP session is working during install #3430
  • Security
    • Auto-renew login cookie #3287
    • Remove referer check, already replaced by CSRF token #3432
    • Increase login cookie duration to 3 months by default #3170
    • Prevent click on login button until JavaScript is fully loaded #3275
    • Add toggle password visibility button on login form UI #3205
    • Better sanitize feed description #3222
    • Allow @-sign in database username (for Azure) #3241
    • Add username hint for permissions during install #3373
  • SimplePie
    • SimplePie prevent cache pollution #3502
    • Update to SimplePie 1.5.6 with PHP8 support #3469, #3206
    • Reduce memory consumption to handle very big feeds #3416
    • Replace ceil() by intval() for edge cases with PHP8 #3404
    • Strip HTML comments in feeds #3288
    • Minor fix of return type for broken feeds #3423
    • Fix images in enclosures without MIME type #3361
  • Extensions
    • New user maintenance hooks #3440
    • New hooks js_vars and nav_menu #3342
    • Add class autoload for extensions #3350
    • Add support for extension user files #3433
    • Add user configuration in extensions #3397
    • Add a method to retrieve a configuration value #3422
    • Search files for both core and third-party extensions #3413
    • Updated base extension class #3333, #3335
    • Refactor extension file script #3399
  • i18n
  • Code improvements
    • Improve FreshRSS system initialisation #3070
    • Improve session code during install #3276
    • Enforce phpcs (PHP_CodeSniffer) line length + whitespace #3488
      • Improve settings and applies to *.phtml, *.css, *.js as well
    • Fix superfluous Minz check during install #3302
    • Extract some classes to their own files #3301, #3298, #3297
    • Explicit git declaration of .png files as binary #3211
    • Remove Minz validation #3439
    • Explicit PDO::ERRMODE_SILENT #3048
    • Add constant for minimal PHP version #3369
    • Refactor requirements check during install #3368
  • Misc.
    • Check access rights to temp folder during install #3312
    • Ensure maximum integer for a date to avoid some database issues #3259
    • Upgrade PHPMailer to 6.3.0 #3457
    • Make our Travis greener by testing only our oldest and newest supported PHP versions #3492

❌
❌