Skip to content

Release Notes v1.0.0

JovinJovinsson edited this page Aug 15, 2026 · 1 revision

v1.0.0

Release date: TBD — set when the GitHub Release/PyPI/Docker publish completes.

Overview

Collapsarr's first stable release. This ships everything built since the v0.3.0 beta line: Plex-verified library management, a real bulk queue, native (runtime-free) binaries for Linux/macOS/Windows, and in-app self-update. Promoted from uat to main.

Highlights

  • Runtime-free native installs — signed PyInstaller binaries for Linux (amd64/arm64), macOS (amd64/arm64), and Windows (amd64). No Python runtime required.
  • In-app self-update — click Update Now, Collapsarr downloads, verifies (checksum), applies, and restarts itself — with automatic rollback on a failed health check, for both native and pipx installs.
  • Plex-verified default audio track — Collapsarr now checks Plex's own Analyze result to confirm a default-audio change actually took effect, instead of trusting the downmix job alone.
  • Real bulk queue management — cancel, requeue, reorder, and a self-throttling auto-queue, plus a hard-kill Cancel for an actively running job.

New features

Libraries & tracked status

  • Sonarr and Radarr library sync with persisted tracked/untracked status, single and bulk toggle.
  • Read-only library browsing UI with nested-folder tree display and per-item tracked-file linking through to a file detail page.
  • Library detail page with a live audio-stream table and current Default Audio Track indicator.

Plex integration

  • Plex connection settings and HTTP client.
  • Library-item mapping keyed by Sonarr/Radarr identity (not just file path), with ratingKey resolution and remote/local path remapping.
  • Post-job Plex Analyze hook verifies the default audio track after every downmix job; proxied poster images are cached.

Bulk queue management

  • Cancel, requeue, and reorder queued jobs; a self-throttling auto-queue that respects the concurrency limit.
  • Cancel (hard kill) an actively running downmix job.
  • "Queue now" action on Wanted rows; "Process Now" force-starts a Wanted file, bypassing Auto-Processing Pause and the concurrency limit.
  • New Auto-Processing Pause setting with a worker-pool gate and UI toggle.

Default Audio Track language preference

  • Global and per-library default-audio-track language preference.
  • Explicit reason codes for no-ops, with a bulk-run summary broken down by skip reason.
  • Single-file "Set Default Audio Track" always bypasses the dedup window.

Reverse proxy & URL-base support

  • Run Collapsarr behind a reverse proxy at a URL sub-path via a strip-prefix middleware.

System Status & Tasks, and in-app log viewer

  • System Status page aggregating scheduler/task health via a dedicated endpoint.
  • In-app log viewer with rotation and log-content redaction.

Settings restructure

  • Bazarr-style Settings split: separate Sonarr/Radarr pages, plus dedicated Scheduler and Logging pages.

In-app self-update (native & pipx)

  • Update Now trigger with a confirmation modal, and a dedicated "Updating — please wait" polling/restart screen.
  • In-flight job handling when an update is requested mid-job: Cancel & Restart Now or Wait & Restart.
  • Native installs: staged handoff with an atomic swap on the happy path, and automatic rollback (retained-folder swap-back) on a failed post-update health check.
  • Pipx installs: verify → upgrade → re-exec apply flow, with rollback to a pinned reinstall on a failed health check.
  • Release pipeline now publishes a SHA256SUMS asset so update checks can verify downloaded archives before applying them.

Fixes & polish

  • Fixed stalled backup downloads (auth-enforcement middleware rewritten as raw ASGI middleware).
  • Fixed Wanted/Tracked desync, scheduler log spam, and Radarr sync visibility gaps reported in beta.
  • Fixed Activity/History visibility and the backup-prune clock.
  • Fixed the language picker.
  • Orphaned RUNNING job-history rows now flip to FAILED on rehydration instead of sticking forever.
  • UI polish: nav/UI icons migrated to lucide-react, main view fills available container width, Settings > General panels use full width, Health page hides its severity badge on passing checks.

Upgrading from a beta build: see the Updates page in-app for install-method-specific instructions. Native installs can now use the in-app Update Now button for future updates; pipx installs get in-app self-update as well.

Links

  • GitHub PR: #76 — promoting uat into main
  • Jira Fix Version: COL v1.0.0