v2.0.0-rc.2
Pre-release
Pre-release
·
342 commits
to main
since this release
What's Changed
- feat(ui): add mirrored spectrum visualizer by Bjarne Øverli (@bjarneo) (
c44ac4c) - refactor(ui): remove compact mode by Bjarne Øverli (@bjarneo) (
a2bec0b) - feat(ui): add simplified playback mode by Bjarne Øverli (@bjarneo) (
8082a0e) - Merge pull request #313 from tarzan/tidal-provider by bjarneo (@bjarneo) (
170071a) - fix(ui): smooth raw waveform updates by Bjarne Øverli (@bjarneo) (
5d74f32) - feat(ui): add 60 FPS visualizer mode by Bjarne Øverli (@bjarneo) (
1565386) - feat(tidal): log delivered format on every source resolution by Maarten Jacobs (@tarzan) (
2ee73eb) - feat(tidal): DASH FLAC playback and play-time source resolution by Maarten Jacobs (@tarzan) (
0f2cc66) - feat(player): add play-time source resolvers and segmented downloads by Maarten Jacobs (@tarzan) (
79d7464) - fix(ci): restore macOS IPC checks by Bjarne Øverli (@bjarneo) (
ef8d75a) - feat(ipc): make remote control v2-only by Bjarne Øverli (@bjarneo) (
c75cdec) - ci: deploy Pages on releases by Bjarne Øverli (@bjarneo) (
bf4130f) - feat(tidal): add sanitized playback probe for API verification by Maarten Jacobs (@tarzan) (
ff90dee) - fix: address review comments on Tidal provider by Maarten Jacobs (@tarzan) (
0278625) - feat: add Tidal provider with lossless streaming by Maarten Jacobs (@tarzan) (
24b3028) - feat(ipc): add versioned runtime control API by Bjarne Øverli (@bjarneo) (
7f00740) - feat(release): add prerelease update channel by Bjarne Øverli (@bjarneo) (
f91b517) - feat(radio): add hidden stats view by Bjarne Øverli (@bjarneo) (
b898032) - fix(player): decode live streams off the speaker mutex (#340) by Luís Otávio Pompolini Paiva (@OtavioPompolini) (
77b6132) - fix(ci): restore security and Windows checks by Bjarne Øverli (@bjarneo) (
2ac3f9e) - fix(release): scope Go dependency to HEAD by Bjarne Øverli (@bjarneo) (
a7b9eda) - fix(player): prevent radio stutter and channel skips by Bjarne Øverli (@bjarneo) (
1f2e5ac) - feat: add nix support (#336) by Alex Six (@alexandersix) (
f10ceaf) - fix(ytmusic): cancel cookie loads on shutdown by Bjarne Øverli (@bjarneo) (
4222ddb) - fix(ui): cancel stale Spotify playlist lookups by Bjarne Øverli (@bjarneo) (
c11504d) - fix(ytmusic): reject stale cookie cache writes by Bjarne Øverli (@bjarneo) (
9edbcc2) - fix(ytmusic): bound cookie playlist loads by Bjarne Øverli (@bjarneo) (
f3a7d64) - fix(ui): cancel abandoned Spotify album loads by Bjarne Øverli (@bjarneo) (
5e3fc47) - fix(ytmusic): scope playlist classifications by Bjarne Øverli (@bjarneo) (
edc9399) - fix(ytmusic): bind cache scope to session by Bjarne Øverli (@bjarneo) (
13d7356) - fix(release): install Windows runtime archive by Bjarne Øverli (@bjarneo) (
054dc82) - fix(release): build mpg123 static archive by Bjarne Øverli (@bjarneo) (
30d03b0) - fix(spotify): avoid unsafe decoder cleanup by Bjarne Øverli (@bjarneo) (
afc6e6d) - fix(ui): keep Spotify errors within scroll budget by Bjarne Øverli (@bjarneo) (
cce9b4a) - fix(ytmusic): preserve playlist batch boundaries by Bjarne Øverli (@bjarneo) (
0a18420) - fix(ytmusic): isolate cache data by account by Bjarne Øverli (@bjarneo) (
724537d) - fix(release): bundle Windows runtime DLLs by Bjarne Øverli (@bjarneo) (
a4bd338) - docs(site): update Windows Spotify support by Bjarne Øverli (@bjarneo) (
98b00f8) - fix(setup): allow YouTube OAuth with cookies by Bjarne Øverli (@bjarneo) (
95a63ac) - fix(packaging): declare mpg123 dependency by Bjarne Øverli (@bjarneo) (
d894e0d) - fix(ui): settle paused visualizer state by Bjarne Øverli (@bjarneo) (
5b6288f) - fix(ui): keep Spotify search feedback visible by Bjarne Øverli (@bjarneo) (
86d836c) - fix(ytmusic): batch playlists and cancel searches by Bjarne Øverli (@bjarneo) (
d11017c) - fix(ytmusic): scope caches by authentication by Bjarne Øverli (@bjarneo) (
755dcf7) - fix(plex): respect returned playlist page size by Bjarne Øverli (@bjarneo) (
983641b) - fix(spotify): close decoder resources by Bjarne Øverli (@bjarneo) (
10894b3) - fix(ui): ignore canceled Spotify album loads by Bjarne Øverli (@bjarneo) (
7cc5cdc) - fix(release): build Spotify codec support by Bjarne Øverli (@bjarneo) (
154b230) - fix(ci): install Spotify codec dependencies by Bjarne Øverli (@bjarneo) (
2396774) - security: prevent SSH option injection via URL host (#325) by 82Sam (@Ivyson) (
757e744) - feat(ytmusic): support cookie-backed zero-oauth playlist browsing (#314) by Praveen Raj (@pc799) (
23685fc) - feat(spotify): search albums and open them from the results (#318) by Jankees van Woezik (@jankeesvw) (
23b3222) - feat(plex): browse server playlists alongside albums (#321) by Impure6529 (@Impure6529) (
f05bff1) - fix: handle capital keybindings from enhanced keyboard events (#322) by Matt Van Horn (@mvanhorn) (
e0328d9) - fix(ui): decay visualizer to rest when paused (#327) by Tharin Fernando (@tharinfernando) (
5ca8722) - Enable Spotify support on Windows (#323) by Luguin (@Luguin8) (
49c2cc7) - feat(ipc): report live radio metadata in status (#319) by Cory Shaw (@coryshaw1) (
0c9c30d) - docs: add herdr-cliamp to community plugins (#320) by Cory Shaw (@coryshaw1) (
cfdcb94) - perf: optimize playback and Spotify switching by Bjarne Øverli (@bjarneo) (
b9f6856) - fix(spotify): propagate paged search failures by Bjarne Øverli (@bjarneo) (
a491ce2) - fix(spotify): page search around the Development Mode limit (#315) by Jankees van Woezik (@jankeesvw) (
dc5eaee) - docs(site): add Discord RPC community plugin (#316) by Faza Iman Imron (@fazaimron27) (
b5478b9) - fix: make built-in themes accessible by Bjarne Øverli (@bjarneo) (
ea464de) - feat: add classic Winamp theme by Bjarne Øverli (@bjarneo) (
5a588f5) - fix: preserve custom EQ curve by Bjarne Øverli (@bjarneo) (
548ed24) - fix: keep live radio on current station by Bjarne Øverli (@bjarneo) (
eee503d) - feat: enrich playlist album via file metadata (#307) by RGR09 (@RGR09) (
7ce3dc4) - feat: dynamic directory playlists via [[dir]] sources (#308) by Taha Sadough (@tahadx) (
78fcefa) - Merge pull request #310 from coryshaw1/feat/audiobookshelf by bjarneo (@bjarneo) (
385b227) - feat(plugins): add retained event pub/sub over IPC (#303) by Faza Iman Imron (@fazaimron27) (
f373776) - fix(upgrade): replace running binary on Windows (#302) by Floze (@floze-the-genius) (
35f7339) - refactor(provider): return reporting failures instead of discarding them by coryshaw1 (@coryshaw1) (
70dcc75) - fix(audiobookshelf): tag each error with the provider name once by coryshaw1 (@coryshaw1) (
9355138) - fix(audiobookshelf): wrap client errors with the failing operation by coryshaw1 (@coryshaw1) (
aceb651) - fix(audiobookshelf): re-login and retry once after a 401 by coryshaw1 (@coryshaw1) (
2dac490) - fix(audiobookshelf): wrap the setup probe error, log progress failures by coryshaw1 (@coryshaw1) (
f30769b) - fix(audiobookshelf): check cancellation before the first search request by coryshaw1 (@coryshaw1) (
6688ff4) - fix(audiobookshelf): wrap search cancellation errors, cover both checks by coryshaw1 (@coryshaw1) (
75aff0d) - fix(audiobookshelf): honor the search context, sync docs and site by coryshaw1 (@coryshaw1) (
89c184f) - style(audiobookshelf): assert PlaybackReporter like the sibling providers by coryshaw1 (@coryshaw1) (
1a6bb81) - fix(audiobookshelf): expand item requests and PATCH progress writes by coryshaw1 (@coryshaw1) (
77d1681) - docs: note buffered-download memory/seek caveat and narrow resume scope by coryshaw1 (@coryshaw1) (
38948f9) - fix(audiobookshelf): fix review findings from the fix wave by coryshaw1 (@coryshaw1) (
b7042fe) - docs: document the audiobookshelf provider by coryshaw1 (@coryshaw1) (
28467a1) - feat(ui): let providers name their browse levels by coryshaw1 (@coryshaw1) (
375873b) - feat: register the audiobookshelf provider by coryshaw1 (@coryshaw1) (
8979c60) - feat(ui): resume provider playback position and report progress by coryshaw1 (@coryshaw1) (
872afc4) - fix(audiobookshelf): clamp resume offset to the target track's duration by coryshaw1 (@coryshaw1) (
05c39c8) - feat(audiobookshelf): resolve the stored resume position by coryshaw1 (@coryshaw1) (
9097fcc) - feat(audiobookshelf): report listening position to the server by coryshaw1 (@coryshaw1) (
ba6d91d) - fix(audiobookshelf): cache empty book catalog instead of refetching by coryshaw1 (@coryshaw1) (
5e50c74) - feat(audiobookshelf): browse authors and books, search the library by coryshaw1 (@coryshaw1) (
af9511f) - fix(audiobookshelf): cache empty Playlists() results by coryshaw1 (@coryshaw1) (
2a1d05b) - feat(audiobookshelf): list audiobooks, podcasts, and their tracks by coryshaw1 (@coryshaw1) (
a74bf01) - feat(audiobookshelf): add catalog and progress endpoints by coryshaw1 (@coryshaw1) (
2c39437) - feat(audiobookshelf): add HTTP client with token and password auth by coryshaw1 (@coryshaw1) (
37b73c7) - feat(audiobookshelf): add API types and provider meta keys by coryshaw1 (@coryshaw1) (
174a356) - feat(config): add audiobookshelf section by coryshaw1 (@coryshaw1) (
cae7de5) - feat(site): show radio listener peak by Bjarne Øverli (@bjarneo) (
6164a26) - chore: remove AI review notice by Bjarne Øverli (@bjarneo) (
2b6b27f)
Checksums (SHA256)
cc1b457ab75082aedfdf574c40607fc9ca2f9961cb2946ac58ff2e5365517773 cliamp-darwin-amd64
eec77557bd0a3dfe12f9f861f9da756f3584679a3fc7420eaad4f66608bd105e cliamp-darwin-arm64
ce308d9d0268b0517fbf6b0c58f0d0f8dd318deaa53f44955312b1798b30bf8b cliamp-linux-amd64
79bfe77fc1964050da87d45058a71cbb0c54637d371f84bcb15672e150bb037a cliamp-linux-arm64
7bab6a279fff8407f976f3adad0dc488c2368d6a71ee0481ac447a41c427cce9 cliamp-windows-amd64.exe
a0a6319ac1fc5a59db2470522a65444805cec2cb5ad365b07d3c6e7493f92cb7 cliamp-windows-amd64.zip
Full Changelog: v1.63.2...v2.0.0-rc.2