3.10.0 (2026-11-06)
Full Changelog: 3.9.0...3.10.0
Implemented enhancements:
- Native HTTP/SOCKS5 proxy support across outbound services (optional strict mode) #521
- Feature request: Remove Soulseek source copies after successful import into the Downtify library #493
- Apply the audio source order (slskd first) to downloads started from the search bar #420
- slskd: add strict format priority and allowed-format filtering (e.g. FLAC → 320 kbps MP3) #417
- Playlist diagnostics / health summary #402
- Feature request: connect with Spotify to choose imports from user playlists #383
- Feature Request: Lidarr-style Artist Library & Discography Monitoring #317
- Original file format downloading option #249
Fixed bugs:
- Title Streaming from an album can play the wrong track:
videoIdFor()takes the first search hit and ignores duration #514 - Navidrome playlist sync misses tracks unless "Report Real Path" is enabled #392
- Possible race condition: slskd downloads bypass the per-target lock #389
- 500 error viewing lyrics for FLAC files — ValueError in _embedded_lyrics #374
- ValueError during library upgrade scan on .opus files with embedded lyrics #371
- Every downloaded song is just called "unknown.mp3" #264
Closed issues:
- Question: could manual playlists hold more than 500 tracks? #488
Merged pull requests:
- Add first-interaction action #544 (@henriquesebastiao)
- fix: improve playlist editing, Soulseek locking, and Navidrome matching #543 (@pakhozako)
- feat(playlists): reorder Library playlists and repeat songs in them #541 (@ruflas)
- Add stale action #540 (@henriquesebastiao)
- fix(slskd): remove source files after successful import #539 (@henriquesebastiao)
- fix(player): reject streaming matches with wrong duration #538 (@henriquesebastiao)
- fix(lyrics): safely read embedded lyrics across audio formats #537 (@pakhozako)
- docs(i18n): add Simplified Chinese documentation #536 (@pakhozako)
- feat(proxy): support strict outbound HTTP and SOCKS routing #535 (@henriquesebastiao)
- fix(download): honor source order for search results #534 (@henriquesebastiao)
- feat(slskd): add strict format priority and whitelist #533 (@henriquesebastiao)
- feat: add playlist pipeline diagnostics #532 (@henriquesebastiao)
- feat(downloads): keep the best available original audio #530 (@henriquesebastiao)
- feat(i18n): add Simplified Chinese (zh-CN) translation #529 (@pakhozako)
New Contributors
- @pakhozako made their first contribution in #529