Releases
sonarche-v0.9.0
Compare
Sorry, something went wrong.
No results found
0.9.0 (2026-07-28)
Features
build: let the app update itself (9c503c1 )
build: ship our own Python instead of asking for one (7ada434 )
download: let a job carry a category and stamp it after enrich (082f5f0 )
download: show a download as a card rather than a table row (314a32c )
library: copy a chosen folder into the ark (d51580d )
library: edit an album's metadata in one modal (1ea7fb8 )
library: give an oversized imported cover a version to be drawn from (db65c49 )
library: look at a folder before importing it (9a6b546 )
player: decode the formats an imported library is made of (b91b67f )
player: native audio engine in Rust (11cbb05 )
player: play through the Rust engine instead of the webview (80e9b0b )
player: restore media keys through the OS media session (c9f3dcd )
player: seek that lands, and a gapless hand-over (b06ef4d )
shell: let a cleared step be opened and read again (30e0699 )
shell: offer the update instead of only being able to install it (a8d9a21 )
shell: remember the first-run walkthrough and let it be replayed (ab38fea )
shell: walk the first launch through its three steps (6176646 )
ui: draw the Sonarche ark and make it the app mark (77eb68f )
ui: show the playhead and widen the seek bar's grab area (5f85dc5 )
ui: state an album's completion as a count, not a share (c2ceffe )
ui: tell the user when a track cannot be played (b60c197 )
Bug Fixes
build: check out the release branch before syncing Cargo.lock (d22ee48 )
library: refile a track when its album or artist is renamed (426d9a2 )
library: stop baking the album cover into every imported track (f9213d0 )
shell: make the setup reset actually replay the setup (58bf92c )
Performance Improvements
library: cache the album grouping on the track array's identity (893877a )
library: serve display-sized covers instead of archived originals (b60c29d )
library: stop refetching the whole library on every navigation (9fe72eb )
sidecar: find an imported single by its marker, not by scanning (329b0e1 )
sidecar: give the library listing its own channel (54b3cc8 )
sidecar: pass the library listing through as raw bytes (776339f )
stop redoing library-sized work on every keystroke and render (c4cdcb6 )
You can’t perform that action at this time.