v0.11.1: a web mix stops shipping an .m3u
It was there on the theory that it cost nothing and let the folder double as a plain music folder. But a web mix is a folder you upload, and a stray playlist file next to index.html is one more thing to explain to whoever receives it. plan.m3u_name is now "" for WEB, so the plan doesn't name a file it won't write, and index.html is simply the last thing written — which is what the manifest-last invariant always meant for that branch. Folder exports keep their m3u unchanged. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JBSM2bFC6UToiEg8BE4dqj
This commit is contained in:
@@ -171,8 +171,10 @@ persistence) → GUI (Qt widgets that read the manager and connect to its signal
|
||||
and `build_m3u`: pure `plan_export()` first, then `ExportWorker` on a daemon
|
||||
thread. Two destinations — a **folder** (files as `Artist - Title.ext` plus an
|
||||
`.m3u`) or a **web mix** (`index.html` + `audios/` + hero image, from
|
||||
`templates/`). **The manifest is written last**, so an interrupted export
|
||||
never leaves a page or m3u naming files that aren't there. `web_support.py`
|
||||
`templates/`; **no m3u** — it's a folder you upload, not one you open in a
|
||||
player, so `plan.m3u_name` is `""` there). **The manifest is written last**,
|
||||
so an interrupted export never leaves a page or m3u naming files that aren't
|
||||
there. `web_support.py`
|
||||
is the format gate, shaped like `cast/support.py`: deny-by-default on the
|
||||
suffix with the iTunes `kind` breaking the `.m4a` tie. **Bitrate never
|
||||
triggers a conversion** — only unplayability does — and every conversion
|
||||
|
||||
Reference in New Issue
Block a user