github htkhiem/euphonica v0.99.0-beta
v0.99.0-beta: Full async rewrite, better accent colour detection, performance improvements, etc

pre-release5 hours ago

This release marks a major architectural overhaul and rewrite of the codebase into async Rust.

Of the many user-facing benefits are SIGNIFICANT smoothness improvements with the UI no longer ever blocked by any network operation (especially noticeable when connected to a remote MPD server) and the addition of loading spinners in many more places of the UI.
On the developer side, the codebase should now be vastly simplified (at least in terms of control flow) and easier to contribute to.

In addition to this rewrite, the release also comes with a few new features and a lot of bugfixes:

New features

  • Album art: Every image now features loading spinners with smooth fade transitions.
  • Loading states: Main screens include their own overall loading spinners as they populate, plus AdwStatus placeholders for empty states.
  • Reliability: Automatic retrying for metadata fetches, plus error toasts instead of silent failures.
  • New "pending tasks" popover, visible on the top-left of the window when there are more than 3 running background operations.

Improvements

  • Significantly smoother UI thanks to all network operations being moved off the main thread and exposed as async operations to UI thread.
  • Accent colour detection has been significantly improved. It now prefers the most saturated swatch and automatically adjusts brightness to ensure legibility in both dark and light modes.

Bugfixes

We've fixed some important issues with the metadata fetching process. Artist avatar hit rates are improved, and album art downloading is back to normal levels.

You can re-attempt metadata fetching for specific albums or artists directly from the app. Alternatively, you can remove the cache folder, but be aware this will trigger a full redownload and erase all user-set images!

  • Fix: MusicBrainz album art fetching now works correctly, improving hit rate.
  • Fix: Artist avatar fetching now works correctly (again).
  • Fix: Dynamic Playlists are now correctly hidden when the MPD server does not advertise stickers support.
  • Fix: Songs from other albums with the same name string appearing in content view.
  • Fix: SQLite metadata conflicts.
  • Fix: Embedded album art not correctly rendered on first boot.

Pull Requests

New Contributors

A huge shout-out to @ShadiestGoat for her rigorous testing and invaluable support. This release was the most taxing technically and mentally we've faced. Her assistance was tremendous in catching the inevitable regressions and bugs that come with a refactor of this scale.

Full Changelog: v0.98.1-beta.1...v0.99.0-beta

Don't miss a new euphonica release

NewReleases is sending notifications on new releases.