• v0.4.0 fa635ca514

    v0.4.0 Stable

    kerem released this 2025-03-08 03:32:02 +03:00 | 54 commits to master since this release

    No known key found for this signature in database
    GPG key ID: 7AB85C6FA5573815

    📅 Originally published on GitHub: Sat, 08 Mar 2025 00:41:24 GMT
    🏷️ Git tag created: Sat, 08 Mar 2025 00:32:02 GMT

    After nearly 2 years of waiting, there is finally a new release available! 🥳

    Due to the long time without releases, there have been quite some changes. For details, have a look at the changelog. Here, however, is a list of the most important changes and things you should know:

    Highlights

    • OAuth: Manual authentication is working again after it had been broken by changes on Spotify servers.
      However, instead of providing username and password to spotifyd, you authenticate once using a web-based flow. This can be initiated with spotifyd auth. For details, have a look at our docs.
    • MPRIS: The MPRIS interface now interacts with the player locally instead of calling the web API.
      As such, calls to the interface should be much faster than before. Also, calling simple getter methods too frequently no longer leads to rate limiting.
    • Platform Support: spotifyd has gained (experimental) support for Windows and Android. While there are no pre-built binaries available (yet), building and running should be possible. There have been several improvements to BSD support, and we now have binaries for aarch64 on macOS as well as on Linux.
      Unfortunately, we do not provide a binary for armv6 any more, since that has become increasingly difficult to maintain. If you desperately need such a binary, feel free to join our community matrix server, and we'll try to find a solution.
    • Robustness: spotifyd has become more robust in many ways. Most of that comes from improvements to the amazing librespot project that we heavily rely on. But spotifyd has also become more resilient to temporary failures due to network not being available and retries several times before exiting.

    Migration

    Migrating from v0.3.5 to v0.4.0 should be pretty seamless, apart from the one-time setup required if you want to continue using manual authentication. See above for details.

    Contributors

    This release couldn't have happened without the help of many incredible people. We have several new contributors:

    Full Changelog

    Downloads
  • v0.3.5 d2387ed4b8

    v0.3.5 Stable

    kerem released this 2023-04-21 00:39:40 +03:00 | 188 commits to master since this release

    No known key found for this signature in database
    GPG key ID: 7AB85C6FA5573815

    📅 Originally published on GitHub: Thu, 20 Apr 2023 21:45:32 GMT
    🏷️ Git tag created: Thu, 20 Apr 2023 21:39:40 GMT

    We now have a project website (thanks @slondr!) and a matrix room.
    Feel free to join and ask your questions!

    Added

    • TransferPlayback D-Bus method to transfer the playback to spotifyd (#1162)
      To host this, a rs.spotifyd.Controls interface has been added.
    • A audio_format option was added to circumvent certain errors (#1082)
    • A setter was added to the Shuffle property (#1188)
    • volume_control = "none" variant to disable changing the volume in clients (#750)

    Changed

    • Improve backend selection logic, especially for macOS (#1158)
    • Update keyring dependency to newest version (#1174)
    • VolumeUp, VolumeDown D-Bus methods have been copied to spotifyd's controls interface (#1162)
      Their versions in org.mpris.MediaPlayer2.Player have been deprecated and will be removed in a breaking release.
    • The librespot dependency 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)
    Downloads
  • v0.3.4 db25d12d72

    v0.3.4 Stable

    kerem released this 2022-12-15 05:20:51 +03:00 | 230 commits to master since this release

    📅 Originally published on GitHub: Thu, 15 Dec 2022 16:10:24 GMT
    🏷️ Git tag created: Thu, 15 Dec 2022 02:20:51 GMT

    Added

    • Implement the PropertiesChanged and Seeked events for the MPRIS-interface (#1025)
    • Add cache_size configuration option (#1092)
    • Add dbus_type configuration option (#954)
    • Added formal documentation of the minimum required Rust version - which is currently 1.62 ([#1127])

    Changed

    • 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 rspotify dependency to 0.11.5 (#1079)
    • Improve error reporting (#1108)
    • Make spotifyd bus name unique (#1100)
      Note: If you were relying on the consistent bus name of org.mpris.MediaPlayer2.spotifyd,
      you can adapt your script e.g. by querying the name like qdbus | grep "org.mpris.MediaPlayer2.spotifyd"
    • Fix wrong handling of credential cache (#1121)

    Removed

    • Replace redundant reqwest dependency (#1120)
    Downloads