Releases: mopidy/mopidy-spotify
v5.0.0
This is the first non-pre-release of Mopidy-Spotify since we were forced by Spotify's libspotify shutdown in May 2022 to migrate to gst-plugins-spotify and the Spotify Web API.
Here's to more regular releases going forward! 🍻
Dependency changes
- Requires Mopidy >= 4.0
- Requires Python >= 3.13
What's Changed
- Use the long-form Spotify URL for user playlists. by @kingosticks in #299
- Log when refresh of playlists starts by @simeg in #311
- Update logging statement to not use deprecated warn() call by @djmattyg007 in #314
- Update list of countries by @djmattyg007 in #315
- search: Remove empty tracks/albums/artists from search results. by @kingosticks in #325
- Do not ignore the
exactparameter in thesearchmethod by @telnet23 in #318 - Support lookups for 'your' URIs by @djmattyg007 in #313
- Support Python 3.10 by @djmattyg007 in #327
- browse: Empty result for offline artist and album browse (fixes #332) by @kingosticks in #335
- Replace pyspotify with Web API and gstspotifysrc by @kingosticks in #342
- fix CI by @kingosticks in #349
- Require Python >= 3.9 by @kingosticks in #350
- Update release workflow by @kingosticks in #351
- Configurable maximum cache size by @beaverking1212 in #356
- Improve credentials cache by @beaverking1212 in #357
- Update CI setup by @jodal in #362
- images: ignore bad image uris (Fixes #364) by @kingosticks in #365
- Fix Spotify's field syntax change by @kingosticks in #367
- Fix for empty playlists by @kingosticks in #368
- flake8 fix by @kingosticks in #369
- images: more robust to missing fields by @kingosticks in #370
- Ignore internal browse uri images by @kingosticks in #371
- --break-system-packages by @kingosticks in #374
- Fix floats in API response (Fixes #375) by @kingosticks in #376
- Fix floats api images by @kingosticks in #377
- Advertise gst-plugins-spotify deb package by @kingosticks in #378
- I am the maintainer by @kingosticks in #379
- Update README.rst by @kingosticks in #380
- Tooling upgrades by @jodal in #381
- Fix startup time by @kingosticks in #382
- Backport playlist refresh by @kingosticks in #385
- Performance improvements by @kingosticks in #386
- Temporary hack for Mopidy v4 installations by @kingosticks in #387
- Fix fuff complaints by @kingosticks in #399
- Playback using access token by @kingosticks in #397
- Update README.rst by @kingosticks in #400
- Update README.rst by @kingosticks in #401
- Kingosticks patch 1 by @kingosticks in #407
- logout command to remove cached credentials by @kingosticks in #409
- Fixes for logout command by @kingosticks in #410
- Update to match mopidy-ext-template v2.1.1 by @jodal in #413
- chore: Update to mopidy-ext-template v2.2.0 by @jodal in #422
- Fixes to work with Mopidy 4.0.0a8 by @jodal in #424
- refactor: Update commands to use cyclopts by @jodal in #426
- chore: Require Mopidy >= 4.0 by @jodal in #431
- chore: Add enough type hints to make pyright pass by @jodal in #432
- Add type hints by @jodal in #433
New Contributors
- @simeg made their first contribution in #311
- @djmattyg007 made their first contribution in #314
- @telnet23 made their first contribution in #318
- @beaverking1212 made their first contribution in #356
Full Changelog: v4.1.1...v5.0.0
v5.0.0a7
v5.0.0a6
v5.0.0a5
v5.0.0a4
v5.0.0a3
Requires forked version of gst-plugins-rs. Binaries for some platforms available here.
What's Changed
Playback using access token by @kingosticks in #397. You no longer need to provide Spotify username or password config settings.
Full Changelog: v5.0.0a2...v5.0.0a3
NOTE There are currently known connection issues with gst-plugin-spotify, a fix for which has been identified upstream.
v5.0.0a2
An additional, unplanned alpha release specifically for the playlist refreshing performance improvement. This makes such a big difference to the user-experience that I didn't want to deprive those unable to immediately upgrade to our upcoming Mopidy v4 release.
What's Changed
- Backport playlist refresh by @kingosticks in #385
Full Changelog: v5.0.0a1...v5.0.0a2
v5.0.0a1
Mopidy-Spotify 5.0 is a backward-incompatible release because our dependencies have changed.
RIP libspotify
This has been a very long time coming... we no longer require the non-functional libspotify library (#110). Not everything works yet. Most noticeably, seeking and gapless playback need work, any help would be very welcome.
For audio, we are using a new GStreamer plugin called spotifyaudiosrc (#342). This plugin isn't available in any apt repositories yet but details of how to obtain it are in the readme. Hopefully it will be available from apt soon.
For all other Spotify content, we are using Spotify's Web API (#342).
This will be the last tagged release which supports both spotifyaudiosrc and Python 3.10 (Ubuntu 22.04 LTS). All future releases will require at least Python 3.11, in keeping with the upcoming Mopidy v4 release.
Dependencies
- A Spotify Premium subscription.
- A non-Facebook Spotify username and password.
- Mopidy >= 3.4
- Python >= 3.9
- gst-plugins-spotify >= 0.10 (NEW)
What's Changed
- Use the long-form Spotify URL for user playlists. by @kingosticks in #299
- Log when refresh of playlists starts by @simeg in #311
- Update list of countries by @djmattyg007 in #315
- Do not ignore the
exactparameter in thesearchmethod by @telnet23 in #318 - Support lookups for 'your' URIs by @djmattyg007 in #313
- Support Python 3.10 by @djmattyg007 in #327
- Replace pyspotify with Web API and gstspotifysrc by @kingosticks in #342
- Require Python >= 3.9 by @kingosticks in #350
- Configurable maximum cache size by @beaverking1212 in #356
- Improve credentials cache by @beaverking1212 in #357
- images: ignore bad image uris (Fixes #364) by @kingosticks in #365
- Fix Spotify's field syntax change by @kingosticks in #367
- Fix for empty playlists by @kingosticks in #368
- images: more robust to missing fields by @kingosticks in #370
- Ignore internal browse uri images by @kingosticks in #371
- Fix floats in API response (Fixes #375) by @kingosticks in #376
- I am the maintainer by @kingosticks in #379
New Contributors
- @simeg made their first contribution in #311
- @djmattyg007 made their first contribution in #314
- @telnet23 made their first contribution in #318
- @beaverking1212 made their first contribution in #356
Full Changelog: v4.1.1...v5.0.0a1