Skip to content

Releases: RSS-Bridge/rss-bridge

RSS-Bridge 2025-01-02

02 Jan 12:12
152e96d
Compare
Choose a tag to compare

EDIT: I forgot to update version number in this release, see #4382

What's Changed

No breaking changes. Mostly fixes to existing bridges, and some new bridges.

But, beware that all bridges are now enabled by default! (instead of the selected handful).

If you dont want all bridges enabled do like this in config.ini.php:

[system]

; Only these 3 bridges are enabled
enabled_bridges[] = CssSelectorBridge
enabled_bridges[] = FeedMerge
enabled_bridges[] = FeedReducerBridge

;enabled_bridges[] = *

Noteworthy changes

When debug mode is enabled, php errors are converted to exceptions! Only in debug mode, not in prod mode.

  • fix: convert php errors to exceptions when in debug mode by @dvikan in #4176

The future

These needs to be discussed:

  • Bump min php version from 7.4 to 8.0.
  • Introduce a new document root with separate data folder (e.g. /var/www/rss-bridge/public and /var/www/rss-bridge/var/)
  • rss-bridge is trivially vulnerable to XSS in the HtmlFormat page since we dont sanitize the html(mostly harmless since theres not much to exploit). Feed readers do sanitize html so no problem there.
  • rss-bridge is trivially vulnerable to SSRF (mostly harmless? hard to exfiltrate data) Also we actually want to allow to fetch resources from non-public IP addresses, so maybe introduce a config for this allowance

See also #2735

New Contributors

Thanks all!

Full Changelog: 2024-02-02...2025-01-02

RSS-Bridge 2024-02-02

02 Feb 17:39
ca87562
Compare
Choose a tag to compare

Zero breaking changes

Recommended to checkout revised installation instructions for Debian 12:

https://github.com/RSS-Bridge/rss-bridge#how-to-install-on-debian-12-nginx--php-fpm

Officially hosted instance: https://rss-bridge.org/bridge01/

IRC channel #rssbridge at https://libera.chat/

Thank you to all contributors who keeps the project alive.

A subset of changes which might be interesting

Rss-Bridge can now be password protected with required token in the url:

--- config.ini.php	2024-02-02 18:41:36.881743962 +0100
+++ /tmp/1	2024-02-02 18:42:00.289567705 +0100
@@ -92,7 +92,7 @@
 password = ""
 
 ; Token authentication (URL)
-token = ""
+token = "hunter2"

New Contributors

Full Changelog: 2023-09-24...2024-02-02

RSS-Bridge 2023-09-24

24 Sep 19:10
857e908
Compare
Choose a tag to compare

No breaking changes! (famous last words)

The caching systems have been rewritten.

All existing cache items will be considered expired.

Full Changelog: 2023-07-13...2023-09-24

New Contributors

RSS-Bridge 2023-07-13

13 Jul 21:38
b9102d7
Compare
Choose a tag to compare

The prior release was four days ago.

Making this release because i forgot to modify version string in code.

Full Changelog: 2023-07-11...2023-07-13

RSS-Bridge 2023-07-11

11 Jul 15:12
6c0e186
Compare
Choose a tag to compare

No big changes. Just keeping the project alive.

The CacheInterface has been modified with stronger typehints. Might wanna check that out if are explicitly using a cache in a
custom bridge.

  • new config enable_debug_mode and debug_mode_whitelist[] #3324
  • config now can be modified with env #3428
  • FeedMergeBridge now allows one or more feeds to fail while preserving the others #3476
  • feat: add health check action in #3484
  • feat: add system config enable_maintenance_mode #3497
  • feat(sqlite cache): add config options by #3499

See https://rss-bridge.org/bridge01/ if you want to test this release (it auto-deploys master each day).

We are considering (later) to moving the document root, see #3432

Also see #2735 for project goals and prios.

Full Changelog: 2023-03-22...2023-07-11

RSS-Bridge 2023-03-22

22 Mar 18:37
9bb04ba
Compare
Choose a tag to compare

The only breaking change is that RSS-Bridge now requires php 7.4.

  • fix: Let curl select the default HTTP version instead of hardcoding HTTP 1.1 (#3249)
  • fix: Disallow usage of default password (#3284)
  • refactor: Reformat codebase to PSR12 (#2872) [0]
  • feat: The docker container now uses libcurl-impersonate to better impersonate a browser (#2941)
  • feat: Config option to limit the maximum http message size (#3140)
  • feat: URL filter option to FilterBridge (#3212)
  • feat: Add getKey function (#3275)
  • feat: Add filecache config to enable/disable real purge (#3263)
  • feat: Add new feed format: Sfeed (#3306)
  • feat: Add config option "path" for file cache (#3297)

The public instance https://rss-bridge.org/bridge01/ runs master and can be used to test bridges before upgrading.

Docs: https://rss-bridge.github.io/rss-bridge/

Join #rssbridge on the Libera IRC network for IM [1].

[0] For the people who are concerned about the code reformatting they can
see #2872 for instructions on how to reproduce the diff.

[1] https://web.libera.chat/

RSS-Bridge 2022-06-14

14 Jun 13:54
9503f9a
Compare
Choose a tag to compare

General changes

  • New Requirements
    • require curl extension (#2617)
    • Enable zip extension, required only for FDroidRepoBridge (#2712)
  • UI
    • BridgeCard: Use full bridge name in data-ref tag (#1560)
    • Open new feeds in a new tab (#1389)
  • Docker
    • Docker file: Fix wrong version string in docker images (#2497)
    • Add expose to dockerfile (#2762)
    • Switch to nginx in docker image (#2721)
  • Development
    • BridgeAbstract: Add loadCacheValue() and saveCacheValue()
    • Documentation: Move all wiki pages into the repo and make it pretty (#2494)
    • Multiple: Fix all exampleValues and required variables (#2296)
    • MrssFormat:: Generate using DomDocument
    • add support for more media types as enclosures, handle result of /tex… (#2324)
    • core: Add pr-html-generator (#2525)
    • feat: add a timeout option for http client (#2600)
    • feat: extract curl ua to config value (#2568)
    • refactor: add php autoloader (#2655)

New bridges

Modified bridges

  • Amazon: Add Sweden & Turkey
  • Arte7Bridge: Support all languages (#2543)
  • BinanceBridge: Remove announcements because of Cloudflare issue (#2610)
  • DavesTrailerPageBridge: Add timestamps to feed (#2456)
  • DeveloppezDotComBridge: Full rewrite of bridge DeveloppezDotCom (#2689)
  • EZTVBridge: Switch to using EZTV API (#2476)
  • FlickrBridge: Add content option to By username (#1861)
  • FurAffinityUserBridge: Replate username/password with cookie login (#1641)
  • GelbooruBridge: + inheriting Bridges. Switch to using Gelbooru API (#2472)
  • GiphyBridge: use not rate limited public api key (#2625)
  • GitHub: Allow custom search query (#2593)
  • GiteaBridge: Rewrite to decouple from Gogs and add contexts (#2718)
  • GithubPullRequestBridge: Sort by newest PRs instead of latest updated (#2064)
  • GolemBridge: Remove image galleries (#2761)
  • HaveIBeenPwnedBridge: Use API to get Data (#2720)
  • InstagramBridge: Documentation for configuring this bridge (#2437)
  • MixcloudBridge: switch to using API (#2591)
  • NordbayernBridge: add author & timestamp of article (#2309)
  • PhoronixBridge: support multipage and embed benchmarks (#2522)
  • PixivBridge: Add User context (#2650)
  • TelegramBridge: Fix issues & add support for location messages (#2133)
  • UnsplashBridge: extend functionality (#1813)

Removed bridges

  • ABCTabsBridge: Remove multiple broken, unneeded bridges (#2595)
  • ContainerLinuxReleasesBridge: Delete bridge (#2455)
  • DaveRamseyBlogBridge: fix: remove dead bridge #2345 (#2574)
  • DownDetectorBridge: Remove bridge (#2579)
  • ETTVBridge: fix: remove bridge ETTVBridge (#2511)
  • FootitoBridge: chore: remove bridge (#2576)
  • HentaiHaven: remove dead bridge (#2562)
  • LichessBridge: Remove multiple broken, unneeded bridges (#2595)
  • Mangareader: chore: remove dead bridge (#2597)
  • NeuviemeArt: Exterminate dead bridge (#2784)
  • OpenClassroomsBridge: Remove bridge (#2582)
  • OsmAndBlog: Remove bridge (#2775)
  • QPlayBridge: chore: remove dead bridge (#2564)
  • RTBFBridge: remove dead and unmaintained bridge (#2596)
  • SupInfoBridge: Remove multiple broken, unneeded bridges (#2595)
  • TagBoardBridge: fix: remove dead bridge
  • TheTVDBBridge: fix: remove dead bridge
  • ThingiverseBridge: chore: remove dead bridge (#2563)
  • WallpaperStopBridge: Delete bridge (#2458)
  • WosckerBridge: Remove multiple broken, unneeded bridges (#2595)
  • YahtzeeDevDiaryBridge: Remove bridge (#2580)
  • ZoneTelechargement: Remove bridge (#2678)

Full Changelog: 2022-01-20...2022-06-14

RSS-Bridge 2022-06-10

10 Jun 06:23
de279de
Compare
Choose a tag to compare

See 2022-06-14 release notes.

RSS-Bridge 2022-01-20

20 Jan 05:20
Compare
Choose a tag to compare

General changes

  • CI:
    • Add support for php 8.0 and 8.1 (#2405)
    • Tag docker images with the commit sha (#2418)
    • Temporarly (or permanently) disable phpunit7 until it starts working again (#2392)
    • Update ubuntu version (16.04 => 20.04) (#2136)
  • UI:
    • Dark mode based on user's browser preferences (#2029)
    • Make HTML format default, remove other buttons (#2101)
    • Add button for bridge maintainers' donation URLs (#2102)
  • Docker:
    • Allow to define port via HTTP_PORT (#2285)
    • Add custom config location (#2098)
    • Add support for arm32/64 (#2104)
    • New docker build mechanism (#2268)
  • Features and fixes for bridge maintainers:
    • Accept additional "successful" 2xx status codes (#2310)
    • Backported str_starts_with, str_ends_with and str_contains from php 8 (#2318)
    • BridgeImplementationTest: Implement feature for testing detectParameters method (c580219)
    • Remove redundant "or returnServerError" after getContents/getSimpleHTMLDom/getSimpleHTMLDomCached (#2398)
    • XPathAbstract: Fix encoding of feed output (#2297)
  • Features and fixes for instance admins:
    • Implemented feature to read config from environment variables (#2100)
    • Drop php 5.6 and php 7.0 support (#2224)
  • Others:
    • README: Clarify problems with InstagramBridge and FacebookBridge (#2401)
    • BridgeImplementationTest: Allow multiple contexts to have an empty parameters array (#1954)
    • contrib: Add directory for unorganized bin of various useful things contributed by the community around RSS-Bridge

New bridges

Maintainer changes:

  • Twitter: arnd-s is now maintainer of this bridge instead of pmaziere
  • OpenClassrooms: sebsauvage does not maintain this bridge. No maintainer for this bridge
  • WordPress: aledeg does not maintainer this bridge. No maintainer for this bridge

Modified bridges

  • ARDMediathek
    • Switch to JSON-API (#2380)
  • ASRockNews
  • AmazonPriceTracker
  • AmazonPriceTracker
    • Fixes for subscription items (#2205)
  • AppleAppStore
  • AppleMusic
    • Complete rebuild for new site (#2134)
  • AutoJM
    • Rework of the script to handle the new website (#2390)
  • BakaUpdatesMangaReleases
    • Added option to display releases based on a user list
  • Bandcamp
    • Add support for labels (#2286)
  • Binance
  • CeskaTelevize
    • Follow website changes (#2420)
  • ComboiosDePortugal
    • Temporarily ignore certificate checks (#2403)
  • CourrierInternational
    • Switch to FeedExpander (#2107)
  • DarkReading
    • Fix content extraction (#2315)
  • DealabsBridge
    • Set the Feed URL according to the parameters (#2320)
    • Update groups (#2083)
  • Derpibooru
    • Fix parsing of title (#2346)
    • Make it work again (#2079)
  • DuckDuckGo
  • Economist
    • Fix if no article image present (#2328)
    • Full rework (#2272)
  • ExtremeDownload
  • FSecureBlog
    • Limit number of returned items (#2300)
  • Facebook
    • Increase cache timeout (#2149)
    • teromene and logmanoriginal do not maintain this bridge defacto
  • Filter
    • Various improvements (#2148)
  • FirefoxAddons
    • Fix add-on download links (#2338)
    • Fix download link extraction (#2120)
    • Remove duplicate code (#2209)
  • FuturaSciences
    • Improve content extraction (#2317)
  • GBAtemp
    • Fix news extraction (#2241)
  • Giphy
    • Repair broken bridge (#2347)
  • GitHubGist
    • fix use the css selector "contains" to find a class in the middle of the utility classes (#2306)
  • HackerNewsUserThreads
    • Repair broken bridge (#2344)
  • HentaiHaven
    • domain and content retrieval update (#2402)
  • HotUKDealsBridge
    • Set the Feed URL according to the parameters (#2320)
    • Update groups (#2083)
  • InternetArchive
    • Add detectParameters (#2142)
  • Itchio
    • Remove reliance on in-page timestamps (#2127)
  • MozillaBugTracker
    • Fix incorrect newlines in feed title (#2298)
  • MozillaSecurity
    • Limit items to 20 (#2287)
  • Mydeals
    • Set the Feed URL according to the parameters (#2320)
    • Update groups (#2083)
  • NYT
    • Fix article parsing (#2106)
  • NationalGeographic
  • Nextgov
    • Update categories, fix missing element (#2316)
  • NineGag
    • Updated sections and added video
  • NordBayern
    • Fix election articles (#2253)
    • Add city of Erlangen (#2248)
    • Exclude slideshows when handling articles (#2117)
    • Fix banner URL (#2326)
    • Fix banner images (#2384)
    • Fix jpeg regex (#2118)
    • Follow site updates (#2169)
  • PcGamer
    • Use meta tags to generate feed contents (#2271)
  • Pikabu
    • Cut "script" element from post body (#2125)
    • Do not strip strikethrough tags in body content (716f5dd)
    • Remove whitespace from fake news marker (0ee549f)
  • Pixiv
  • PresidenciaPTBridge
    • Support multiple sections (#2082)
  • RaceDepartment
    • Follow site changes (#2087)
  • RadioMelodie
    • Add timestamp support and content fix (#2105)
    • Fix to use the new website layout (#2330)
    • Replace JS Audio Player (#2233)
  • Reddit
    • Add keyword search function (#2229)
    • Add option to choose for New, Hot and Top submissions (#2189)
    • Return back NSFW posts to feed (#2257)
  • Releases3DS
    • Remove requests to IGN (#2246)
  • Reuters
    • Change timestamp, add new feed, add alt text to image (#2150)
    • Migrate to new API (#2348)
  • Scmb
    • Remove "read more" text only if it exists (#2368)
  • Soundcloud
    • Add support for albums, reposts & likes (#2236)
  • Telegram
    • Add test cases for detectParameters
  • ThePirateBay
    • Repair broken bridge
  • Twitter
    • Continue using existing guesttoken from cache, when requesting a new one failed (#2396)
    • Increase guest token expiry time (#2374)
    • Use Twitter API V1.1 guest/activate for requesting new guest tokens (#2414)
  • Vk
    • Correct video title (9254d14)
    • Do not add repost of deleted post to feed (9254d14)
  • Wikipedia
    • Update elements (#2167)
  • Youtube
    • New features, fixes and refactors (#2208) (#2115)
  • ZoneTelechargement
    • Update website URL (#2289)

Removed bridges

RSS-Bridge 2021-04-25

25 Apr 10:35
Compare
Choose a tag to compare

General changes

  • BridgeAbstract: Correct getIcon method (fc81bed)
  • BridgeCard: Display configuration options (if enabled) when bridge has no parameters (#1968)
  • CI: Replace Travis CI with Github Actions (#1926)
  • Dockerfile: Clean up apt cache, make image smaller (#1880)
  • FeedExpander: Handle Atom enclosures (#2039)
  • FormatFactory: Ignore case in format values (#1967)
  • HtmlFormat: Use str_ireplace() when creating feed format URLs (#2008)
  • JS: Fixed TypeError: textValue is null (2ddd357)
  • README: Fix typo (#2004)
  • README: Update build status badges (#1995)
  • contents.php: Fix logical error in getSimpleHTMLDOMCached function (#1974)
  • core: Add configuration for bridges, allowing private bridges (#1343)
  • core: Use more correct text to indicate errored response from upstream (3226a5e)

New bridges

Modified bridges

  • AmazonPriceTracker
    • Add support for Swedish Amazon (#1856)
  • AppleMusic
    • Use title from website (#1855)
  • Arte7
    • Mitsu is no longer maintainer of the bridge
  • Bandcamp
    • Fix title extraction on empty band pages (#1966)
  • Basta
    • Use defaultLinkTo() (#1862)
  • DockerHub
    • Add detectParameters() (#1996)
  • DownDetector
  • Dribbble
    • Fix pictures parsing (#1911)
  • Economist
    • Fixes for fetching new page structure (#1836)
  • ExtremeDownload
  • FirefoxAddons
    • Add detectParameters() (#1997)
  • Flickr
    • Add filter by media and sort by options (#1758)
  • GenshinImpact
    • Use Asia/Shanghai time zone for article dates (#2040)
  • GithubIssue
    • Fix issue id and comment id extraction (#1950)
  • HDWallpapers
  • Instagram
    • Remove redundant data collection for sidecar and video (#1920)
    • pauder is defacto not a maintainer of InstagramBridge
  • InternetArchive
    • Fix collection links (#1551)
  • KernelBugTracker
    • Use defaultLinkTo() (#1862)
  • LeBonCoin
  • MondeDiplo
    • Fix blog article uri (#1961)
  • Nordbayern
    • Fixed typo of region "Hilpoltstein" (#1962)
  • NyaaTorrents
    • Allow searching by username (#2033)
    • Rewrite as Feed Expander (#2073)
  • Pikabu
    • Marking posts from "Как бы Новости" section, which are funny and deliberately fake (#2032)
  • RadioMelodie
    • Fix header image (#1985)
  • Reddit
    • Add detectParameters (#2070)
    • Rewrite to use JSON (#1781)
    • Add score filter (#2045)
    • Add user option (#1943)
  • Reporterre
    • Use defaultLinkTo() (#1862)
  • Rule34paheal
    • Use full size image (#1775)
  • Skimfeed
    • Add parameter detection (#1877)
  • Soundcloud
    • Fix client ID extraction (#1973)
  • Telegram
    • Add detectParameters() (#1998)
  • Telegram
    • Display the name of the attachments (#2003)
  • Telegram
    • Revert "Prevent double encoding entities" (#1182)
  • TheYetee
    • Fix HTML parsing (#1986)
  • TwitScoop
    • Remove less than (<) character from item title (#2034)
  • Twitter
    • Add option to hide pinned tweet (#1908)
  • Twitter
    • Fix username matching to be case insensitive with noretweet option (#1924)
  • Twitter
    • Improve timeline processing for username mode (#1946)
  • Vk
    • Remove non ascii chars from post date to correctly parse it (#1977)
    • Improved post author computation (#1802)
    • Show repost sources (#1802)
    • Handle second copy quote (#1802)
    • Fixed incorrect image uri's (#1802)
  • ZoneTelechargement
    • Add support for Streaming links (#1858)
    • Change URL load method (#2044)
    • Update Direct Download Unprotected URL (#1963)
    • Update URL and fix typos (#1936)
    • Update unprotected URL and Feed URL (#2065)

Removed bridges