Omnibus v1.4.0
v1.4.0 - Page Manager, embedded covers, usenet cleanup, big-file uploads, new header
🚀 Highlights
- Page Manager: mark and delete pages inside any comic archive - from the series page, the Smart Matcher, or while reading (flag a page, confirm on exit). A series-wide sweep finds the same junk page repeated across hundreds of files by content and removes it everywhere in one pass. Reading progress and bookmarks adjust automatically; CBR/CB7 files are repacked as CBZ. (#189)
- Uploaded covers embed into the file: upload a cover from the series page or Smart Matcher and it is inserted directly into the archive as page 1, so it survives rescans and shows in Panels/OPDS too. On by default, insert-only. (#189)
- Usenet downloads clean up after themselves: new "Delete Usenet Downloads After Import" toggle removes the original file and job folder from NZBGet/SABnzbd once the library copy is verified. Failed usenet jobs now clear their leftovers too. Torrents are never touched - seeding stays safe. (#198)
- Prowlarr usenet grabs fixed: Omnibus now fetches the .nzb through your Prowlarr and hands the downloader the actual file, so Cloudflare block pages can no longer masquerade as downloads. (#197)
- Large manual uploads actually arrive: a silent 10MB body cap in the framework's middleware proxy was truncating chunked uploads - lifted, with a size backstop that rejects short reads instead of importing corrupt files. Uploads from a gated request now import straight into that request, no Smart Matcher detour.
- New header navigation: comic panel-frame design with a full button-pattern cleanup - the first outside code contribution to Omnibus (thanks JoeJoeflyn!). (#186, #190)
🛠️ More fixes and improvements
- Library alphabet jump bar, Smart Matcher "Accept All", smarter batch matching
- Manga: series are never demoted to western naming, completed series reliably receive real covers after bulk matches (rate-limited sync batches now retry their tail), Kaiju-style filenames parse correctly
- Cloudflare solver hardening: circuit breaker and cooldown when the solver wedges (with a System Health warning naming the fix), plus Trawl supported as a third solver backend alongside FlareSolverr and Byparr
- Settings saves are instant and honest: a save can no longer hang on a slow background sync, fail silently, or swallow a second save
- System Health now catches a web/engine secret mismatch (engine reachable but rejecting jobs with 401) and names the exact fix
- Duplicate Resolver heals safely and can no longer mispair issues; cover-lock work from the corruption reports is complete on both the issue and series side (#194, #196)
- Security refresh: dependency CVE round, slimmer engine/web images, clean Docker Hub scan
📦 Upgrading
Standard three-service compose: docker compose pull && docker compose down && docker compose up -d. SQLite and PostgreSQL profiles both covered. No compose or environment changes since v1.3.x.
Thanks to CapitanoNemo78, anacronismo, and JoeJoeflyn for the reports, ideas, and field testing that shaped this release.