Releases
v0.12.0
Compare
Sorry, something went wrong.
No results found
0.12.0 (2026-06-23)
Bug Fixes
activity: delete all deduplicated sibling rows when removing an activity entry (15b7a09 )
activity: migrate Failed stat to history and restore delete for failed records (b4efe89 )
activity: show contextual status label instead of generic active downloads count (c4a1e4c )
add season override to Match Folder modal for unparseable filenames (9ff1644 )
allow editing and deleting user-created custom formats (ed445ff )
auth: handle http origins in trusted origins validation (4c924d8 )
blocklist: blocked keywords no longer re-added after server restart (a8cbfe3 )
blocklist: improve blocked # page(s) UX consistency (0f7948e )
ci: lower coverage thresholds to match current baseline (a00c1e8 )
clarify block labels and improve removal cleanup (f47dd20 )
config: migrate csrf.checkOrigin to trustedOrigins wildcard (29d4430 )
contain sidebar to dynamic viewport height to prevent menu overflow blocking page scroll (daf58d8 )
convert empty string to null for permanent blocklist duration (9b9e48c )
csrf: replace broken SvelteKit wildcard CSRF with proper LAN origin guard (6593b5f )
dashboard: make Coming Up items clickable links to library detail pages (797ce56 )
deps: bump undici to 7.28.0 and ua-parser-js to 2.0.10 (security) (5fc95c0 )
discover: default series type to Anime when TMDB detection identifies anime content (4906b44 )
discover: persist search query in URL and add back button on detail pages (54521a0 )
discover: show matched blocked keywords on content block screen (4788541 )
enable profile-driven upgrades between streaming and downloaded media (9ab9066 )
hide media type filter in manual importer when launched from library item (c781101 )
importer: show root folders in folder browser. (67ea5db )
indexers: add torznab URL auto-discovery and improve caps handling (64c69f3 )
indexers: auto-disable orphaned managed indexers on connection test failure (a0ee254 )
indexers: decouple path routing from category restriction, drop dead vars (41c89d2 )
indexers: improve season-pack coverage and category mapping (3b53709 )
indexers: pass upstreamEnabled through page server load to UI (9071105 )
integrations: media server connection testing and version tracking (769b56a )
integrations: notify media servers on file rename (e19fb61 )
integrations: persist version metadata on manual media server test (9d948b2 )
integrations: wire media server notifications and fix Emby stats URL (8e292b6 )
library: apply monitorSpecials to episode-group season rebuilds (b4be22e )
library: pass library scope as form field so monitor-all works in custom libraries (10b5ee2 )
library: pass library scope as form field so monitor-all works in custom libraries (tv) (274e3e8 )
lint: remove redundant svelte-ignore a11y comments (ecca088 )
lint: remove unused imports/vars and add each-block keys in upstream code (2a8b83a )
lint: resolve formating issues (d2c0ce7 )
logs: improve status bar clarity and contextual filter label (1828ed6 )
move failed downloads from Active to History tab (237e5ed )
naming: preview endpoints always returned 500 due to missing success flag in response and DB path drift on failed folder rename (18bb403 )
overhaul date/time handling with i18n-aware display and timezone safety (3db865e )
parser: handle fansub/BD-BOX naming conventions (b0e24c4 )
prevent fansub "S1 - NN" notation from matching as multi-season pack (99a7371 )
queue cards work across Active and History tabs (264f770 )
release-status: make movie release status date-driven and consistent (3b5345c )
remaining release date loose ends (f50162c )
remove dead showSelectedItemEditor state and type getTmdb season response (af1edfd )
remove monitoring status banner from TV series page (b138f47 )
resolve absolute episode numbering for unmatched file matching and auto-matcher (4c9436f )
resolve manual grab failures for usenet and improve grab diagnostics (9b3a11b )
root-folder: use POST instead of PUT for library classification endpoint (012d90e )
search: add smarter title selection to reduce indexer load (6df36ca )
search: stop category filter from dropping validated season packs (7c0b560 )
season pack scope, -Infinity score, eliminate double evaluation, catch block decision (484b4cc )
sse: reconnect with new URL when filters change (8e3fdd5 )
stalled downloads feature reliability and defaults (fd931c4 )
streaming: prevent body consumption crash and enforce VOD playlist markers (354cb80 ), closes #EXT-X-ENDLIST
test: mock DB and notifier in RenamePreviewService tests (b4d600a )
test: resolve lint warnings by using shared fixture factories (b97ba03 )
test: resolve TMDB integration test timeouts (28da29d )
ui: replace button dropdown triggers with div for Safari iOS compatibility (ac17532 )
unmatched: surface match errors to UI and pass episode from request (87f2d0a )
use protocol-aware stall reason for torrent vs usenet downloads (97d1adb )
use synchronous DB API in addToBlocklist and update Emby test (9ea0b0e )
use TMDB status field to prevent old movies showing 'In Theaters' (5ecd969 )
wire availabilityDelay through API add/edit/get endpoints (5bfb8d0 )
Features
add download release date tracking and in-theaters availability (1c0f5d3 )
add In Theaters section, release date overhaul, and per-movie availability delay (1da3d19 )
apply global preferred language as default original language filter on discover (44798aa )
assemble GrabDecisionPipeline with all stages (07d2ffa )
assemble SearchEligibilityPipeline, move buildExistingAttrs to scoring/utils (c9c22b8 )
batch subtitle auto-download for seasons, series, and collections (7806e50 )
calendar: add content rating, genre/rating filters, and non-library TV support (4b07c9d )
central media occupancy system prevents duplicate automatic grabs (3e1ee73 )
create GrabService types and skeleton with resolveTarget/getExistingFiles (f3e6818 )
dashboard: modularize dashboard with setup-aware quick actions (d02d4e2 )
enrich library movie hero + unify SSE status to sidebar (aedbfdc )
extract protocol handlers and complete GrabService routing (c16a9dc )
implement GrabDecisionPipeline stages (ebad75c )
implement SearchEligibilityPipeline stages (f3aa062 )
indexers: add Jackett and Prowlarr integration (446f7f0 )
indexers: add per-indexer category restriction with open/restrict/default semantics to newznab/torznab indexers (2eed712 )
indexers: add per-indexer usenet settings, extract shared helpers, and improve monitoring (1386480 )
indexers: expand season pack supplemental keywords to include Complete/BluRay/WEB-DL/WEBRip/2160p/1080p/Remux/HDTV variants in parallel for season-only supplemental search (a0a4b58 )
indexers: soft-delete orphaned managed indexers instead of hard-removing them (792dc84 )
indexers: supplement newznab ID search with text variants for anime episodes (45e465a )
indexers: supplement season-only TV searches with a Complete-keyword text search to surface buried packs (292d7df )
library: add contextual prompt to cascade monitor state to all seasons/episodes (16d66be )
library: edit modal now lets you point to the folder for movies and series (86df348 )
library: TMDB episode group support for alternate season ordering (37aeae1 )
library: validate folder path on disk before accepting manual folder picker correction (6a1c2f3 )
redesign library and discover media hero cards (f133397 )
release-status: region-specific dates and TV/streaming availability (2e6e15f )
root-folder: add folder skip patterns and video file type blocklist to root folder configuration that get ignored during folder scan. (05caf21 )
search: anime-aware filtering, adult categories, and provider cleanup (0d2336e )
show per-release rejection reasons in interactive search UI with categorized breakdown (caddefe )
show S##E## episode pill on manual import review and confirm steps (02cdd1f )
user-configurable blocked search extensions (6724dcc )
You can’t perform that action at this time.