Releases: avncharlie/spotify3ds
Releases · avncharlie/spotify3ds
Release list
1.5.1
What changed
- Spotify rotated its certificate on
accounts.spotify.com. Added the root certificate this host now chains too (Starfield Root Certificate Authority - G2) so we can connect to it. - The Spotify3DS Setup app now displays more information when an error happens
Full Changelog: v1.5.0...1.5.1
1.5.0
What changed
- Added Spotify3DS Setup, a desktop app for Windows, Mac and Linux to streamline setting up Spotify3DS.
- The setup app displays a credential QR code, removing the need to create and
creds.cfgto the SD card to get Spotify3DS working. You can still use the oldbootstrap_auth.pyto do this manually if you would like.
Full Changelog: 1.4.0...v1.5.0
1.4.0
What changed
- Add synchronized lyrics using LRCLIB
- Add searching across library and within individual playlists and album. Cache searches (validated against Spotify's
snapshot_id) and item count, and rebuilt automatically when either says the playlist changed) - Add recent searches: hold the search icon for a panel of the last six queries, tap one to re-run it
- Add hold-to-seek on the D-pad and buttons: tap to skip a track, hold to seek ten seconds and keep going.
- Bunch of cosmetic changes, improvements, bug fixes, UI improvements.
Full Changelog: 1.3.1...1.4.0
1.3.1
What changed
- Replace the catch-all "Auth failed / Check system date/time" screen with a specific cause and remedy for every startup failure, so a dead network, a bad
client_id, a rate limit or a Spotify outage no longer send you to a clock that was already correct (#2). - Stop telling users to edit their credentials when Spotify returns a 429 or a 5xx — those now report a rate limit and a service outage respectively.
- Classify TLS handshake failures separately from certificate rejections, naming the layer that actually failed instead of blaming the console clock.
- Show the raw underlying error beneath the hint, so a bug report can name the real failure when the suggested remedy turns out to be the wrong guess.
- Wrap error text across the full screen instead of ellipsising it, which previously cut messages to "Spotify rejected the l.." and hid the actionable half of the advice.
Full Changelog: 1.3.0...1.3.1
1.3.0
What changed
- Add global Spotify Connect volume control with
L/Rin 5% steps, including press-and-hold adjustment and coalesced device-targeted commands. - Add a centered fading volume overlay with curved speaker waves, a zero-volume mute icon, ten level bars, and device-specific guidance when remote volume is unavailable.
- Move Library section jumps and Tracks pagination to
ZL/ZR, while preserving touch and D-pad boundary paging on original 3DS/2DS models. - Handle Spotify’s six-month refresh-token expiration with actionable reauthorization guidance.
- Add a verified developer volume utility and safer refresh-token rotation handling.
- Add the volume overlay screenshot, prominent volume controls, and QR-code update instructions to the README.
- Make the smoke search fixture wait for album loading instead of failing on network timing.
Full Changelog: 1.2.3...1.3.0
1.2.3
What changed
- Raise the incrementally allocated HTTP response ceiling from 256 KiB to 8 MiB so detailed covers such as Currents and Cherry Bomb load correctly.
- Add a regression test that accepts a complete 6 MiB response while preserving truncation rejection and retry behavior.
- Move text-width measurement and ellipsis fitting into a separate scratch arena so long track names cannot exhaust the frame text buffer.
- Make ellipsis truncation UTF-8-safe.
- Add smoke-test monitoring for frame text-buffer usage; verified peak usage is 264 of 4,096 glyphs.
Full Changelog: 1.2.2...1.2.3
1.2.2
What changed
- Reject and retry truncated fixed-length and chunked HTTP responses instead of decoding partial artwork.
- Reject JPEG recovery warnings that would otherwise fill missing scanlines with gray.
- Invalidate version-3 artwork cache entries so damaged covers are fetched again.
- Distribute artwork by the variable hash suffix across all 256 cache shards instead of filling only the shared
abprefix shard. - Add deterministic host tests for all 256 shard mappings, the 52,411-entry quota, and complete/truncated HTTP framing.
After updating, you may delete /spotify/artcache once to reclaim old version-3 entries. /spotify/trackcache is also obsolete and safe to delete.
Full Changelog: 1.2.1...1.2.2
1.2.1
What changed
- Pressing
Aon a selected track, playlist, or album now starts it, then toggles pause/resume on subsequent presses. - Added an optimistic selected-item target so a fast second
Apauses correctly before Spotify finishes polling. - Added Player, Library, and Tracks screenshots to the README.
Full Changelog: 1.2.0...1.2.1
1.2.0
What changed
- Made the 5 GiB artwork cache initialize without scanning the SD card.
- Pinned the current collection to the Player shelf with a smoother playback equalizer.
- Added shelf tap-to-open, hold-to-play, and collection playback from Tracks.
- Added permanent per-row play/pause controls beside Library chevrons and track queue actions.
- Made Tracks return to Player or Library based on where it was opened.
Full Changelog: 1.1.1...1.2.0