Releases: iamdb/hifi.rs
Releases · iamdb/hifi.rs
v0.3.8
v0.3.7
This is a maintenance release. It further simplifies the code by removing the player controls struct and action listener and instead other modules use the controls exported from the player module.
In addition, a justfile
was added to make Github Actions work more predictably for cross-platform building and an arm64 build has been added to the binaries built for release. If/when Github Actions has better support for ARM Macs, I will add that to the list as well.
What's Changed
- Removes the control struct, changes github actions by @iamdb in #223
- Updates crates and bumps player version by @iamdb in #224
- Fix Linux release by @iamdb in #225
- add container to linux release def by @iamdb in #226
- update readme, fix linux release by @iamdb in #227
Full Changelog: v0.3.6...v0.3.7
v0.3.6
Bug Fixes / Maintainence
This is mainly just work to further optimize the code and make it more efficient. It also includes bug fixes and an arm64 Dockerfile.
- lowers gstreamer version requirement to 1.18
- adds dockerfile and build script for arm64
- removes old code, lots of
.clone()
calls - removes 'static lifetimes on mpris methods
- fixes progress bar overlay showing over open menu
- update crates
- uses more references where possible
v0.3.5
v0.3.4
This is a maintenance release.
Fixes/Changes
- Changes the client used to access the Qobuz music service in the player into a trait for a MusicService. This makes it so the player defines the interface to provide it with data allowing for the possibility of supporting other services.
- The bit depth and sample rate displayed in the player UIs is retrieved from the player to make it universal.
- Changes to the Qobuz API were made so the login method accepts the username and password so it aligns with the trait.
- Caches data from Qobuz primarily to make reopening large playlists quicker.
- Removes the CurrentTrack and Duration notifications.
- Adds an AudioQuality, Loading and Quit notification.
- Removes a lot of early-made types that are not needed.
- Handles player messages, except for buffering, asynchronously.
- Sends player broadcasts when switching entities or tracks optimistically so the UIs update quicker.
- Fixes issues with the UIs caused by these changes
- Gracefully exits all threads when quitting.
- Changes queue type from a Vec to a BTreeMap to help performance with longer lists.
- Updates all crates
- Adjusts the sizes of channels
- Updates SvelteKit to 1.25
- adds target state to loading notification for players
- fixes end of stream not going to first track
- fixes some old code around track playing in the player that was functional but incorrect
- adds a loading icon to the tui and changes the web ui notifications so they don't overlap
- has the resume function wait for the player to reach a paused state before seeking to the last saved position.
- fixes the loading state not working in the web ui
- adds a progress bar to the web ui