Release v3.0.1
·
22 commits
to master
since this release
Immutable
release. Only release title and notes can be modified.
- Fix chapter splitting (
/play … split: true): only the first chapter played because every chapter shared one cache entry keyed by the video URL; cache keys are now segment-aware (URL + offset + length). - Fix "The application did not respond" when skipping or resuming into a slow or unplayable track:
/skip,/next,/unskip, and/resumenow defer the interaction before resolving media, and an unplayable track is skipped to the next one instead of surfacing a spurious error (this also makes automatic queue advancement resilient to bad tracks). - Fix
/skip(and/unskip//seek) advancing an extra track: deliberately stopping the current stream to start a new one fired the queue's auto-advance handler a second time. The handler is now detached before the switch, so skipping moves exactly as far as requested. - Add structured logging via pino, configurable with
LOG_FORMAT(plaindefault,json, orecs) andLOG_LEVEL(infodefault). Command invocations, queue and track changes, and playback or media-extraction failures now surface in logs by default instead of being silent; verbose per-component detail is available atLOG_LEVEL=debug. - Build and publish a multi-arch pre-release image to
ghcr.io/bunkerlab-net/mochi:edge(and:sha-<commit>) on every push tomaster, so changes can be tested before a release.