Note that this is bug-fix maintenance release and all included fixes were backported to this release from 4.x branch which is my main goal right now. RSS Guard 4 will bring huge number of new features and fixes later this year.
Fixed/changed:
* Fixed main app window behavior when it is maximized and article is opened in external web browser. (#395)
* RSS Guard installer no longer automatically restart your PC when installing MSVC++ runtime libraries. Sorry!
* Google Reader API plugin now correctly synchronizes changed messages back to server.
Note that this is bug-fix maintenance release and all included fixes were backported to this release from 4.x branch which is my main goal right now. RSS Guard 4 will bring huge number of new features and fixes later this year.
Fixed/changed:
* Properly accept all HTTP redirections, this was regression and is now fixed.
* Fix repeated overwriting of messages due to bad UTC/localtime article timezone handling. (#329)
* Alternating list background colors are now better suited for foreground text visibility. (#378)
* Re-gaining focus after external browser was opened is now optional. (#304)
* MSVC++ runtime libraries are now automatically installed in RSS Guard installer. (#375)
* RSS Guard installer now also creates proper uninstaller and add itself to "Add/Remove programs". (#376)
* Small fixes for "Message filters" dialog. (#373)
* Fixed windows hiding problem when tray icon is enabled. (#371)
* Better favicon downloading strategy which works much much better than previous one. (#363)
* Add switchable action to automatically expand categories when selected.
* Added basic CLI with some basic options, run "rssguard.exe --help" to see them.
* Ability to run multiple instance of RSS Guard at the same time, can be activated via CLI.
* Ability to specify custom user data folder, can be activated via CLI.
* Finnish translation.
* Greatly enhanced user experience for authors of message filters. See the documentation: enums for accepting/rejecting of messages are now directly calleable via their names.
* Labels are even synchronizable for Inoreader and TT-RSS.
* Each message can have assigned multiple labels.
* Feed's view now offers "Labels" folder with handy per-label filtering.
* Labels assigned in message are now even available in message filtering.
* You can assign arbitrary color to each of your labels.
* New bundled icon theme - Numix (https://numixproject.github.io) (Windows only).
* Numix is now default icon theme.
* Built-in web-base message viewer now uses mini.css (https://minicss.org) instead of Bootstrap. This will make viewing of messages quite faster while being more lightweight.
* Message body now has "auto" reading direction - enhances support for RTL messages.
* JSON feeds (https://www.jsonfeed.org) are now supported.
* Added basic CLI interface, run "rssguard --help" to see its API overview.
* Message view header context menu now uses non-closable menu for column show/hide operations.
* Background color of rows in feed/message list can now be alternated.
* Message titles are now properly sanitized before messages are processed by message filters.
* There is a new documentation (https://github.com/martinrotter/rssguard/blob/master/resources/docs/Documentation.md#documentation) (WIP)
* Correct icons are now downloaded when fetching metadata for RSS/ATOM/JSON feeds.
* Fixed crash when clearing contents of statusbar.
* Translations synchronized.
* Message previwers were completely overhauled to support displaying of (active) labels.
* Codebase of web-based and text-based message previwers was unified, they now share all common code.
* Some fixes for message filtering mechanism.
* Scroll position within message viewer is now remembered if message gets reloaded.
* Text-based message viewer now handles newlines better.
* Fixed OPML export/import for some feeds/categories which could be skipped due to various specific errors.
* Synchronization logic for "feeds" is now more universal, resulting in better behavior when running "Sync in" actions.
* Obsolete Qt-related code removed/replaced.
* Source code does not use hardcoded GUI colors anymore. They are fetched from active skin instead, making some texts more readable and GUI more consistent.
* Fixed various MySQL-related problems and errors which rendered MySQL DB backend unusable for many users.
* Icon themes are not bundled on Linux anymore, RSS Guard fully relies on system-wide themes now.
* Big thanks to ttrss.info for providing Tiny Tiny RSS account for testing.
* "Default" icons of feeds/categories are now NOT directly stored in RSS Guard DB and they are dynamically loaded from active icon theme instead. (#200)
* All application resources (skins, icons, ...) are now compiled into the executable file. This allows for easier deployment.
* "Add account" dialog is displayed when app is launched and no accounts exist so far.
* New plugin for Inoreader. This is supported only in full RSS Guard "web-engine" version, because of web OAuth 2.0. The new plugins is in EXPERIMENTAL phase, expect errors and report them.
* NextCloud plugin now allows to persistently set max number of messages to get downloaded per feed.
* Added support for arbitrary external tools (settings category "Web browser & e-mail & proxy") which can open URLs of selected messages. (#136)
* Standard account is now automatically added if RSS Guard is started with empty database.
* Menu action "Select next unread message" in "Messages" menu now works across all feeds, so user can navigate through all unread messages with a sigle keyboard shortcut. (#132, #6)
* Added two bindable menu actions (in menu "Web browser & tabs") which allow to cycle among tabs. (#6)
* Double mouse click on feed or recycle bin items in feeds list now opens all messages of the item in newspaper mode.
* Columns in message list can be hidden/shown/reordered with context menu. (issue #115)
* Auto-update notification is now switchable. (issue #119)
* Messages which are not removed or restored are not instantly deleted from list, they are striked-through instead. This is more resource friendly.
* Message list is now not reloaded when doing batch message operations.
* Message list SQL queries are now fully adjustable. This will allow for integration of labels functionality in the future.
* Auto-update status of feeds is now more general and complete. (issue #91)
* Display feed title in list of messages. (issue #97)
* Displayed feeds can now be sorted by multiple columns. Do you want to sort by author, and THEN by title? Simply click first "Title" column, then on "Author" column. If you hold CTRL during sorting, the sort is done in reverse column order.
* New icons (CC 3.0 BY) inspired by the work of Dave Gandy.
* "Cleanup database" action has now configurable shortcut. (issue #90)
* Fixed #76, now user can choose to "not show the dialog again" when opening hyperlink from message previewer. This only concerns the lite version of RSS Guard which uses simpler text component for message previewing.
* (Linux only) Primary user data/config storage is now undex $HOME/.config/RSS Guard. XDG_CONFIG_HOME variable is respected. If old user data is detected, then old user data path is used. Note that the location of cache is now changed too to $XDG_{CACHE,DATA}_HOME/RSS Guard.
* RSS Guard now uses "_" character as localization file names separator. (issue #75)
* Localizations are now placed in "translations" subfolder instead of "l10n" subfolder. (issue #75)
* User now can place custom user skins in user "data" folder. (issue #81) See "About" dialog for the exact path.
* User now can select if DB transactions are enabled or not. (bug #70) By default, DB transactions are now switched OFF, therefore anyone who wants better performance, must turn them ON in app settings.
* MySQL database backend now requires at least version 5.5, DB encoding is now changed to utf8mb4 character set. (bug #74)
* Height if message attachment image is now configurable, defaults to 36. (issue #69)
* All textual contents of all messages are now locally saved in explicit UTF-8 encoding. This is partially because of MySQL backend. We need to keep encoding of data sent to DB and encoding of DB itself in parity.
* TT-RSS plugin now does NOT require service URL to be entered with "/api/" suffix. In other words, do not use that suffix now, RSS Guard will add it silently when it needs to.
* Qt "styles" are now configurable via settings and not hardcoded in "skin" files. Default "style" is now "Fusion" and can be changed to anything else in settings.
* Development builds are now automatically compiled for Windows and Mac OS X. See https://github.com/martinrotter/rssguard/tree/build-artifacts for links and more information.
* RSS Guard now can be compiled WITHOUT QtWebEngine module. Minimal Qt required was also lowered to 5.6.0.
* Correct message is now selected after some feed gets updated. Multi-selection is not maintained, only focused ("current") message selection is. (bug #46)
* RSS Guard correctly saves windows size/position when maximized on exit. (bug #45)
* Feed updating/message downloading logic is now a bit simpler. Message downloading is still parallelized but final storing into DB is not. It is now queued. This slows down the proces only a bit, but gives more reliability.
* Fixed problems with obtaining custom ID for downloaded messages in TT-RSS plugin. This caused probably a lot of problems with mismatch of downloaded/real unread messages counts.
* Internal message viewer is now based on QtWebEngine module which is based on Chromium project. This speeds up viewing of messages and supports newest HTML 5 or CSS 3 features. Note that this does not mean that fully featured internal web browser will come back. It will not! Only SIMPLIFIED internal web browser is now added. New message viewer is also better for viewing messages in newspaper mode.
* Default skin now uses Bootrstrap-powered look.
* Feed updates are now parallelized up to infinite number of threads. This speeds up speed of concurrent feed updates rapidly (more than 5 times). I was able to update about 160 feeds in 35 seconds. Note that this feature is still in experimental state.
* Middle mouse button click on any message in message list opens message in internal web browser, double click in external web browser.
* Any middle mouse button click on hyperlink opens it in new internal web browser tab.
* Main menu is by default hidden, tab bar is now always visible. Main menu is now accessible via left/top corner iconified button. Users can of course tweak settings in Tools -> Options -> User interface.
* All skins except default are removed because it is difficult for me to maintain all of them. Any user can pickup removed skin from repository, tweak it (it is easy) and send it to me and I will include it with next version of RSS Guard.
* Cmake dependency completely removed!
* Completely abandoned support for self-updating via NSIS installers. Now, RSS Guard is distributed only via ZIP archives on Windows. User still can download them in RSS Guard.
* Internal web browser was REMOVED. This is because old Qt WebKit web component will be removed from Qt and new Qt component for web viewing is based on Chromium, which is fucking joke. Some people hate Chromium because of many (technocal, philosophical, etical) reasons. Moreover, it lacks some useful features and is memory hungry. It is also very buggy in Qt now. Therefore now internal web browser is gone. Message preview component now uses much lighter solution and still can display certain HTML subset. RSS Guard was tweaked to be more friendly to external web browser. Double-clicking any message results in it being opened via external web browser.
* PLEASE, fill this survey: http://goo.gl/forms/ASWg4TFxlS
* Better performance when recalculating counts of all/unread messages in categories with many feeds.
* Custom notification popup window is now removed, it was buggy on Windows 10. Windows 10 offers good built-in alternative. On Linux, we rely on D-Bus notifications.
* NEW ACCOUNT PLUGIN: OwnCloud News API 1.2 is now supported. Note that the support in this version is experimental and relatively basic. So far only syncing of feeds/messages is supported. Feed/category adding/removing is not yet supported yet. The OwnCloud plugin will be enhanced in future RSS Guard versions.
* Recycle bins now have context menu. (issue #162)
* User is now able to delete TT-RSS feeds. (issue #151)
* Brand new "service plugin system" - HIGHLY EXPERIMENTAL and REWRITTEN from scratch. Expect bugs and misunderstandings now! Major parts of RSS Guard were completely rewritten. Note that some functionality might be TEMPORARILY removed.
* Added ability to completely disable notifications (bug #128).
* Added ability to hide status bar.
* Added ability to go to next unread message. (partially bug #112)
* Solved problem when user selects HUGE number of individual messages and marks them read/unread. Reselecting them after change may cause RSS Guard to hang.
* Better info in popup notification when many feeds are updated.
* Fixed obtaining of contents in RSS 2.0 feed entries. (bug #130)
* Improved popup informing about changes in newly installed version.
* Icons in notification popups are now smaller (22 x 22 pixels).
* Encoding selection widget in feed add/edit dialog now detects encodings via case insensitive string matching.