v0.1.0
- 🌟 feat: deprecate user-pass login in favor of OAuth2 flow 1e82a27 @devgianlu
- 💄 chore: update README 61e7b9e @devgianlu
- 💄 chore: remove leftover user-pass APIs f07d666 @devgianlu
- 🐞 fix: prevent time bar not advancing because of zero playback speed 16741ac @devgianlu
- 💄 chore: fix typo 3d335b0 @devgianlu
- 🌟 feat: better logging when no playable formats are available 68b0765 @devgianlu
- 🐝 refactor: rename package to
github.com/devgianlu/go-librespot
34f6371 @devgianlu - 🌟 feat: set allowed origins for websocket endpoint 803de1b @devgianlu
- 📄 fixed ring buffer usage for audio syncing 0aa24de @tooxo
- 🌟 feat: some API request params validation b9bc8c8 @devgianlu
- 🌟 feat: add web-api passthrough 84b3c3f @momozahara
- 🐞 fix: reload context if client didn't send the entire playlist #70 da0644f @tooxo
- 🐞 fix: do not drop track early when advancing next 7c78eae @devgianlu
- 🐞 fix: skipping to the wrong song in some occasions (#61) 888787f @tooxo
- 🐞 fix: delegate starting receiver loops to caller (#69) 569ab07 @silenium-dev
- 🐞 fix: avoid removing currently playing queued track cdd6a53 @devgianlu
- 🐞 fix: dealer and accesspoint reconnection fixes fcbfa2c @devgianlu
- 🐞 fix: avoid double locking on accesspoint reconnect 2803a90 @devgianlu
- 🐞 fix: ignore track index when track uri or track uid is available 2c86cac @tooxo
- 💄 chore: add explanatory comment 9da1361 @tooxo
- 🌟 feat: add support for AP proxy 08a2271 @HirbodBehnam
- 🐞 fix: remove unused "target_alias_id" field from dealer payload 5fb116d @devgianlu
- 🐞 fix: avoid nil deref when playing without player options override 7ce80cf @devgianlu
- 🐞 fix: do not reset dealer receivers list on reconnect b98dad6 @devgianlu
- 🌟 feat: add TLS support to API server ab6c852 @tylkie
- 🐞 fix: support seek_to from the web player 0c9538a @aykevl
- 🐞 fix: try multiple times to connect to an AP 0ad7f6a @aykevl
- 💄 chore: run goimports 54a2210 @aykevl
- 🌟 feat: do no exit with error when config file is not set e4fb319 @aykevl
- 🌟 feat: default to zeroconf credentials 79bfa60 @aykevl
- 🌟 feat: add hostname to default device name efe81ed @aykevl
- 🐞 fix: avoid race conditions 9dcbd18 @aykevl
- 🐞 fix: small fixes to accesspoint connect retry logic 16f3506 @aykevl
- 📖 - 📖 docs: list dependencies in README f73f702 @aykevl
- 🐞 fix: map audio logarithmically, not linearly 9da54b7 @aykevl
- 🐞 fix: improve CORS support in API 015e82c @devgianlu
- 💄 chore: add CORS to README f99be98 @devgianlu
- 🐞 fix: handle web API passthrough bad request 57fc714 @devgianlu
- 🌟 feat: add token endpoint to API b95e6ac @felixstorm
- 🌟 feat: improve configuration parsing 3d54bfe @devgianlu
- 🐝 refactor: minor logging improvements 9e41b6c @devgianlu
- 🐞 fix: timeout audio key requests 117b929 @devgianlu
- 🐞 fix: avoid deadlocking
KeyProvider
receive loop 192e981 @devgianlu - 🌟 feat: support relative seek via API f63a67f @devgianlu
- 🌟 feat: support playpause endpoint that emulates the "play/pause" button 4bb0adc @aykevl
- 🌟 feat: support relative volume changes in the API e013bab @aykevl
- 🐞 fix: use correct volume range (0...100) in /status 39f9221 @aykevl
- 🐞 fix: do not throw away AP receivers on reconnection 516de68 @devgianlu
- 🌟 feat: read configuration from OS-specific config dir instead of CWD eaeb2ec @aykevl
- 🌟 feat: move credentials in common app state 44797c6 @aykevl
- 🌟 feat: save generated device ID in app state 5619e11 @aykevl
- 🌟 feat: support persisting Zeroconf credentials 29c5798 @devgianlu
- 🐞 fix: retry PutConnectState on error 4a2c8ad @kenny59
- 🐞 fix: update PlaybackSpeed when changing the IsPaused flag 23c4294 @aykevl
- 🐞 fix: do not panic when the URI of the next track is unset 70a2499 @aykevl
- 🌟 feat: use lockfile to avoid multiple go-librespot instances 42c5b02 @aykevl
- 🐞 fix: use nice formatting in state.json a6062d6 @aykevl
- 🐞 fix: make writeAppState atomic 9dc93f6 @aykevl
- 🐞 fix: default API to localhost f83822d @aykevl
- 🐞 fix: only stop playback with new cluster updates 60b4938 @aykevl
- 🐞 fix: put previous tracks in the right order 0406a40 @aykevl
- 🐞 fix: don't seek to the start when swiping right 39f51bc @aykevl
- 🐞 fix: assign UIDs to newly added tracks 0e4f213 @aykevl
- 🐞 fix: initialize vorbis stream on the first read e5e55ee @aykevl
- 🌟 feat: improve efficiency of the decryptor cbdc27a @aykevl
- 🌟 feat: don't seek when it's not needed b9788ab @aykevl
- 🐝 refactor: move skip next logic fb67bfe @devgianlu
- 🐞 fix: translate GID to URI when comparing tracks 02918ae @devgianlu
- 🌟 feat: support seek to specific track from API 2fa82a6 @devgianlu
- 💄 chore: use Buf to build proto 634c950 @devgianlu
- 🌟 feat: add support for playlist signals 8933c38 @devgianlu
- 🌟 feat: update some Spotify Connect protobuf definitions d977b75 @devgianlu
- 🐞 fix: set a reasonable period size instead of using the default 955e23b @aykevl
- 🌟 feat: rewrite ALSA buffering 2bd5800 @aykevl
- 🐝 refactor: cleanup unused fields 8825312 @devgianlu
- 🐝 refactor: make zeroconf server log visible with default configuration 45aeb49 @devgianlu
- 💄 chore: update README and documentation 01fcfaf @devgianlu
- 💄 chore: add cross compilation documentation b2d67f0 @felixstorm
- 💢 ci: use Docker to build release 2fbfc50 @devgianlu
- 🌟 feat: print version when starting 293e672 @devgianlu
- 💢 ci: update runner to Ubuntu 22.04 31b206d @devgianlu
- 💢 ci: always build binaries 249b8fe @devgianlu