Skip to content

v0.6.0

Pre-release
Pre-release

Choose a tag to compare

@garado garado released this 30 Aug 18:24
· 3 commits to main since this release
dd9cf8f

v0.6.0

This release parallelizes audio uploads for faster batch transfers, hardens password handling and cache encryption, and rounds out --json/--yes/--dry-run support across all music commands. Robust JSON support is officially added for all commands, so consumers are safe to use CLI JSON output for all functionality.

If you depend on Light CLI/API

Breaking:

  • (CLI) --password can no longer be passed directly on the command line. Use --ask to be prompted interactively instead. This keeps passwords out of shell history and process listings. (--ask with --json raises a UsageError.)
  • (CLI) -v is now --verbose. The short flag for --version has been removed - use the full --version.

New:

  • Parallel audio uploads & conversions - batch music upload now converts and transfers multiple files concurrently, with a live per-file progress bar.
  • music sort-mode - show the device's current music sort mode.
  • cache clear - clear the local response cache on demand.
  • Full external-CLI support for music management - music sort, music update, music delete, and delete-all now consistently support --json, --yes, and --dry-run. music delete also allows an interactive pick when given a regex.

Security:

  • Cache encryption keys are now derived with scrypt plus a per-file salt (previously a weaker derivation).

Also in this release

  • FLAC->MP3 transcode profile changed to avoid server-side re-transcodes.
  • Fixed an issue where quitting with Ctrl+C while an interactive prompt was open could leave the terminal in a state where Enter stopped working.
  • Fixed stray stdout output in --json mode.
  • Added a live API contract test (pytest tests/test_live_contract.py --live) that validates real API GET responses against openapi-spec.json. This is to catch any API spec drift. This currently only runs on a local machine, and never in CI.

Full Changelog: v0.5.0...v0.6.0

Installation

pip install light-phone-api==0.6.0
pip install light-phone-cli-tui==0.6.0