v1.2.2: fetch-timeout 20s + poll_parallelism_limit 0 config

- parse_feed: expliciete aiohttp ClientTimeout(total=20) zodat een hangende
  feed nooit de poll blokkeert (sessie had geen total-timeout; feeds bleven
  open en semaphore-sloten raakten bezet)
- poll_parallelism_limit: 0 in instance-config (alle feeds parallel)
- RTV Oost-feed vervangen door directe URL (rss/index.xml, geen redirect)
This commit is contained in:
eddy 2026-09-05 18:14:04 +02:00
commit 79a8d0bc71
2 changed files with 6 additions and 2 deletions

View file

@ -255,7 +255,11 @@ class RSSBot(Plugin):
feed = Feed(id=-1, url=url, title="", subtitle="", link="") feed = Feed(id=-1, url=url, title="", subtitle="", link="")
elif url is not None: elif url is not None:
raise ValueError("Only one of feed or url must be set") raise ValueError("Only one of feed or url must be set")
resp = await self.http.get(feed.url, headers=self._feed_get_headers) resp = await self.http.get(
feed.url,
headers=self._feed_get_headers,
timeout=aiohttp.ClientTimeout(total=20),
)
ct = resp.headers["Content-Type"].split(";")[0].strip() ct = resp.headers["Content-Type"].split(";")[0].strip()
if ct == "application/json" or ct == "application/feed+json": if ct == "application/json" or ct == "application/feed+json":
return await self._parse_json(feed, resp) return await self._parse_json(feed, resp)

View file

@ -1,5 +1,5 @@
id: nl.eddydevink.rss id: nl.eddydevink.rss
version: 1.2.1 version: 1.2.2
modules: modules:
- buzzrss - buzzrss
main_class: RSSBot main_class: RSSBot