❌
❌
❌
❌
❌
Normal view
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