Skip to content

Releases: Gudsfile/jukebox

v1.0.2

11 May 20:55

Choose a tag to compare

What's Changed

Bumps:

Full Changelog: v1.0.1...v1.0.2

v1.0.1

07 May 21:54

Choose a tag to compare

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

04 May 17:42

Choose a tag to compare

🎉 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.

⚠️ Breaking changes

  • 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: --player and --reader must 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-admin by @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 library commands 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
    • 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
    • ✨ Add configured badge for non-default persisted value by @Gudsfile in #240
  • ✨ Make list --mode an 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

21 Mar 20:49
4ed5aac

Choose a tag to compare

What's Changed

Other changes:

Full Changelog: v0.8.0...v0.9.0

v0.8.0

18 Mar 21:57

Choose a tag to compare

What's Changed

Other changes:

Full Changelog: v0.7.0...v0.8.0

v0.7.0

16 Mar 19:52

Choose a tag to compare

What's Changed

Full Changelog: v0.6.0...v0.7.0

v0.6.0

05 Mar 01:00

Choose a tag to compare

What's Changed

Bumps:

Full Changelog: v0.5.4...v0.6.0

v0.5.4

24 Jan 14:49

Choose a tag to compare

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

18 Jan 21:38

Choose a tag to compare

What's Changed

Bumps:

Other changes:

New Contributors

Full Changelog: v0.5.2...v0.5.3

v0.5.2

10 Dec 00:23

Choose a tag to compare

Bumps:

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