All Versions
26
Latest Version
Avg Release Cycle
113 days
Latest Release
23 days ago

Changelog History
Page 2

  • v1.25.0 Changes

    December 23, 2024

    πŸš€ 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 ...
  • v1.24.3 Changes

    September 06, 2024

    πŸš€ 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 release.

    A few highlights ✨:

    • πŸ‘ Last version supporting PHP 7.4 before requiring PHP 8.1+
    • πŸ‘ Last version supporting PostgreSQL 9.5 before requiring PostgreSQL 10+
    • πŸ‘ Last version supporting MariaDB 5.5 before requiring MariaDB 10.0.5+
    • πŸ‘ Last version supporting MySQL 5.5.3 before requiring MySQL 8+
    • πŸ›  Many bug and regression fixes

    πŸš€ This release has been made by @Alkarex, @math-GH and newcomer @pando85

    Full changelog:

    • πŸ› Bug fixing

      • Fix mark-as-read from user query #6738
      • Fix regression for shortcut to move between categories #6741
      • Fix feed title option #6771
      • Fix XPath for HTML documents with broken root (used by CSS selectors to fetch full content) #6774
      • Fix UI regression in Mapco/Ansum themes #6740
      • Fix minor style bug with some themes #6746
      • Fix export of OPML information for date format of JSON and HTML+XPath feeds #6779
    • πŸ”’ Security

      • OpenID Connect better definition of session parameters #6730
    • Compatibility

      • Last version supporting PHP 7.4
    • Misc.

      • Use charset for JSON requests from the UI #6710
      • Use .html extension for the local cache of full content pages instead of .spc #6724
      • Update dev dependencies #6739, #6758,
        #6759, #6760
  • v1.17.0 Changes

    September 22, 2020

    Changelog:

    • πŸ”‹ Features
      • New tag management page #3121
      • New page to add feeds and categories #3027
      • Add a way to disable/enable users #3056
    • πŸ”’ Security
      • Add user auto-registration when using HTTP Basic authentication login method #3003
      • Fix special characters in user queries #3037
      • Hide feed credentials when adding a new feed #3099
      • Trim whitespace for feed passwords #3158
      • Updated PHPMailer library to 6.1.6 #3024
      • Add blogger.com to the default list of forced HTTPS #3088
    • πŸ’» UI
      • Show feed name and date inside the article (especially good on mobile) #3081
      • Add shortcut to control media elements (video, audio) #3036
      • New option to disable shortcuts #3114
      • Case-insensitive sort order of feeds in categories #3131
      • Use machine-readable <time datetime=""> for entry dates #3106
      • Add tooltips on entry icons #3115
      • Limit dropdown menus max-height #3102
      • Fix inline code tag contrast in Ansum and Mapco themes #3048, #3050
      • Fix login form in BlueLagoon and Screwdriver themes #3028
    • API
      • Supported by Fluent Reader (Windows, Linux, MacOS) #3140
      • Fix API quickadd #3051
      • Fix warning when adding a feed #3075
      • Work-around for common API address errors #3061
    • Compatibility
      • Add fall-backs for compatibility with OPMLs from The Old Reader #3071
      • Relaxed to allow underscore _ in feed addresses #3133
    • πŸš€ Deployment
      • Docker default image rebased on Debian 10 Buster, with Apache 2.4.38 and PHP 7.3.19 #3159
      • Docker: Alpine image updated to 3.12 with Apache/2.4.46 and PHP 7.3.21 #3025
      • Update example of Dockerfile #3108
    • CLI
      • Re-introduce --api_password option (vanished in 1.16.0) #3179
      • Modify shebang to be more portable #3038
    • πŸ› Bug fixing
      • SimplePie: Fix compliance with HTTP 301 Moved Permanently #3180
    • i18n
      • Add language negotiation when the user is not logged in #3022
      • New United States English #3060
      • Improved British English #3068
      • Improved Dutch #3063
      • Improved Slovak #3020
      • Add a language reference when adding a new one #3044
      • Change how updating a key works #3072
      • Add missing translations #3034
    • Misc.
      • Return proper MIME type for favicons #3032
      • Add a migration system #2760
      • Makefile support for FreshRSS extensions #3042
      • Update rules to use Make syntax #3062
      • Refactor the export feature #3045
  • v1.16.2 Changes

    May 31, 2020

    πŸš€ Quick fix for FreshRSS 1.16.1.

    Changelog:

    • πŸ› Bug fixing (regressions)
      • Fix migration of the preference Show categories unfolded (from ≀ 1.16.0) to the new Categories to unfold #3019
  • v1.16.1 Changes

    May 30, 2020

    Changelog:

    • πŸ”‹ Features
      • Add the possibility to filter by feed IDs #2892
      • like f:123 more-search or multiple feed IDs like f:123,234,345 more-search or an exclusion like !f:456,789 more-search
      • Show users last activity date #2936
      • Ability to follow HTML redirections when retrieving full article content #2985
    • API
      • New table of compatible clients #2942
      • Expose podcasts in API (used by e.g. FeedMe) #2898
      • Workaround for clients not sending a clean login request #2961
      • Relaxed detection of GReader short/long ID form (for Reeder) #2957
      • Fix warning with FeedReader #2947
      • Fix GReader string type for Usec fields #2935
      • Fix Fever integers type #2946
    • CLI
      • JSON output option for ./cli/user-info.php --json #2968
      • Add language and e-mail in ./cli/user-info.php #2958
      • Fix filenames for exported files #2932
    • πŸ’» UI
      • Access to feed configuration in mobile view #2938
      • Use standard loading="lazy" for favicons #2962
      • New option to control which categories to unfold #2888
      • Turn off autocapitalization in login fields #2907
      • Minor layout improvement of help labels #2911
      • Minor layout improvement of checkbox labels #2937
      • Fix styling of search input fields in Safari #2887
      • Fix styling of .stick elements in older Webkit browsers #2995
      • Use common CSS template for Alternative-Dark theme #3000
      • Upgrade to jQuery 3.5.1 for statistics #2982
    • Compatibility
      • Relax OPML parsing to allow importing not strictly-valid ones #2983
    • πŸš€ Deployment
      • Docker: Alpine image updated to PHP 7.3.17
      • Add reference documentation for using Apache as a reverse proxy #2919
      • Enforce Unix line endings when checking out via git #2879
    • πŸ› Bug fixing
      • Fix regression when marking all articles as read, risking to mark newer articles as read #2909
      • Fix memory leak when using lib_phpQuery for full-content retrieval #3004
      • Fix preview of CSS selector to retrieve full article content #2993
      • Fix PostgreSQL install when user has limited connection rights #3013
      • Fix Docker make cron use FRESHRSS_ENV environment variable #2963
      • Fix e-mail validation bug for admins #2917
      • Fix some cases when WebSub-enabled feeds change address #2922
      • Fix ensuring that wrong login attempts generate HTTP 403 (e.g. for fail2ban) #2903
      • Fix archiving options layout in Edge #2906
      • Fix form in statistics for article repartition #2896
      • Fix double-HTML-encoding of category names in statistics #2897
      • Fix password reveal button during install #2999
      • Fix Makefile rules when PHP is not installed #3010
    • i18n
      • Improve Simplified Chinese #2891
      • Improve Dutch #3005
      • Reformat i18n files #2976
      • Add a Makefile rule to produce PO4A i18n files #3006
    • Misc.
      • Reduce memory consumption during feed refresh #2972, #2955
      • and improved logs containing memory consumption #2964
      • Reduce the risk of DB lock errors #2899
      • Update PHPMailer library to 6.1.5 #2980
      • Initial rules for Markdown linting #2880
      • Add a Makefile rule for linting #2996
      • Add a Makefile rule to refresh feeds #3014
  • v1.16.0 Changes

    April 09, 2020

    Changelog:

    • πŸ”‹ Features
      • Allow multiple users to have administration rights #2096
      • Preview the CSS rule to retrieve full article content #2778
      • Improve CSS selector ordering in the full-text retrieval (lib_phpQuery) #2874
      • Allow combining selectors with a comma such as #article .title, #article .content
      • New search option !date: allowing to exclude any date interval #2869
      • For instance !date:P1W (exlude articles newer than 1 week), !pubdate:2019, -date:2020-01-01/P5d, etc.
      • New option to show all articles in the favourites view #2434
      • Allow feed to be actualized just after being truncated #2862
      • Fallback to showing a GUID when an article title is empty #2813
    • API
      • Supported by Readrops (Android, open source) #2798
      • Improve consistency of the default category #2840
      • Return proper newestItemTimestampUsec #2853
      • Return HTTP/1.x 200 OK for an empty request, to ease discovery #2855
      • Add ability to customise dates shown in API #2773
      • Minor clearing of unused parameters #2816
    • Compatibility
      • Support PHP 7.4
    • πŸ› Bug fixing
      • Fix regression causing a login bug in some situations related to e-mail login #2686
      • Fix regression in feed refresh when there are users whose e-mail is not verified #2694
      • Fix PostgreSQL install when using a username different than database name #2732
      • Fix error with advanced searches using SQLite #2777
      • Fix feed action filter when filtering on author: #2806
      • Fix warning in WebSub #2743
      • Fix environment variables COPY_LOG_TO_SYSLOG and FRESHRSS_ENV controlling logging #2745
      • Fix UI flickering when hovering over articles when authors are displayed #2701
      • Fix array error with PHP 7.4 #2780
      • Fix wrong foreach in applyFilterActions #2809
      • Fix encoding bug in lib_phpQuery when fetching the full content of HTML documents with a complex <head ...> #2864
      • Fix minor bug in β€œarticles to display” configuration UI #2767
      • Fix sharing with Wallabag #2817
      • Fix UI background bug when hovering over a long title that overlaps the date #2755
    • πŸ’» UI
      • Better UI / client network performance (time to first byte) thanks to a data streaming pipeline with yield #2588
      • Improved buffering strategy accordingly, with a loading animation while waiting for the first articles to arrive (e.g. complex / slow search) #2845
      • To benefit from it, requires that the full Web stack allow efficient streaming / flushing of data. Check our reference Docker + Traefik documentation.
      • Support RTL (right-to-left) languages #2776
      • New keyboard shortcut Alt βŽ‡+r to park previous articles as read #2843
      • In the statistics page, show feeds inactive for 1, 2, 3, 5 years #2827
      • Reset FreshRSS page scroll when restoring a browser session, to avoid inadvertently marking as read new articles #2842
      • Fix scrolling of labels dropdown #2727
      • Enlarge <audio> widgets to use the full width of the reading zone, to help navigation in e.g. podcasts #2875
      • Use <p> instead of <pre> to display <media:description> information #2807
      • Show language and e-mail address in the list of users #2703
      • Change logic when using shortcuts to navigate between feeds, in the case some are empty #2687
      • Option to show/hide favicons (e.g. to reduce the number of requests) #2821
      • Improve loader animation colour in the Dark theme #2753
    • SimplePie
      • Use distinct cache for feeds retrieved with #force_feed simplepie#643
      • Fix the issue of not being able to immediately try to add an invalid feed again #2524
      • Update to SimplePie 1.5.4 #2702, #2814
      • Require PHP 5.6+, and add PHP 7.4+ compatibility
      • Add Russian and German dates
      • Etc.
    • πŸš€ Deployment
      • Docker: Alpine image updated to 3.11 with PHP 7.3.16 and Apache 2.4.43 #2729
      • Move core extensions (shipped with FreshRSS) to their own directory, so that ./extensions/ is solely for third-party extensions #2837
      • This allows mounting ./extensions/ as a Docker volume, to ease adding third-party extensions
    • Extensions
      • New core extension to find feeds for Google Groups #2835
      • New hooks check_url_before_add and feed_before_actualize #2704
      • Execute the entry_before_display hook also through the API #2762
      • Allow extensions to change CSP (security) rules #2708
      • Expose the article ID in the share system (for a new e-mail sharing extension) #2707
    • i18n
    • Misc.
      • Improve logging of database errors #2734
      • Remove the min_posts_per_rss configuration, which made efficient buffering difficult #2588
      • Add a test target to Makefile #2725
      • Fix test suite #2721
      • Refactor request class #2373
      • Remove deprecated magic quotes logic #2698
  • v1.15.3 Changes

    November 22, 2019

    Changelog:

    • πŸ› Bug fixing (regressions from 1.15.x)
      • Fix adding categories in MySQL 5.5 #2670
      • Fix saving sharing integrations #2669
    • Compatibility
      • Add fallback for systems with old ICU < 4.6 (International Components for Unicode) #2680
    • API
      • Do not obey rel=self feed redirections when WebSub is disabled #2659
    • πŸ’» UI
      • Start adding support for RTL (right-to-left) languages #2656
    • πŸš€ Deployment
      • Docker: Ubuntu image updated to PHP 7.3.11
    • Misc.
      • Add more log when errors occur when saving a profile #2663
      • Improve Makefile with port override #2660
      • Update a few external links to HTTPS #2662
  • v1.15.2 Changes

    November 12, 2019

    Changelog:

    • πŸ› Bug fixing (regressions from 1.15.x)
      • Fix CLI failing due to new test against empty usernames #2644
      • Fix CLI install for SQLite #2648
      • Fix database optimize action for MySQL/MariaDB #2647
    • πŸ› Bug fixing (misc.)
      • Sanitize Unicode UTF-8 before insertion of entries, especially needed for PostgreSQL #2645
    • Misc.
      • Rename sharing action to avoid erroneous blocking by some ad-blockers #2509
  • v1.15.1 Changes

    November 06, 2019

    Changelog:

    • πŸ”‹ Features
      • New approach based on OPML to definite default feeds for new users #2627
    • API
      • Always send articles IDs as string, to fix compatibility with Reeder #2621
    • πŸ› Bug fixing (regressions from 1.15.0)
      • Fix database auto-creation at install #2635
      • Fix bug in database size estimation with PostgreSQL for users with uppercase names #2631
      • Reset name of default category (which cannot be customised anymore) #2639
      • Fix UI style details #2634
    • πŸ”’ Security
      • Improve cookie security with policy SameSite=Lax #2630
    • Misc.
      • Perform automatic git updates with safer fetch+reset instead of clean+fetch+merge #2625
  • v1.15.0 Changes

    October 31, 2019

    Changelog:

    • CLI
      • Command line to export/import any database to/from SQLite #2496
    • πŸ”‹ Features
      • New archiving method, including maximum number of articles per feed, and settings at feed, category, global levels #2335
      • New option to control category sort order #2592
      • New option to display article authors underneath the article title #2487
      • Add e-mail capability #2476, #2481
      • Ability to define default user settings in data/config-user.custom.php #2490
      • Including default feeds #2515
      • Allow recreating users if they still exist in database #2555
      • Add optional database connection URI parameters #2549, #2559
      • Allow longer articles with MySQL / MariaDB (up to 16MB compressed instead of 64kB) #2448
      • Add support for terms of service #2520
      • Add sharing with Lemmy #2510
    • API
    • Compatibility
      • Require at least PHP 5.6+ #2495, #2527, #2585
      • Require php-json and remove remove JSON.php fallback #2528
      • Require at least PostgreSQL 9.5+ #2554
    • πŸš€ Deployment
      • Take advantage of mod_authz_core instead of mod_access_compat when running on Apache 2.4+ #2461
      • Docker: Ubuntu image updated to 19.10 with PHP 7.3.8 and Apache 2.4.41 #2577
      • Docker: Alpine image updated to 3.10 with PHP 7.3.11 and Apache 2.4.41 #2238
      • Docker: Increase default PHP POST/upload size to ease importing ZIP files #2563
      • New environment variable COPY_LOG_TO_SYSLOG to see all logs at once in e.g. docker logs -f #2591
      • New environment variable FRESHRSS_ENV to control Minz development mode #2508
      • Git ignore themes/xTheme-* #2511
    • πŸ› Bug fixing
      • Fix missing PHP opcache package in Docker Alpine #2498
      • Fix IE11 / Edge keyboard compatibility #2507
      • Use <dc:creator> instead of <author> for RSS 2.0 outputs #2542
      • Fix PostgreSQL and SQLite database size estimation #2562
      • Fix broken SVG icons in Swage theme #2568, #2571
    • πŸ”’ Security
      • Fix referrer vulnerability when opening an article original link with a shortcut #2506
      • Slight refactoring of access check #2471
    • πŸ’» UI
      • Optimize dynamic favicon for HiDPI screens #2539
      • Hide the admin checkbox if user is not admin #2531
    • I18n
    • Extensions
      • Additional hooks #2482
      • New call to change the layout #2467
    • Misc.
      • Make our JavaScript compatible with LibreJS #2576
      • PDO (database) refactoring for code simplification #2522
      • Automatic check of CSS syntax in Travis CI #2477
      • Make our Travis greener by reducing redundant tests #2589
      • Remove support for sharing with Google+ #2464
      • Redirect connected users accessing registration page #2530
      • Add Makefile #2481