Stash v0.9.83 — your music stops disappearing
This is the big one. For weeks the same report kept coming in: sync says it
worked, and songs are gone. Empty playlists. Downloads that vanished after a
reinstall. Mixes that lost half their tracks. We went looking and found five
different ways Stash could quietly delete your music without ever showing an
error. All five are fixed here.
Also in this release: the ⋮ menu is finally everywhere, you can upgrade your
whole library to FLAC in one go, and radio tells you what went wrong instead
of just shrugging.
Your music stays put now
Playlists that synced fine and showed zero songs. If a playlist came back
with its name and cover art but nothing inside, this was why — saving it a
second time deleted the original first, and took every song in it along. The
same flaw on the track side could strip a song's play count, lyrics and tags.
Stash now refuses the bad save instead of quietly wiping what was already
there.
Mixes emptying halfway through a refresh. Rebuilding a mix happened in two
steps, so anything that interrupted it — a crash, Android killing the app,
running out of memory — left the mix half-built for good. It's one step now:
it either finishes or nothing changes.
Downloads deleted right after you re-added them. Stash cleans up downloads
that no longer belong to any playlist, but it was working from an out-of-date
list — so a song you'd just added back got deleted anyway, file and all. It
now checks and deletes in the same breath.
A corrupt backup could take your library with it. Restoring wrote straight
over your live database, so a half-downloaded or damaged backup file left you
with nothing. Restores are now checked for damage before anything is replaced,
and keep a rollback copy.
"Too many SQL variables" and "FOREIGN KEY constraint failed" on big
libraries. v0.9.82 patched the two places people were hitting. This release
fixes the whole pattern, everywhere it shows up.
Cancelling a sync no longer looks like a crash. It reported itself as a
failure, which buried the real sync problems underneath it.
A full phone no longer traps Stash in a crash loop when you open it.
Sync catches more of your music
- Playlists you follow but don't own — a friend's Discover Weekly, a Release
Radar — now sync instead of being silently skipped. (#360, #354 — thanks
@chaudhary-lakshay) - The Albums tab no longer crashes when the same album shows up twice.
(#366 — thanks @chaudhary-lakshay) - Songs in the offline queue don't play twice. (#353 — thanks @JoshDui)
- Opus downloads stick. (#347 — thanks @JoshDui)
- Better track matching across YouTube IDs, plus a batch of sync fixes.
(#359, #364 — thanks @ParaliyzedEvo)
New
The ⋮ menu, everywhere it should have been. The play queue had no menus at
all. The top search result had none. Album and Artist pages had no way to
download a single song. All three now open the same menu you already know:
play next, save to a playlist, download, share, start a radio.
Upgrade your library to FLAC in batches. A new Non-FLAC filter shows every
lossy track you own. Pick the ones worth upgrading, see how much space it'll
take before you commit, and let it run in the background.
Radio explains itself. When a radio can't start you get the actual reason
instead of silence, and the button animates while it's tuning so you know
something is happening.
Pin your playlists, jump straight to an album, set a sleep timer, and
deeper AMOLED blacks. (#356 — thanks @ParaliyzedEvo)
Settings search actually searches. (thanks @ParaliyzedEvo)
Nicer to use
- Tapping the tab you're already on takes you back to its main screen, instead
of sitting there looking frozen. - The Songs and Liked tabs got the full track menu — save to playlist,
download, share — and Liked now supports long-press to select a batch. - Queue gets its own button in Now Playing instead of hiding in the overflow.
- Smoother playback screen and a snappier library search, most noticeable on
big libraries. - The scrollbar no longer eats taps along the right edge of the screen.
Behind the scenes
Crash reports now include Android's own record of why the app died — ANRs,
out-of-memory kills, native crashes — which is exactly what the Android Auto
and memory reports needed. And every module's tests get compiled on every
change now, so a broken test can't quietly ride along into a release.
After you update
Your library, downloads and sync history all come with you. Playlists that got
emptied by the bugs above will fill back in on your next sync; anything the
cleanup bug deleted from disk will re-download.
If you reported any of this, please update and say on your issue whether it's
fixed — several of these are genuinely hard for us to confirm from this side.
Install
Download the .apk below and open it on your Android device. If you've got a previous Stash release installed, this upgrades in place — your library, sync history, and settings are preserved.
Requires: Android 8.0 (API 26) or newer.
See the README for first-time setup.
What's Changed
- fix(sync): reject cross-identity merges when canonical match carries a conflicting provider ID by @ParaliyzedEvo in #359
- fix(sync): stop manual re-sync from cancelling in-flight sync + show live fetch/diff progress by @ParaliyzedEvo in #364
- fix(library): Albums tab force-closes on a duplicate album grid key by @chaudhary-lakshay in #366
- fix(sync): followed "Made For You" playlists were dropped by the spotify-owner filter by @chaudhary-lakshay in #360
- fix: make OPUS downloads and persistence reliable by @JoshDui in #347
Full Changelog: v0.9.82...v0.9.83