Releases: thedinz/SpotifyBU
Release list
SpotifyBU 1.7.0
SpotifyBU 1.7.0
SpotifyBU 1.7.0 promotes Plex playlist sync from the dev track to the stable
release. Spotify playlists can now sync matched local tracks into Plex playlists
alongside the existing Navidrome workflow.
Added
- Settings now stores optional Plex server URL, token, and music library key
values for playlist sync. - Playlist views can replace, append, or full-sync a same-named Plex playlist
from matched Spotify tracks. - Plex playlist sync now carries Spotify playlist artwork into Plex when
artwork is available. - Plex matching checks scanned, accessible, and playable files before adding
tracks to a playlist, and reports skipped tracks in the UI. - Music library organize ignores can be added and removed when a matched file
should intentionally stay outside the canonical layout.
Changed
- Provider downloads and identity-tag backfills now add Navidrome-compatible
release tags in addition to SpotifyBU identity metadata. - Identity-tag backfill progress handling is more resilient for existing
libraries. - Organize matching is stricter about the expected source and destination paths.
Verified
- TypeScript check passes with
tsc --noEmit. - Production build passes with
next build. - Unit tests pass with
npm test.
SpotifyBU 1.6.2
SpotifyBU 1.6.2
SpotifyBU 1.6.2 restores Navidrome-first product language after the generic
music-library wording in the 1.6.x cleanup made the intended target less clear.
Changed
- README, Docker examples, and
.env.docker.examplenow present
NAVIDROME_*variables as the natural setup path for Navidrome installs. - UI and API status messages now refer to the Navidrome folder, Navidrome API,
Navidrome scans, and Navidrome playlist syncs where that is what users are
configuring. - The generic
MUSIC_LIBRARY_*names remain accepted equivalents for existing
installs and non-Navidrome Subsonic-compatible setups. - Direct non-Docker installs can now use
NAVIDROME_MUSIC_PATHas another alias
for the local music folder path.
Verified
- TypeScript check passes with
tsc --noEmit. - Production build passes with
next build. - Unit tests pass with
npm test.
SpotifyBU 1.6.1
SpotifyBU 1.6.1
SpotifyBU 1.6.1 restores compatibility with older Navidrome-named environment
variables after the 1.6.0 music-library naming cleanup.
Fixed
- Existing installs that still set
NAVIDROME_USERNAMEand
NAVIDROME_PASSWORDnow continue to request Subsonic-compatible music server
scans. - Existing installs that still set
NAVIDROME_URLorNAVIDROME_LIBRARY_PATH
are accepted as legacy aliases forMUSIC_LIBRARY_URLand
MUSIC_LIBRARY_PATH. - The checked-in Docker Compose template now bridges old
.envvalues such as
NAVIDROME_MUSIC_PATH,NAVIDROME_URL,NAVIDROME_USERNAME, and
NAVIDROME_PASSWORDto the new generic music-library names. - UI/API guidance now mentions that legacy
NAVIDROME_USERNAMEand
NAVIDROME_PASSWORDare still accepted.
Verified
- TypeScript check passes with
tsc --noEmit. - Production build passes with
next build. - Unit tests pass with
npm test.
SpotifyBU 1.6.0
SpotifyBU 1.6.0
SpotifyBU 1.6.0 adds durable Spotify identity tagging for SpotifyBU-managed
downloads, so newly tagged files can reconnect to Spotify tracks even after
another organizer moves or renames them.
Added
- SpotifyBU provider downloads now write custom Spotify identity metadata:
spotifybu:track_id,spotifybu:track_uri,spotifybu:album_id,
spotifybu:isrc, andspotifybu:identity_version. - Library indexing reads those identity tags into optional indexed-track fields
while preserving compatibility with existing.spotifybu/library-index.json
files. - Music library matching now checks exact Spotify track ID and URI matches
before falling back to ISRC, metadata, duration, and path matching. - Settings includes a maintenance action to retag already matched backups from
saved SpotifyBU playlist snapshots. - A new
/api/music-library/identity-tagsendpoint runs the backfill workflow.
Changed
- SpotifyBU-created files keep normal title, artist, album, album artist, track,
disc, and ISRC tags unchanged while adding the durable identity tags. - Playlist membership remains in SpotifyBU's playlist backup snapshots and local
database, not in audio-file metadata.
Verified
- TypeScript check passes with
tsc --noEmit. - Production build passes with
next build. - Unit tests pass with
npm test.
SpotifyBU 1.4.0
SpotifyBU 1.4.0
SpotifyBU 1.4.0 adds the canonical organize scheme for staged Navidrome files.
Added
- Settings now includes an Organize Scheme section for the SpotifyBU layout.
- The organize scheme uses the shared clean artist/album/year layout.
Changed
- Folder planning, provider download destinations, matched-file organization,
and playlist match status now use the SpotifyBU organize scheme. - The Library Index action is labeled directly in the operations panel, and
stale track badges now sayIndex needed.
Verified
- TypeScript check passes with
tsc --noEmit. - Provider matching tests pass under Node 24.14.0.
- Production build passes with
next build.
DO NOT USE - SpotifyBU 1.3.0
Warning
This release has been superseded by SpotifyBU 1.4.0 and should not be used.
Use v1.4.0 or newer.
SpotifyBU 1.3.0
SpotifyBU 1.3.0 adds an explicit full-sync mode for Navidrome playlists.
Added
- Navidrome playlist sync now includes
Full syncalongsideReplaceand
Append. - Full sync removes stale Navidrome playlist entries before adding the current
matched Spotify track order, so tracks removed from Spotify can be removed
from the same-named Navidrome playlist too. - Full-sync results report stale removals and missing additions in the playlist
sync confirmation message.
Changed
- Navidrome playlist sync API requests now preserve all recognized sync modes
instead of treating unknown non-append values as replace.
Verified
- TypeScript check passes with
tsc --noEmit. - Provider matching tests pass under Node 24.14.0.
DO NOT USE - SpotifyBU 1.2.6
Warning
This release has been superseded by SpotifyBU 1.4.0 and should not be used.
Use v1.4.0 or newer.
SpotifyBU 1.2.6
SpotifyBU 1.2.6 improves playlist backup visibility when a Spotify playlist
changes after it was previously backed up.
Changed
- Playlist rail status now shows a red
N not backed upbadge when Spotify's
current playlist total is higher than the latest saved backup snapshot. - Opened playlists use exact Navidrome match state for their missing backup
count, so the rail updates from snapshot-based status to precise coverage
after the playlist loads. - Fully covered playlists still show the green
Backed upbadge, and saved
metadata snapshots continue to showDB saved.
Verified
- Provider matching tests pass under Node 22.22.3.
- TypeScript check passes with
tsc --noEmit.
DO NOT USE - SpotifyBU 1.2.5
Warning
This release has been superseded by SpotifyBU 1.4.0 and should not be used.
Use v1.4.0 or newer.
Outdated: Use the latest release unless you specifically need this version.
SpotifyBU 1.2.5
SpotifyBU 1.2.5 improves automatic YouTube candidate discovery for tracks
whose best source depends on album, live/session, or featured-artist metadata.
Changed
- YouTube provider search now starts with a richer query that includes the
track title, up to three Spotify artists, and the album name before falling
back to the older official-audio query. - YouTube candidates are de-duped across query variants and re-ranked by the
existing scorer, so album-aware matching can choose better recordings when a
broader search finds them. - Provider query construction now has focused tests to protect album and
featured-artist search behavior.
Fixed
- Improved matching for same-title worship recordings where a high-ranked
YouTube result is a different artist/version and the expected recording is
discoverable only when album or featured-artist text is included.
Verified
- Provider matching tests pass under Node 22.22.3.
- TypeScript check passes with
npm run typecheck. - Production build passes under Node 22.22.3.
DO NOT USE - SpotifyBU 1.2.4
Warning
This release has been superseded by SpotifyBU 1.4.0 and should not be used.
Use v1.4.0 or newer.
Outdated: Use the latest release unless you specifically need this version.
SpotifyBU 1.2.4
SpotifyBU 1.2.4 makes matched-file organization clearer and adds targeted
organization actions throughout the track workflow.
Added
- Red
Orginizeactions for individual matched tracks that are outside their
planned Lidarr-compatible folder. - Album-target organization buttons that move only the tracks belonging to
that destination.
Changed
- Tracks already in their planned location now show a green
Orginized
status instead ofBacked up. - The whole-source organization action and targeted actions share the same
batching, progress, library-index refresh, and match-refresh behavior. - Organization controls lock while files are moving to avoid conflicting
rename operations.
Verified
- TypeScript check passes with
npm run typecheck. - Provider scoring tests pass with
npm test. - Production build passes with
npm run build. - The local production route responds successfully after the build.
DO NOT USE - SpotifyBU 1.2.3
Warning
This release has been superseded by SpotifyBU 1.4.0 and should not be used.
Use v1.4.0 or newer.
Outdated: Use the latest release unless you specifically need this version.
SpotifyBU 1.2.3
SpotifyBU 1.2.3 improves provider candidate selection and makes the
Navidrome album organization targets easier to understand.
Changed
- Provider candidate scoring now lives in a shared scoring helper with focused
tests, so automatic matching favors better title, artist, and duration
signals. - The Navidrome folder destination section is now labeled as album
organization targets and explains whether tracks are backed up, need
organizing, are partly backed up, or still need download targets. - Existing backed-up tracks are no longer described as
folder plannedjust
because the SpotifyBU folder log did not create that folder originally.
Verified
- TypeScript check passes with
npm run typecheck. - Provider scoring tests pass with
npm test.