Releases: cbodden/Magic-Erasarr
Releases · cbodden/Magic-Erasarr
Release 1.6.0
Added
- Plex library refresh — After removing items from Radarr/Sonarr/Lidarr, the app triggers a Plex library scan for affected sections (optional;
PLEX_URLandPLEX_TOKEN). - Tautulli media info refresh — After Plex refresh, the app waits 20 seconds then triggers a Tautulli media info refresh so removed items disappear from Tautulli's cache; the page reloads when done.
- Removal flow toast — A single centered modal toast shows progress for the whole flow (removing items, Plex refresh, Tautulli refresh) with a dimmed page background.
- TV show warning — When TV shows are removed, the toast shows a flashing warning that Tautulli may take several minutes to update (full library rescan).
- Tautulli "calculating file sizes" alert — When Tautulli is calculating file sizes for a library, a yellow alert banner appears at the top. Data shown may not be up to date until calculation completes.
- Debug endpoint — With
DEBUG=true,GET /api/debug/tautulli-raw-response?type=showreturns the raw Tautulli library response for troubleshooting. - Git hook —
.githooks/commit-msgstrips Co-authored-by lines from commit messages; see README to enable.
Changed
- Remove flow — No longer modifies Tautulli directly; removal is Seerr + *arrs, then Plex refresh, then Tautulli refresh.
- Library combined API — Detects "calculating file sizes" from response and sets
tautulli_calculating_file_sizesfor the banner. - README — Documents Plex token, removal flow, Tautulli calculating banner, TV show refresh, and optional git hook.
- Docker — Version 1.6.0; docker-compose includes optional
PLEX_URLandPLEX_TOKEN.
v1.5.0
[1.5.0] - 2026-02-15
Added
- Combined view by type — Single dropdown: Movies, TV Shows, or Music; one merged list from all Tautulli libraries of that type.
- Library column — Table shows which Tautulli library each item belongs to; column is sortable.
- Filter by library — When a type is loaded, a "Filter by library" dropdown limits the list to one Tautulli library.
Changed
- Table layout — Variable-width table with wrapping and horizontal scroll so columns are readable.
- Error handling — API client handles non-JSON (e.g. HTML) responses without crashing; non-API 404s (e.g. favicon) no longer surface as 500.
Removed
- Library-by-name env — Per-instance
*_LIBRARY_NAMEmapping removed; removal runs against all configured *arr instances.
Release 1.4.0
[1.4.0] - 2026-02-15
Added
- Multi-arch Docker — GitHub Actions builds and pushes
linux/amd64andlinux/arm64images (RPi-friendly). - Unit tests — Pytest suite for app routes and ID extraction; CI runs tests before building the image.
v1.2.0
Added
- Search — Search box appears when a library is loaded; searches only within the selected library and shows only matching items.
- Production WSGI —
wsgi.pyand gunicorn; withDEBUG=false,python app.pyruns gunicorn instead of the Flask dev server. Docker image uses gunicorn in CMD. - DEBUG and STAT env flags —
DEBUGenables Flask debug mode and/api/debugroutes;STATenables/api/status. Both configurable via.envand Docker.
Changed
- Show library file column — For TV show libraries, file column shows "—" when Tautulli does not provide file size (avoids incorrect "Missing" when files exist).
- README and Docker — Document DEBUG/STAT, standalone vs Docker run; compose and Dockerfile set production defaults; workflow triggers on
docker/**and app files.
v1.1.0
Changed
- Seerr branding — UI and docs use "Seerr" (Overseerr-compatible); request server chip and toasts show name from API.
- Status chip names — All service chips (Tautulli, Seerr, Radarr, Sonarr, Lidarr) show name from respective API or instance config.
- Codebase refactor — App split into config, services (tautulli, overseerr, radarr, sonarr, lidarr), routes (main, api), and utils; Flask app factory.
Fixed
- app.py — Removed duplicate legacy code; entry point is create_app only.
v1.0.0
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
1.0.0 - 2025-02-15
Added
- Lidarr support — Remove music from Lidarr instances (primary and optional secondary), with column sorting for library view.
- Docker support — Alpine-based image and GitHub Actions workflow to build and push to
ghcr.io. Docker Compose example uses pre-built image. - Column sorting — Sort library by title, year, added date, last played, play count, size, or requested by (click column headers).
- Screenshot and README — Screenshot section and images folder for documentation.
- Debug endpoint — Endpoint for troubleshooting metadata resolution (IMDB/TMDB IDs).
Changed
- ID resolution — Extract IMDB IDs from Tautulli guids and legacy Plex agent formats; Radarr lookup falls back to IMDB when TMDB is unavailable.
- Graceful skip — When no IDs can be resolved, Overseerr and *arr steps are skipped instead of failing; Tautulli cleanup still runs.
- Artist library display — Correct file badge and Overseerr skip behavior for music libraries.
Fixed
- Missing Plex metadata no longer blocks removal; Tautulli history and cache are still cleaned when Plex metadata is unavailable.