Skip to content

Changelog1.x

Version 1.2.0

Features

  • api: add opt-in interactive admin API reference (#1010) (1925e8c)
  • api: admin errors return ProblemDetails operators can match to logs (#1067) (e252f12)
  • api: versioned admin API contract keeps the UI in sync with backend routes (#1069) (abc4c0c)
  • arr: show Sonarr/Radarr import health on the Overview dashboard (#1054) (3e7cb83)
  • db: optional PostgreSQL support for the main database (#1013) (5099666)
  • health: add on-demand GC memory diagnostics (#1005) (5f52db8)
  • health: expose Prometheus metrics for streaming and providers (#1009) (d38b04f)
  • health: health checks skip non-media files (images, subtitles, NFOs) (#1001) (039eab9)
  • health: keep known degraded gaps off Usenet providers (#1055) (be76ffc)
  • health: keep slightly damaged videos playable instead of replacing the whole release (#1035) (914a5d8)
  • health: re-check library health after changing Usenet providers (#1015) (11d14dc)
  • health: repair missing articles in the background using PAR2 recovery data (#1032) (a125fe2)
  • health: replace releases with unplayable corrupt data instead of serving silent gaps (#1050) (45d8a9f)
  • health: show deleted and repaired NZBs in the health UI (#1004) (c7606de)
  • queue: audio-only NZBs now import instead of being rejected (#1002) (4449bb2)
  • queue: keep NZB uploads accessible while queue is active (#1008) (6daf2d7)
  • queue: recover missing articles using equivalent segments from other copies of the same release (#1039) (4b36207)
  • queue: reorder waiting jobs with up/down controls (#1007) (f3359ba)
  • ui: choose the category when uploading NZBs from the queue page (#1049) (5430cd1)
  • ui: search, filter, and sort queue and history (#1006) (6683b9f)
  • usenet: concurrent readers of the same file share one Usenet stream (#1046) (df945d9)
  • usenet: preserve confirmed article misses across restarts (#1028) (5689c90)
  • usenet: separate queue pipelining from streaming playback controls and add a configurable batch width (#1030) (c1bf58c)

Bug Fixes

  • api: HTTP clients time out and the process shuts down within 5 seconds (#1066) (c02c689)
  • arr: parse string event types in history responses (#1056) (49a4e7a)
  • db: repair lowercase GUIDs so cleanup and file lookup stop missing rows (#1076) (f70d191)
  • deps: Bump github/codeql-action in the github-actions group (#1079) (a62a9e8)
  • deps: Bump the npm-minor-and-patch group (#1078) (e840ae6)
  • deps: Bump the nuget-minor-and-patch group with 6 updates (#1080) (52a2272)
  • deps: Bump zensical from 0.0.53 to 0.0.54 in the docs-python group (#1077) (1f9f45b)
  • docker: fail startup when the config directory is missing or unwritable (#1058) (702565f)
  • health: background health scans start correctly on dev and rc (#1044) (be770a2)
  • health: Health page no longer shows a stuck initial scan pending banner (#1085) (5c4a0ac)
  • health: PAR2 repair reconstructs files when source articles are corrupt (#1060) (dc892bc)
  • nntp: providers no longer benched for minutes by brief network hiccups (#1018) (a3867e3)
  • queue: stop grinding remaining RAR volumes after a header timeout (#1059) (ef17d38)
  • resolve medium-severity CodeQL quality warnings (#1081) (66f99d1)
  • sab: queue and history panels no longer fail with server errors on PostgreSQL (#1088) (678d429)
  • streams: seeking and article retries no longer stall when Article RAM is full (#1053) (d53ba5e)
  • ui: play files from the web UI over plain HTTP (#1037) (86a4468)
  • ui: queue provider labels no longer flicker during download progress (#1016) (f062a04)
  • usenet: log a single warning when a Usenet article is missing on every provider (#1061) (9458ae5)
  • webdav: paused or trickling clients no longer wedge all streaming (#1052) (ad2a7ee)
  • webdav: repair files that cannot seek through missing tail articles (#1014) (9f544eb)
  • webdav: serve tail seeks from lazy RAR volumes (#1087) (a529699)
  • webdav: serve the WebDAV README through the UI port and freeze HTTP contracts (#1072) (8c16695)

Performance Improvements

  • nntp: decode yEnc body data in buffered batches (#1082) (104beec)
  • queue: keep playback smooth during import bursts by parsing RAR/7z archive headers asynchronously (#1040) (48013a2)
  • streams: lower streaming memory use with bounded 256 KB segment buffers (#1042) (fb498be)
  • usenet: accelerate playback starts and sustained streaming (#1029) (84274ca)

Refactors

  • api: keep queue and WebDAV independent of admin API controllers (#1070) (54c6afd)