/
/
/
# What does this implement/fix?
Playing or browsing a Music Assistant playlist from Home Assistant fails
with `Playlists are only supported for {...}`, and because one bad
playlist aborts the whole listing, *all* playlists become unusable from
Home Assistant.
The builtin provider recently started advertising the "sound effect"
media type on user created playlists. Home Assistant ships an older
client that does not know this media type yet and refuses to parse a
playlist that uses it.
Sound effects can still be added to these playlists — the builtin
provider accepts any item regardless of this (advisory) list. We can
advertise it again once Home Assistant ships a client that understands
it.
- builtin provider no longer advertises the sound effect media type on
user created playlists
- a migration corrects playlists that are already in the library, so
upgrading is enough
- added tests so it cannot be re-introduced unnoticed
**Related issue (if applicable):**
- models companion (durable fix, so a future media type cannot do this
again): https://github.com/music-assistant/models/pull/355
## Types of changes
<!--
Tick exactly one box. CI (.github/workflows/pr-labels.yaml) derives
the label from the ticked box and applies it automatically; the
release-notes generator uses that same label to slot this change
into the next release notes.
-->
- [x] Bugfix (non-breaking change which fixes an issue) — `bugfix`
- [ ] New feature (non-breaking change which adds functionality) —
`new-feature`
- [ ] Enhancement to an existing feature — `enhancement`
- [ ] New music/player/metadata/plugin provider — `new-provider`
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected) — `breaking-change`
- [ ] Refactor (no behaviour change) — `refactor`
- [ ] Documentation only — `documentation`
- [ ] Maintenance / chore — `maintenance`
- [ ] CI / workflow change — `ci`
- [ ] Dependencies bump — `dependencies`
## Checklist
- [x] The code change is tested and works locally.
- [x] `pre-commit run --all-files` passes.
- [x] `pytest` passes, and tests have been added/updated under `tests/`
where applicable.
- [ ] For changes to shared models, the companion PR in
`music-assistant/models` is linked.
- [ ] For changes affecting the UI, the companion PR in
`music-assistant/frontend` is linked.
- [x] I have read and complied with the project's [AI
Policy](https://github.com/music-assistant/.github/blob/main/AI_POLICY.md)
for any AI-assisted contributions.
- [ ] I have [raised a PR against the documentation
repository](https://github.com/music-assistant/music-assistant.io/blob/main/CONTRIBUTING.md)
targeting the main or beta branch as appropriate.
---------
Co-authored-by: Marcel van der Veldt <[email protected]>