Releases · martinrotter/rssguard · GitHub
Skip to content

Releases

Development builds (5.x line)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 27 May 12:30
31bad5c

These development builds are here for EXPERIMENTING. Things will break and your data will burn in hell. You have been warned!!!

These development builds are automatically compiled from latest sources immediately after each source code change is made and always include newest features and bug fixes.

Individual "devbuild" releases are NOT cross-compatible between each other. This is usually because when I do upgrade internal database structures I do it gradually over several commits.

5.3.0

Choose a tag to compare

@github-actions github-actions released this 12 Nov 13:45

Article filtering now supports explicit full-article overwrites with msg.overwrite = true. Use this opt-in flag when filter changes must be saved even if an existing article would otherwise be skipped; it also allows replacing stored read and starred states. Regular fetching and "Process checked feeds" now share the same saving policy: manual processing no longer implicitly forces updates or bypasses read-state preservation. The new "Force overwrite of accepted articles" checkbox lets you preview or apply full overwrites in the filter dialog without editing the script. Test previews the local saving decision and expected stored values, while processing reports actual outcomes. Overwrites save the complete writable article, so scripts must preserve any stored values they need. Permanently deleted records remain protected. See the updated article-filter documentation for examples and the clarified settings. (#2490)

Added:

  • Database cleanup can now run automatically on application startup or exit using the remembered cleanup choices, including the age limit and database optimization. Automatic cleanup is disabled by default. (#2464)
  • Added CACHEDIR.TAG files to HTTP and image cache directories so compatible backup tools can exclude cached content. (#2482)
  • Feed and article list filters can now match any selected condition (OR) or all selected conditions (AND). Each dropdown remembers its own mode, with OR remaining the default.
  • Added a "Show enabled feeds" option to the feed list filter menu. (#2477)
  • Added "Show feeds" and "Show folders" options to the feed list filter menu. (#2476)
  • External tools can now use custom icons, with image selection and an option to restore automatic icons beside "Edit tool path". Icons are saved in settings and shown in all "Open with external tool" menus. (#2492)
  • Article-filter testing now separates the script decision from the expected database outcome, including skipped updates and preserved states. Manual processing retains per-article results, reports completion or partial failure, and displays script logs. Label-only changes and later feed cleanup are reported separately. (#2490)
  • Added the transient msg.overwrite article-filter property, also available in the visual generator, with one saving policy for fetching and manual processing. Reorganized the filtering documentation with overwrite, deletion, settings, and API guidance. (#2490)
  • Documented the StartAllBack incompatibility with Windows taskbar thumbnail buttons, including a settings tooltip and instructions to disable the buttons to avoid crashes. (#2462)
  • Batch feed editing can now fetch a separate icon for each feed in the background, with progress and cancellation. Failed fetches preserve existing icons, and fetched icons are applied only when the dialog is saved.
  • Confirmations for assigning or removing article filters for folders or all feeds can now be disabled separately using "Do not show again". (#2457)
  • Read and unread fonts can now be configured separately for the feed and article lists. Resetting the unread font restores the normal font in bold. (#2443)
  • Default keyboard shortcuts now provide modified reading commands, standard tab controls and Ctrl+K command groups. Saved assignments, including cleared shortcuts, continue to override defaults.
  • Feed/article pane and search focus commands now activate the Feeds tab when invoked from a browser or media-player tab.
  • Preview scrolling now moves by 80% of the viewport in the active web/text browser instead of a fixed 50-pixel step, leaving 20% overlap for easier reading. (#2514)
  • Configured keyboard shortcuts now take precedence in the main window and embedded media player. Editable inputs retain typing and standard editing operations; unrelated application commands remain available. Dialogs, popup menus and shortcut recording retain normal handling.
  • Article data can now be copied immediately using the previously selected format.
  • RSS Guard now asks for confirmation before rearranging feeds or subfolders alphabetically. (#2430)
  • Discovered feeds can now be sorted by title or type from the column headers. (#2435)
  • WordPress posts and pages can now be discovered and read through the WordPress REST JSON API. Thanks to @darcosion. (#2433)
  • MediaWiki category and search pages can now be added as feeds, with full article HTML loaded through the MediaWiki API at a paced request rate. Each refresh fetches five newest results plus up to five older entries, with backfill progress saved across restarts after successful article storage.

Fixed:

  • Fixed missing notification translations and incorrect translation contexts in the visual filter generator, feed dialogs, and Windows taskbar tooltips. Translation updates now exclude third-party build files, retain disabled-feature coverage regardless of checkout location, and reject extraction warnings without changing the catalog while supporting Qt 6.5.
  • Fixed article-list sorting losing saved sort columns on startup or when switching column profiles. Profile changes now refresh sorting consistently from both settings and the column menu, preserve multicolumn priority, and keep sorting independent of column visibility.
  • Fixed a crash when deleting multiple selected feeds, including feeds inside folders. (#2507)
  • Fixed Windows installer packaging rejecting MSVC import libraries installed alongside service-plugin DLLs. Import libraries remain in the portable archive and are omitted from the installer.
  • Hardened Windows installation and upgrades: failed uninstallers stop upgrades, unsafe legacy upgrades and unsuitable target folders are rejected, and removal preserves files outside the packaged payload. Local ownership records and early recovery uninstallers allow failed installations, upgrades, and partial removals to be retried, including when another copy owns the Installed Apps entry. Added versioned shared shortcuts, installer metadata, staged-payload checks, reliable template rebuilds, and isolated regression tests using the actual previous installer. Silent installation no longer opens documentation; debug symbols remain in portable archives.
  • Updated the article extractor's Go dependencies and pinned the CI compiler. Added Go regression tests, vulnerability checks, and reliable rebuilds after source, dependency, or compiler changes. Windows packages now consistently use rssguard-article-extractor.exe, and extractor sources use LF endings for consistent CI checks on Windows.
  • Article extraction now resolves links after redirects, shares page cookies with image downloads, honors cookie expiry and deletion, and keeps private headers on their configured origin. Embedded images are cached and no longer overridden by responsive alternatives. Fixed special characters in proxy credentials, malformed-input and empty-result errors, and combined plain-text/image flags. Added download, input, output, and network-time limits, including bounds for compressed and non-UTF-8 pages.
  • Opening articles in background tabs no longer briefly draws their toolbars and loading indicators over the Feeds tab.
  • Database cleanup now checkpoints SQLite after optimization and reports blocked checkpoints. Added help explaining why SQLite database files on Windows can remain larger than the displayed data size. (#2504)
  • Feed refreshes now retry articles after parsing or storage fails, even when the server uses ETags. A 304 response without an ETag keeps the last successful validator.
  • Article inserts now preserve literal text such as :score and use the actual database IDs for notifications and labels. Large refreshes batch database writes and find articles without feed-supplied IDs faster. SQLite reuses reader connections for article lookups and live feed counts. MariaDB 10.6.1 or newer groups inserts within the server's packet limit.
  • Standard RSS feeds release their parsed documents before saving articles. The downloader also releases unread articles after delivering the refresh notification.
  • Article-filter test snapshots now isolate mutable attachments, and tests spanning multiple feeds use each article's actual feed context. (#2490)
  • Permanently deleted article records and their label associations can no longer be modified by article updates, including explicit filter overwrites. Trashed and permanently deleted articles no longer generate normal unread-fetch notifications. (#2490)
  • Clarified the article-update settings as "Ignore body-only changes from feeds" and "Preserve read state on feed updates", with explanatory tooltips and existing preferences preserved. (#2490)
  • Debug and informational logging is now disabled by default, including early startup. Saved logging preferences and explicit debug or memory diagnostics options still enable it. (#2496)
  • Feed discovery now uses the same icon candidates and fallback as metadata fetching, so feeds hosted by services such as FeedBurner use the publisher's icon. (#2480)
  • Fixed discovery reusing the wrong icon for different feeds hosted on the same domain. Failed or invalid icon downloads are no longer cached. (#2480)
  • Fixed feeds failing to update despite successful metadata retrieval by improving default HTTP Accept headers and making discovery requests consistent.
  • Improved feed discovery by skipping guessed endpoints once the supplied URL is recognized as a feed.
  • Improved URL-based deduplication of discovered feeds and fixed a memory leak when discarding duplicates.
  • Fixed query-string handling in RSS/RDF, WordPress and sitemap discovery probes.
  • Label assignment and removal now work after paging in the article-list "Labels" and preview "Show all labels" menus, including preview sidebar buttons. Preview label menus reset correctly for accounts without labels, and refreshing them no longer leaks label actions. (#2469)
  • Failed article storage is now reported as a feed update failure instead of ...
Read more

5.2.5

Choose a tag to compare

@github-actions github-actions released this 20 Aug 09:01

Fixed:

  • MariaDB no longer creates duplicate articles when feeds return more than ten items. (#2410)
  • Opening a file in an already running RSS Guard instance no longer crashes after closing feed discovery. (#2407)
  • Added a couple of fixes in relation to issue #2408:
    • Made UI texts more consistent when talking about "attachments", also fixed in documentation.
    • Changed UI text for "Open articles URL directly..." feature and added help spoiler and tooltip explaining its function to it.
    • "Play in media player" feature is now expanded and it offers dropdown submenu where user can "play" article attachments. Same behavior was expanded in article list context menu.

5.2.4

Choose a tag to compare

@github-actions github-actions released this 17 Aug 08:04

There have been some BTC and USD donations in the past several months and years. I very value these things and let me say it is not because of their monetary aspect. It is because that's a proof that you - users - value and cherish RSS Guard and use it regularly.

https://rssguard.readthedocs.io/en/stable/donations.html

Thank you.

Added:

  • Feed and article searches can now be set to run only after pressing Enter. (#2277)
  • The Settings window now reopens the section that was selected last. (#2365)
  • Article filters can now be moved five positions at a time with Shift, or directly to the top or bottom with Ctrl. (#2320)
  • Added icons to more commands and context-menu actions.
  • Feed-list deletion confirmations now identify the selected item and show how many feeds and folders it contains. (#2396)
  • Article filter scripts can now retrieve matching stored articles and inspect their custom data.
  • Generated JSON, RSS, Atom and RDF feeds can now attach persistent custom data to their articles.
  • Individual feeds can now be left out of global unread counters. (#1955)

Fixed:

  • Saving an image from an article now writes the complete image and suggests its actual filename instead of always using image.png. (#2399)
  • The visual article-filter generator now uses safer defaults and warns about filters which would discard every newly downloaded article. (#2397)
  • Article limits changed through "Edit child feeds" now apply correctly to all selected feeds, including recursive edits. (#2392)
  • Feed list filtering now remains responsive with very large feed trees.
  • Processing existing articles with filters now remains fast when many articles are ignored.
  • Database operations no longer repeatedly reapply connection settings that are already active.
  • Updating large batches of articles now requires far fewer database queries.
  • Windows taskbar feed-fetching errors are now highlighted independently of unread article counts.
  • Cloudflare and similar website anti-DDoS checks now work more reliably. (#2351)
  • Google Reader API accounts now receive read-state changes made in other clients when "Download unread articles only" is enabled. (#2385)
  • Article filters now process batches of downloaded articles much faster, especially when several filters are assigned to a feed.
  • Stopping feed fetching no longer blocks the application while active downloads are finishing. (#2375)
  • Opening the first article in the WebEngine viewer on Windows no longer briefly flashes the main window.
  • Paused tray icon now respects the configured monochrome or colored appearance. (#2373)

5.2.3

Choose a tag to compare

@github-actions github-actions released this 23 Jul 09:33

Added:

  • Highlighting the Windows taskbar after feed-fetching errors can now be disabled in settings.
  • Article and feed list titles now use available horizontal space by default.
  • Feed fetching can now be paused or resumed from the tray icon menu. When paused and there are no unread articles, a pause symbol is shown in the tray icon and Windows taskbar badge.
  • Windows taskbar previews can now show buttons for pausing feed fetching, fetching all feeds, and opening settings.
  • Article filters can now be generated with a visual rule builder for common conditions and actions, without writing JavaScript. (#930)
  • Article-list notifications can now switch pages with the mouse wheel while hovering the article list.
  • Custom skin colors can now be reset all at once to the colors defined by the current skin.
  • Image height optional limit returns. Now you can set image height separately for enclosures and for main article content. (#2339)
  • Show some additional information when hovering author/feed/date header in article previewer. (#2346)
  • Minimal-* skins now have separator drawn between article header and article body. (#2345)
  • RSS Guard now asks for confirmation before assigning or removing an article filter for all feeds in a folder or by using "Check all"/"Uncheck all". (#2355)
  • Errors in article filters (like bad syntax) now causes the feed marked as failed (instead of failing silently like it was up until now).

Fixed:

  • Importing from RSS Guard 4.x now preserves feeds with the same URL in different folders. (#2155)
  • Article preview URLs with anchors now open the complete original address. (#2367)
  • Article-list column layouts are now saved reliably when switching between feeds and folders.
  • Article viewer now stays visible when configured to do so.
  • Article list order is now stable when articles have identical values in the selected sort columns. (#2361)
  • Article-list notifications now handle paging more reliably.
  • Errors preventing an account's feeds from starting to update are now reported correctly.
  • Failed loading of articles no longer crashes the application when no feed or folder is selected.
  • Weekly article filters now handle local dates and the New Year boundary correctly.
  • Database cleanup errors no longer leave the cleanup dialog unusable.
  • Incompatible external databases no longer cause an unintended fallback to a new local database.
  • Articles with custom metadata containing special characters are now stored correctly.
  • MariaDB databases with special characters in their names are now handled correctly.
  • Invalid article-filter results no longer cause incoming articles to be silently discarded.
  • Article-filter duplicate checks now handle large accounts much faster, particularly when isAlreadyInDatabase* functions are used.
  • Testing an article filter with a folder or account selected no longer crashes when the filter accesses feed details.
  • Article filters now handle malformed XML data correctly.
  • Article-filter testing no longer crashes when no account or feed is available.
  • Failed article-filter saves no longer leave the active filter out of sync with its saved version.
  • Invalid article-filter import files now report an error instead of appearing to import successfully.
  • Failed article-filter removals no longer leave the active filtering state inconsistent.
  • Failed article-filter assignment changes no longer leave feeds in an inconsistent state.
  • Deferred article-state synchronization is now checked safely while accounts are updating.
  • Deleting an account now also removes its pending article-state cache.
  • Repeated MariaDB connection tests no longer leave temporary database connections behind.
  • Database worker cleanup is now handled safely during application shutdown.
  • Manually processing existing articles with a filter now preserves filter changes to their read state.
  • Gmail plugin now correctly fills-in full e-mail address of a recipient when the recipient is selected from drop-down list of recipients.
  • Miniflux sends "weird" enclosure information, so tweak was made to account for it. (#2354)
  • Row state is updated more properly when switching article importance. (#2341)
  • Wrong filtering indication when there was no active filter in feed list. (#2352)
  • Fixed some cache-related problems when editing accounts.
  • Vulkan SDK library is deployed now on Windows if needed. (#2350)
  • When opening article with external tool from article list, it will get marked if the behavior is enabled in settings. (#2344)
  • When an article is unread and is "selected" via right-mouse click then the column sorting or phrase filtering does not mark the article read anymore. (#2347)

5.2.2

Choose a tag to compare

@github-actions github-actions released this 06 Jul 15:22

I used AI to perform static codebase analysis and the analysis discovered many many bugs vast majority of which I was able to subsequently reproduce. Most of them were crashing bugs. I fixed them but it is possible (and likely) that some other bugs got introduced instead.

I do not plan to add new features for some months now because we need to stabilize the codebase. So only minor feature refinements and bug fixes will be added for some time.

Added:

  • Splash screen displayed during application startup can now be enabled in the general settings and is disabled by default. (#2329)

Fixed:

  • Enhanced contrasts for colors in "minimal-dark" skin. (#2343)
  • Unselecting highlighter in article list did not properly propagate the change. (#2342)
  • Feed list now correctly applies the restored column and sort order to accounts and feeds loaded during application startup.
  • Custom notifications no longer crash when an article-list notification is removed after exceeding the available screen space.
  • Article filters no longer crash the application when attempting to remove an attachment with an invalid index.
  • Update dialog no longer crashes when the server returns no releases.
  • Localization settings no longer crash when translation contributor metadata is empty or malformed.
  • Preview scrolling actions no longer crash when a media player tab is active.
  • WebEngine callbacks no longer access destroyed browser tabs after asynchronous page operations finish.
  • Fix marking articles read with delay. (#2315)
  • Starting another RSS Guard instance no longer risks freezing the already running application.
  • Closing a tab while a Gemini page is loading no longer risks crashing the application.
  • Invalid folder relationships no longer cause RSS Guard to freeze while loading accounts or imported data.
  • Accounts can no longer be deleted while their feed tree is being synchronized.
  • Fixed a possible crash while synchronizing XMPP chat rooms with missing names.
  • Feed saving and importing errors no longer cause the application to crash.
  • Feed and folder deletion now uses the correct database connection.
  • Article labels are now correctly preserved when importing from QuiteRSS.
  • Feed and folder descriptions are now correctly preserved when importing from RSS Guard 4.x.
  • Fixed discovery of gzip-compressed sitemap feeds.
  • Nextcloud feeds referencing missing folders no longer crash account synchronization.
  • Account saving errors no longer cause the application to crash.
  • Failed Tiny Tiny RSS synchronization no longer replaces the local feed tree with an empty one.
  • Tiny Tiny RSS article attachments now use the correct URL and media type.
  • Failed Gmail account synchronization no longer leaves the account permanently busy.
  • Forwarding a Gmail message no longer crashes when its details cannot be downloaded.
  • GReader-compatible accounts no longer expose sensitive login details in the debug log.
  • Release debug logs no longer expose values stored in the database.
  • Newly downloaded articles now receive correct database identifiers when using MariaDB.
  • Feed updates can now be cancelled more reliably.
  • Authentication details are no longer forwarded to other websites during redirects.

5.2.1

Choose a tag to compare

@github-actions github-actions released this 30 Jun 13:19

Added:

  • Feed and article lists now share common handling for column visibility, order, width and sort state.
  • Feed list column order is now saved and restored together with other column settings.
  • Column header context menu now offers per-column submenus where visibility and resize mode can be changed.
  • Column resize mode can now be switched between interactive sizing, stretching and resizing to contents, and the selected mode is saved with the column state.
  • Column header context menu can now switch whether the last visible column stretches to fill available space, and this setting is saved with the column state.
  • Column header context menu can now switch cascading section resizing, and this setting is saved with the column state.
  • Column header context menu can now autosize a single interactive column or all visible interactive columns.
  • Column header context menu now highlights the column which was right-clicked.
  • Article list can now optionally remember separate column layouts for feeds, folders, accounts, labels, search folders, important articles, unread articles and recycle bin. (#1297)

5.2.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 09:50

Added:

  • Feed auto-fetch can now also be delayed while Feral GameMode is active on Linux and startup auto-fetch is skipped when GameMode is already active. (#2265)
  • WebEngine builds can now use RSS Guard generated proxy auto-config (PAC) rules so article/web browsing follows per-account and per-feed proxy settings more closely. (#2273)
  • Generated PAC rules now also cover related subdomains and use Public Suffix List data, so feeds such as feeds.bbc.co.uk can also proxy resources from images.bbc.co.uk. (#2273)
  • Standard feeds can now define extra proxy domains, useful when article images, stylesheets or other page resources are loaded from a CDN or another domain that should use the same feed proxy. (#2273)
  • RSS Guard now asks for proxy credentials when a WebEngine page needs proxy authentication and can fill credentials from the current feed proxy when available. (#2273)
  • Network settings again include an option to ignore all cookies, which clears stored cookies and prevents new cookies from being accepted.
  • Standard RSS/ATOM feeds can now individually ignore cookies while downloading feed data.
  • Stored cookies can now be deleted from the Tools menu.
  • Custom skin colors can now override the feed list article count color separately from feed titles, including a separate highlighted color. (#2275)
  • Settings dialog can now search across available settings and highlight matching controls. (#1754)
  • Standard RSS/ATOM feeds can now optionally be reported as broken when they are valid but contain no articles. (#2039)
  • Standard RSS/ATOM feeds can now override the application-wide feed connection timeout per feed. (#1023)
  • Tray icon can now use a custom background color and unread-count text color, with an option to reuse the generated icon as the application icon. (#1973)
  • Support for more benevolent parsing of Gemlog entries (#2295).
  • Article list can now show when an article was received by RSS Guard. (#947)
  • Feed deep discovery now actually scrapes all links found in the website and checks if they are feeds or not. This greatly enhances usability of the deep discovery mode and discovers many more feeds than before. (#2306)
  • Search boxes now show a small dot when the feed or article list is hiding some items because of active filtering. (#873)
  • Articles now have a shortcut-assignable action to open the homepage of the feed they belong to. (#2060)

Fixed:

  • Parallel feed updates no longer crash when multiple update results are processed at the same time. (64cf521)
  • Links in WebEngine articles opened from feeds such as Kill the Newsletter now open correctly instead of being swallowed by the embedded page. (#2272)
  • Relative article URLs resolution was kinda broken. (#2282)
  • Clicking article URL did not work when the URL had "fragment" set. (#2293)
  • The default proxy setting now uses Qt/system default proxy behavior instead of forcing no proxy. (e0263ad)
  • WebEngine article loading now keeps the current feed context, so feed-specific proxy credentials remain available while the article page loads. (fdd0f00)

5.1.2

Choose a tag to compare

@github-actions github-actions released this 11 May 11:43

Added:

  • Show URL of loaded website in status bar. (#2097)
  • Article extractor now can be called with existing article HTML and thus can run Readability algorithm directly on the existing article data instead of downloading full source web page. (#2252)
  • Auto-fetching articles can now be limited to times when a network connection is active. (#2211)
  • Feed retrieval can now be skipped while Windows Game Mode is active. (#1230)
  • Text-based article viewer can now load remote article images when external resources are enabled, cache them, and show the same article without images when external resources are disabled. (08a2127, 561f5b4, 7a179c4)
  • Text-based article viewer can now display directly opened image files. (4c78196)
  • Text-based article viewer can now show directly opened JSON files in readable form and render directly opened Markdown files.
  • Updated Japanese translation. (#2262)

Fixed:

  • Initial state of "web attributes" is properly set in WebEngine builds. (#2227)
  • Fix some cases where link does not load in internal browser when clicked.
  • Article filter action "Filter articles like this" now uses the article that was actually right-clicked after testing a filter. (#2139)
  • Image attachments in articles now respect the configured height limit in both text-based and WebEngine-based viewers. (#2254, 8f4abac, bc247ad)
  • Image context menu actions in the text-based viewer can again detect the image under the cursor, copy its URL, copy the image and save it. (c3902db)
  • Relative links opened from the internal browser are now resolved against the currently loaded page before opening. (4c78196)
  • Directly opened non-HTML text content is now displayed as text instead of being treated as HTML. (4c78196)

5.1.1

Choose a tag to compare

@github-actions github-actions released this 05 May 07:27

If your RSS Guard crashes on Windows upon article selection, then you might have some DirectX libraries missing. Install them with this command.

dism /Online /Add-Capability /CapabilityName:Tools.Graphics.DirectX~~~~0.0.1.0

Added:

  • Option to keep feed list selection in the middle, switchable in settings. (#2238)
  • Nextcloud News plugin can now add feeds. (#2065)
  • Official Linux builds now include Qt 5 text-viewer and WebEngine-viewer variants again. (211a747, 3795eb7, 8e678c2, 55e4dbd)
  • Updated Japanese, Chinese Simplified and Crowdin-managed translations. (#2235, e6e3e17, 1f2d25a)
  • Feed state propagation in feed list is now switchable. (#2226)

Fixed:

  • RSS Guard no longer asks Windows to connect to an offline printer while starting, so the application should open normally even when the default printer is unavailable. (#2230)
  • RSS Guard now starts correctly from the Windows startup entry instead of closing almost immediately. (#2234)
  • Gemini links now use the correct scheme handler. (d5a02a7)
  • Removed noisy QPalette color-group warnings triggered while loading skins. (d5a02a7)