This release adds 1 notable feature for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Summary
AI summaryUpdates new, internal, and Clean across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Low |
Prefer explicit versions setting ranks explicit files higher and demotes clean/censored variants in result selection. Prefer explicit versions setting ranks explicit files higher and demotes clean/censored variants in result selection. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Performance | Medium |
/status endpoint no longer returns 500 when polled concurrently; added proper locking. /status endpoint no longer returns 500 when polled concurrently; added proper locking. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Bugfix | Medium |
Multi-disc downloads now respect template and create separate disc folders. Multi-disc downloads now respect template and create separate disc folders. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Bugfix | Medium |
Track number repair correctly handles disc-aware filenames without altering proper tags. Track number repair correctly handles disc-aware filenames without altering proper tags. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Bugfix | Medium |
Mobile album modal buttons are now tappable on phones. Mobile album modal buttons are now tappable on phones. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Bugfix | Medium |
Server playlists page loads faster (few seconds) and updates only changed rows on sync. Server playlists page loads faster (few seconds) and updates only changed rows on sync. Source: llm_adapter@2026-07-15 Confidence: low |
— |
Full changelog
soulsync 2.8.9 — dev → main
bug-fix + quality-of-life release.
fixes
- multi-disc downloads fixed (#1009) — downloading a box set was collapsing every disc into one folder (the album-folder reuse logic funneled all discs into whichever disc folder landed first). multi-disc albums now always follow your template, so
$cdnum/$discfolders and the auto "Disc N" folders actually stick. - track number repair is disc-aware (#1009) — the repair job was mangling
$disc$trackfilenames (0213 became 133), flagging perfectly-formatted box sets as broken, and rewriting correct tags. it now understands discs: repairs keep your naming convention (0213 for disc 2 track 13, plain 01 for single disc), correct files are left alone, and approving a finding applies exactly the change it shows. - server playlists page is fast now (#1005) — opening a big synced playlist took 15+ seconds; it's a few seconds now. the missing/matched filter actually filters after a reload, and syncing a single song updates just that row instead of reloading the whole 2k-track playlist.
- /status could 500 with multiple tabs open — concurrent status polls raced on a shared deque; found by @bluejorts's new e2e sweep, fixed with a proper lock.
- mobile: album modal buttons were untappable (#1007) — the floating bell/help buttons sat on top of the modal's close/wishlist buttons on phones. thanks @bluejorts.
new
- prefer explicit versions (#923) — new sub-setting under "Allow explicit content": when picking between soulseek results, explicit-marked files rank up and clean/censored/radio-edit files rank down. nothing is ever skipped — if only a clean version exists it still downloads. also fixes bare "(Clean)"/"(Censored)" markers being invisible to version matching for everyone.
internal
- react pages got a shared header component (#1008) and the webui is now gated in CI (lint, build, 96 vitest tests) plus a new e2e route sweep at desktop+mobile (#1010, #1012) — all @bluejorts.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Beta — feedback welcome: [email protected]