Releases: Gudsfile/jukebox
Releases · Gudsfile/jukebox
v1.0.2
What's Changed
Bumps:
- ⬆️ Bump urllib3 from 2.6.3 to 2.7.0 by @dependabot[bot] in #257
Full Changelog: v1.0.1...v1.0.2
v1.0.1
What's Changed
Other changes & internal fixes:
- ♻️ Merge discstore folder into jukebox by @Gudsfile in #249
- ♻️ Remove UIController delegation wrappers by @Gudsfile in #250
- ♻️ Move page builder tests to dedicated test files by @Gudsfile in #251
Bumps:
- ⬆️ Bump python-multipart from 0.0.26 to 0.0.27 by @dependabot[bot] in #256
Full Changelog: v1.0.0...v1.0.1
v1.0.0
🎉 v1.0.0
This version:
- introduces a complete admin experience with a dedicated CLI (
jukebox-admin [api | ui | settings | library | sonos | pn532]) and UI to manage settings, library, readers, and Sonos speakers - adds full Sonos integration including discovery, multi-speaker selection, and multi-household support via CLI and API
- supports advanced configuration with persisted settings, validation rules, and runtime management for readers and players
- improves PN532 reader support with configurable SPI pins, predefined profiles, and CLI overrides
- enhances library and API capabilities, including tag management, the ability to update or clear fields on a disc and current-tag workflows, making it easy to add a disc directly from a scanned tag
💡Now it is easier to fully configure, manage, and scale your jukebox setup from both CLI and UI.
- moves the default configuration directory to
~/.config/jukebox/, requiring migration of existing config files - bumps the minimum Python version to 3.11
- removes deprecated features and legacy commands (including
discstore) - changes CLI usage:
--playerand--readermust now be passed as named options (no longer positional arguments) - replaces the generic NFC reader with the PN532 reader family, impacting existing reader configurations (
--reader pn532)
What's Changed
- ✨ Admin Experience & Settings
- Settings Phase 2: Write Settings Updates by @msgerbush in #160
- Settings Phase 3: Playback timing and validation rules by @msgerbush in #162
- Settings Phase 7.1: Add Typer and Introduce
jukebox-adminby @msgerbush in #167 - ✨ Add Admin Settings UI by @msgerbush in #184
- Settings Phase 7.3: CLI UX Cleanup by @msgerbush in #170
- Library
- Settings Phase 7.2: Add jukebox-admin
librarycommands by @msgerbush in #168 - ✨ Delete a CD from the UI by @Gudsfile in #131
- ✨ Allow clearing nullable fields via PATCH to disc and current-disc routes by @Gudsfile in #202
- ✨ Current Tag API Routes by @msgerbush in #201
- 💥🗑️ Remove deprecated discstore command by @Gudsfile in #218
- Settings Phase 7.2: Add jukebox-admin
- Reader
- Settings Phase 4: Reader Settings by @msgerbush in #163
- ✨ Configure SPI GPIO pins of the PN532 reader by @Gudsfile in #222
- ✨ Simplify the configuration of the PN532 reader using predefined profiles by @Gudsfile in #223
- ✨ Add CLI override arguments for PN532 settings by @Gudsfile in #224
- ✨ Add PN532 admin commands by @Gudsfile in #225
- 💥♻️ Replace generic NFC reader with a more explicit PN532 reader family by @Gudsfile in #203
- Player
- ✨ Support Sonos speaker discovery by @Gudsfile in #146
- Settings Phase 5: Sonos Player Settings by @msgerbush in #164
- Settings Phase 6: Sonos Runtime by @msgerbush in #166
- Tighten
selected_grouppersistence to Sonos UID-only by @msgerbush in #173 - ✨ Add
sonosCLI Command and Cleanup Sonos Discovery by @msgerbush in #185 - ✨ Sonos speaker selection in CLI and API by @msgerbush in #186
- ✨ Sonos multi speaker selection in CLI/API by @msgerbush in #187
- ✨ Add Sonos Admin UI by @msgerbush in #207
- ✨ Add multi-household Sonos support to admin CLI and API by @msgerbush in #228
- ✨ Add configured badge for non-default persisted value by @Gudsfile in #240
- ✨ Make list
--modean option (default: table) by @Gudsfile in #181 - ✨💥 Move default config directory to
~/.config/jukebox/by @Gudsfile in #182 - 🐛 Create parent directory when writing library.json for the first time by @Gudsfile in #230
CI/CD & Tooling:
- 👷 add code format check to ci by @Gudsfile in #132
- 🔨 add prek pre-commit configuration by @Gudsfile in #133
- 👷 Test CI matrix with and without extras by @Gudsfile in #241
- 👷 Extend release workflow with development version by @Gudsfile in #191
- 👷 Rework release workflow: trigger on workflow_run instead of PR merge by @Gudsfile in #195
- 👷 Scope deployment secrets to prod environment by @Gudsfile in #210
Documentation:
- 📝 init AGENTS.md file by @Gudsfile in #130
- 📝 Refresh the readme and add reader and player dedicated files by @Gudsfile in #204
Other changes & internal fixes:
- ♻️ Clarify PlaybackSession model by @Gudsfile in #143
- ♻️ Define current tag action in an separate use case by @Gudsfile in #147
- ♻️ Refactor tag removal tracking from duration to timestamp and others refactorings related to tag actions by @Gudsfile in #150
- ♻️ Chore: Split API Routers by @msgerbush in #198
- ♻️ Fix asymmetric behavior in current-tag router POST and PATCH handlers by @Gudsfile in #219
- ♻️ Fix SettingsServiceStub ty error by @msgerbush in #214
- ♻️ Use f-strings in admin CLI presentation by @msgerbush in #213
- ♻️ Clean up disc API routes by @msgerbush in #200
- ♻️ Split up UI controller by @msgerbush in #206
- ♻️ Replace flat spi parameters on a SpiConnectionParams by @Gudsfile in #231
- Read-only shared settings spine by @msgerbush in #151
- Chore: Split Settings Tests by @msgerbush in #165
- Chore/remove manual sonos persistence by @msgerbush in #172
- 🐛 Fix UPnP error masked by logging TypeError in Sonos adapter by @Gudsfile in #238
- 🐛 Fix AttributeError on Sonos UI panel by calling list_network_speakers by @Gudsfile in #239
- 🐛 Fix Sonos playback state stuck on play failure by @Gudsfile in #242
- 🐛 Revert the continue action conditon by @Gudsfile in #159
- 💥🗑️ Remove deprecated features by @Gudsfile in #215
Bumps:
- ⬆️ Bump pygments from 2.19.2 to 2.20.0 by @dependabot[bot] in #171
- ⬆️ Bump the uv group with 2 updates by @dependabot[bot] in #174
- ⬆️ Update uv-build requirement from <0.11.0,>=0.8.7 to >=0.8.7,<0.12.0 by @dependabot[bot] in #175
- ⬆️ Bump lxml from 6.0.2 to 6.1.0 by @dependabot[bot] in #235
- ⬆️ Bump the uv group with 4 updates by @dependabot[bot] in #248
- 💥⬆️ Bump minimum Python version to 3.11 by @Gudsfile in #233
Full Changelog: v0.9.0...v1.0.0
v0.9.0
What's Changed
- ✨ Add Library Caching and CRUD Methods by @msgerbush in #118
- ✨ Current Disc Persistence by @msgerbush in #119
- ✨ Current Disc Support in DiscStore CLI by @msgerbush in #120
- ✨ DiscStore current-disc API by @msgerbush in #121
- ✨ DiscStore UI Improvements and Current Tag Support by @msgerbush in #125
Other changes:
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- ✨Pi 5 Support by @msgerbush in #86
Other changes:
- 🔊 Improve error messaging around running extras by @msgerbush in #115
- 👷 filters out ty warnings in the ci by @Gudsfile in #117
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- ✨ Support Sub-Second Pause Delay by @msgerbush in #114
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
Bumps:
- ⬆️ Bump the uv group with 2 updates by @dependabot[bot] in #106
- ⬆️ Bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #108
- ⬆️ Bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #109
- ⬆️ Bump the uv group with 3 updates by @dependabot[bot] in #110
- ⬆️ Update uv-build requirement from <0.10.0,>=0.8.7 to >=0.8.7,<0.11.0 by @dependabot[bot] in #111
- ⬆️ Bump pytest from 7.4.4 to 8.4.2 by @dependabot[bot] in #112
- ⬆️ Bump the uv group by @Gudsfile in #113
Full Changelog: v0.5.4...v0.6.0
v0.5.4
New version v0.5.4 🚀
What's Changed
- 🐛 Unregistered tags cause playback to resume by @msgerbush in #87
Full Changelog: v0.5.3...v0.5.4
v0.5.3
What's Changed
- 🚀 Python 3.13 support by @msgerbush in #85
Bumps:
- ⬆️ Bump fastapi from 0.124.0 to 0.124.4 by @dependabot[bot] in #84
- ⬆️ Bump ruff from 0.14.8 to 0.14.9 by @dependabot[bot] in #83
- ⬆️ Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #82
- ⬆️ Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in #81
- ⬆️ Update uv-build requirement from <0.9.0,>=0.8.7 to >=0.8.7,<0.10.0 by @dependabot[bot] in #91
- ⬆️ Bump soco from 0.30.12 to 0.30.13 by @dependabot[bot] in #89
- ⬆️ Bump ruff from 0.14.9 to 0.14.10 by @dependabot[bot] in #90
- ⬆️ Bump ty from 0.0.1a34 to 0.0.7 by @dependabot[bot] in #92
- ⬆️ Bump soco from 0.30.13 to 0.30.14 by @dependabot[bot] in #94
- ⬆️ Bump ruff from 0.14.10 to 0.14.11 by @dependabot[bot] in #97
- ⬆️ Bump ty from 0.0.7 to 0.0.11 by @dependabot[bot] in #96
- ⬆️ Bump the uv group with 2 updates by @dependabot[bot] in #99
- ⬆️ Bump urllib3 from 2.2.3 to 2.6.3 by @dependabot[bot] in #101
- ⬆️ Bump requests from 2.15.1 to 2.32.4 by @dependabot[bot] in #102
- ⬆️ Bump uv lockfile by @Gudsfile in #103
Other changes:
- 👷 Add type checking by @Gudsfile in #80
- 👷 group bumps by @Gudsfile in #98
- 📝 add a note about unsupported pi 5 py13 by @Gudsfile in #104
- 👷 run workflow if relevant files are modified by @Gudsfile in #105
New Contributors
- @msgerbush made their first contribution in #85
Full Changelog: v0.5.2...v0.5.3
v0.5.2
Bumps:
- ⬆️ Bump fastapi from 0.121.3 to 0.123.0 by @dependabot[bot] in #69
- ⬆️ Bump ruff from 0.14.6 to 0.14.7 by @dependabot[bot] in #70
- ⬆️ Bump ruff from 0.14.7 to 0.14.8 by @dependabot[bot] in #73
- ⬆️ Bump fastapi from 0.123.0 to 0.124.0 by @dependabot[bot] in #74
Other changes:
- ♻️ simplify addition of new Readers and Players and other improvements by @Gudsfile in #68
- ♻️ create an adapter for the jukebox config by @Gudsfile in #75
- ♻️ factorize code between jukebox and discstore by @Gudsfile in #76
- 🐛 fix the CD editing flow by @Gudsfile in #77
Full Changelog: v0.5.1...v0.5.2