Releases: schubydoo/podspine
Releases · schubydoo/podspine
Release list
1.3.0 (2026-07-10)
Features
- Detect non-faststart whole-file mp4 (
moovaftermdat) at ingest and log a one-line callout; add opt-inPODSPINE_REMUX_NON_FASTSTARTto remux such books to faststart on demand — a cache-managed stream-copy (no re-encode) served from thesavercache and regenerated/evicted like a cached chapter, never a pinned duplicate — so podcast clients seek quickly. MP3/OGG/FLAC, already-faststart mp4, and chaptered books are unaffected. (#61) - Add per-book
.podspine.tomloverrides: a sidecar beside a single-file book (Author - Title.podspine.toml) or inside a folder book overrides settings for just that book —storage_mode,force_embedded_chapters,remux_non_faststart,default_cover_url, plus troubleshooting knobsdisabled,title,author, andforce_reingest— with precedence sidecar → CLI/env → global config → default. Server-wide keys placed in a per-book file are ignored with a warning. (#62) - Serve whole-file episodes — folder-of-MP3 tracks and chapterless single files — in place, streaming them directly from the read-only library instead of copying them under the data dir; this removes the silent duplication those books used to cost (an existing library reclaims the copies on its next re-scan). Chaptered books are unchanged (
full/saver). (#59) - Add an opt-in
saverstorage mode (PODSPINE_STORAGE_MODE=saver) that keeps chapters in a bounded on-demand cache (PODSPINE_CACHE_SIZE/PODSPINE_CACHE_TTL) instead of keeping every chapter split on disk — cutting the data-dir footprint for chaptered books (whole-file books such as folder-of-MP3 tracks stream in place regardless of storage mode) for a small first-play delay per chapter. Ingest still splits each chapter once to record its real byte length, sosaversaves disk, not ingest time. (#53)
1.2.0 (2026-07-07)
Features
- Add a
--version/-Vflag sopodspine --versionreports the version (used by the install scripts and package-manager smoke tests). (#36)
1.1.0 (2026-07-05)
Features
- Add an "Add to a podcast app" subscribe page: the book-page QR now opens
/subscribe/{feed_id}with one-tap "Open in…" deep links for Apple Podcasts, Overcast, Pocket Casts, Castro, AntennaPod, and Podcast Addict (per-app QRs behind an expander) instead of raw feed XML the iOS Camera couldn't open. (#22)
1.0.1 (2026-07-05)
Fixes
- Set the audio
Content-Typeon/audioresponses so Apple Podcasts and other iOS clients can play episodes (axum-range sets none, which made playback fail with "this episode can't be played on this device"). (#20)
v1.0.0
What's Changed
- chore(deps): update taiki-e/install-action digest to 4684b84 by @renovate[bot] in #17
- docs(deployment): document macOS & Windows binaries by @schubydoo in #18
Full Changelog: v1.0.0-rc.2...v1.0.0
v1.0.0-rc.2
What's Changed
- feat(release): add macOS + Windows binaries; fix duplicate SBOM checksums by @schubydoo in #16
Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2
v1.0.0-rc.1
What's Changed
- ci: replace unmaintained goto-bus-stop/setup-zig with mlugg/setup-zig by @schubydoo in #8
- chore(deps): update alpine docker tag to v3.24 by @renovate[bot] in #1
- chore(deps): bump cargo deps + adopt getrandom 0.4 fill() API by @schubydoo in #9
- docs: say "podcast app" instead of "podcatcher"; refresh stale CI comments by @schubydoo in #4
- ci: publish the GitHub Release via gh CLI instead of a third-party action by @schubydoo in #11
- chore(deps): update github-actions (major) by @renovate[bot] in #5
- chore(deps): update rust crate notify to v8 by @renovate[bot] in #6
- chore(deps): update rust crate toml to v1 by @renovate[bot] in #7
- ci(renovate): only auto-group stable (>=1.0) cargo minor/patch bumps by @schubydoo in #10
- ci: install cargo-audit/deny as prebuilt binaries (faster audit·deny job) by @schubydoo in #12
- fix: repair ClusterFuzzLite build and pin base image digests by @schubydoo in #13
- chore(deps): update astral-sh/setup-uv action to v8.3.0 by @renovate[bot] in #14
- chore(release): bump to 1.0.0 + harden pre-release handling by @schubydoo in #15
New Contributors
- @schubydoo made their first contribution in #8
- @renovate[bot] made their first contribution in #1
Full Changelog: https://github.com/schubydoo/podspine/commits/v1.0.0-rc.1