All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- fix multiple playback issues introduced by Spotify changes (#1362, #1374)
- fix crash on user switch (#1361)
- add suggestions for alsa mixer / control device names
- improve distribution support for Debian and Fedora (#1364, #1372)
- revert default features to
alsa_backend(#1337) - do not require
bindgendependencies on supported systems (#1340) - always return exitcode 1 on error (#1338)
- the released binaries for
linux-x86_64also work for older systems (#1342)
- username and password authentaction have been removed and are replaced by OAuth (#1321) Look at the docs for setup instructions.
- retry enabling discovery several times before exiting (#1228)
- development artifacts are now available (#1332)
- prebuilt binaries are available for
aarch64(both Linux and macOS) (#1332) - Windows and Android are now supported (#1219, #1314)
- expose pipe and subprocess backends (#1284)
- new device type options are available (#1316)
- OAuth login is now supported (#1321)
- a warning is emitted on unsupported configuration values (#1327)
- the docs have been overhauled to reflect the current state of the project and simplify onboarding (#1327)
librespotdependency has been updated to 0.6 (#1317)- Credential caching has been re-enabled. (#1214)
- alsa mixer: volume calculation has been fixed (#1229)
armv6binaries are no longer available by default (#1332) If you still need them, please join our matrix channel (https://matrix.to/#/#spotifyd:matrix.org) and tell us!
We now have a project website (thanks @slondr!) and a matrix room. Feel free to join and ask your questions!
TransferPlaybackD-Bus method to transfer the playback tospotifyd(#1162) To host this, ars.spotifyd.Controlsinterface has been added.- A
audio_formatoption was added to circumvent certain errors (#1082) - A setter was added to the
Shuffleproperty (#1188) volume_control = "none"variant to disable changing the volume in clients (#750)
- Improve backend selection logic, especially for macOS (#1158)
- Update
keyringdependency to newest version (#1174) VolumeUp,VolumeDownD-Bus methods have been copied to spotifyd's controls interface (#1162) Their versions inorg.mpris.MediaPlayer2.Playerhave been deprecated and will be removed in a breaking release.- The
librespotdependency has been upgraded to the most recent release 🎉 (#1182, #1197) - Many other dependency updates (#1183, #1145, #1199)
- Documentation improvements (#1156)
- Our minimum supported rust version (MSRV) has been bumped to 1.64 (#1145)
- Implement the
PropertiesChangedandSeekedevents for the MPRIS-interface (#1025) - Add
cache_sizeconfiguration option (#1092) - Add
dbus_typeconfiguration option (#954) - Added formal documentation of the minimum required Rust version - which is currently 1.62 ([#1127])
- Improvements to the documentation (#894, #955, #1030, #1039, #1054, #1055, #1067)
- Fix cumulating delay in
on_song_change_hook(#1059) - Only enable one of zeroconf discovery and password-authentication at the same time (#1059)
- Convert mainloop to using
async/await(#1059) - Upgrade
rspotifydependency to0.11.5(#1079) - Improve error reporting (#1108)
- Make
spotifydbus name unique (#1100)
Note: If you were relying on the consistent bus name oforg.mpris.MediaPlayer2.spotifyd, you can adapt your script e.g. by querying the name likeqdbus | grep "org.mpris.MediaPlayer2.spotifyd" - Fix wrong handling of credential cache (#1121)
- Replace redundant
reqwestdependency (#1120)
- Add
debug_credentialsfeature for debuggingBadCredentialserrors #915 - Implement
VolumeUpandVolumeDownin the DBUS/MPRIS interface #963 - Update librespot to 0.2.0 #977
- Rewrite DBUS/MPRIS integration #977
- Improved panic error message #925
- Use eyre for better error reporting #789
- Add a contributers file
- Added a changelog #714
- Changed the config format from ini to TOML #571