Releases: navidrome/navidrome
v0.58.0
Navidrome v0.58.0 Release Notes
Navidrome v0.58.0 introduces Multi-library Support, a major architectural enhancement that enables users to organize and manage multiple music collections with proper permission controls and complete UI integration. This long-requested feature allows you to create separate libraries for different music collections (e.g., personal music, family music, audiobooks) while maintaining proper access controls and data isolation.
For full documentation on how to use it, see the new Multi-library page in the documentation website.
β οΈ Important
Full Scan
Although this release does not force a full scan on upgrade, you should do it as soon as possible. This is because the multi-library changes affect the move/rename/retag detection and can potentially make you lose annotations (stars, playcounts, playlist references). During the full scan, it will duplicate all your albums, but that's expected. It will remove the duplicates at the end of the scan.
Database Migration Warning
This release includes database schema changes that are NOT reversible by simply downgrading to a previous version of Navidrome.
Before installing this version:
- BACKUP YOUR DATABASE - Create a complete backup of your
navidrome.db
file - TEST ON A COPY FIRST - If possible, test this version on a copy of your data before upgrading your main installation
If you need to rollback:
- Stop Navidrome
- Restore your database backup
- Reinstall the previous version
Added
Multi-Library Support
Create and manage multiple music libraries with separate music folders. (#4181 by @deluan)
- Library-aware permission system: Users can be assigned access to specific libraries with proper data isolation.
- Admin interface for library management: Complete CRUD operations for libraries including creation, editing, and deletion.
- Library selector in UI: Users can switch between accessible libraries using the sidebar library selector.
- Per-library statistics: Artist and tag statistics are now calculated per library with proper counting.
- Cross-library playlist support: Playlists can contain songs from multiple libraries, filtered by user access.
UI Features
- Hindi language translation: Complete Hindi language support for the user interface. (#4390 by @nerkoux)
- Activity panel improvements: Reset activity panel error icon to normal state when clicked. (#4379 by @deluan)
- Translation updates: Updated Polish translations. (#4384 by @deluan)
- Translation updates: Updated Danish, German, Greek, Spanish, Finnish, French, Indonesian, Russian, Slovenian, Swedish, Turkish, Ukrainian translations. (#4326 by @deluan)
- Translation updates: Updated Hungarian translations. (#4375 by @ChekeredList71 and #4291 by @ChekeredList71)
- Translation updates: Updated Basque translation. (#4309 by @xabirequejo)
Plugin Features
- Plugin scheduler enhancement: Add TimeNow function to SchedulerService for better plugin capabilities. (#4337 by @deluan)
- Plugin insights: Add plugin and multi-library information to insights endpoint. (#4391 by @deluan)
API Features
- Multi-library API support: All Subsonic endpoints now respect library permissions with proper filtering. (#4181 by @deluan)
- Enhanced search capabilities: Search endpoints are library-aware and filter results by user access. (#4181 by @deluan)
- Music folder endpoints: Return user-accessible libraries through music folder API. (#4181 by @deluan)
Changed
- Agents logic streamlining: Remove unnecessary caching and streamline metadata agents logic. (#4298 by @deluan)
- Dependency updates: Update Go dependencies to latest versions. (#6722af50e by @deluan)
Fixed
UI
- Playlist menu interaction: Prevent disabled "Show in Playlist" menu item from triggering actions. (#4356 by @deluan)
- Year display: Don't show year "0" in the interface. (#3c1e5603d by @deluan)
- ReplayGain support: Fix replaygain for Artist Radio and Top Songs. (#4328 by @deluan)
Scanner
- Apple Music playlists import: Fix playlist import for songs with accented characters. (#4385 by @deluan)
- Foreign key constraint errors: Prevent errors in album participant insertion. (#4373 by @deluan)
- Tag UpdateCounts errors: Prevent foreign key constraint errors in tag UpdateCounts. (#4370 by @deluan)
- Custom tag configuration: Fix misleading custom tag split config log message. (#be83d6895 by @deluan)
- Lyrics tag parsing: Properly handle both ID3 and aliased tags for lyrics. (#4310 by @kgarner7)
- Cover art reading: Read cover art from DSF, WavPack files and fix WMA test. (#4296 by @kgarner7)
Server
- URL path handling: Improve URL path handling in local storage for special characters. (#4378 by @deluan)
- Dockerfile typo: Fix typo in Dockerfile. (#4363 by @emmmm)
Subsonic API
Plugins
- Plugin warnings: Silence plugin warnings and folder creation when plugins disabled. (#4297 by @deluan)
- Metrics reporting: Report metrics for all plugin types, not only MetadataAgents. (#4303 by @deluan)
- Metrics improvements: Add metrics on callbacks and improve plugin method calling. (#4304 by @deluan)
- Reverse proxy authentication: Don't log "no proxy IP found" when using Subsonic API in plugins with reverse proxy auth. (#4388 by @kgarner7)
- Plugin initialization: Correct error handling in plugin initialization. (#4311 by @deluan)
- Race condition prevention: Prevent race condition in plugin tests and manager registration. (#9fcc99633 and #adef0ea1e by @deluan)
- Error handling enhancement: Enhance error handling in checkErr function. (#1166a0fab by @deluan)
- Discord Rich Presence documentation: Fix README.md for Discord Rich Presence plugin. (#4387 by @Cristiandis)
Testing
- MPV tests: Fix MPV tests on systems without /bin/bash installed. (#4302 by @tebriel)
- Test cleanup: Suppress console.log output in eventStream test and general test cleanup. (#e8a3495c7 and #9f0059e13 by @deluan)
Code Quality
- Typo fixes: Fix typos in comments and logs. (#4333 by @bytesingsong)
- Function documentation: Fix function name/description in comment. (#4325 by [@bytetigers](https://github.com/byteti...
v0.57.0
A big thank you to all the contributors who made this release possible!
Added
- UI Features:
- Added "Artist Radio" and "Shuffle" options to the artist page. (#4186 by @deluan)
- Added a "Play Artist's Top Songs" button. (#4204 by @deluan)
- Added "Love" and "Rating" functionality to songs within a playlist view. (#4134 by @deluan)
- New "Add to Playlist" dialog, with improved UX. (#4156 by @deluan)
- Added a "Now Playing" panel for administrators to monitor active streams, with configurable
EnableNowPlaying
option (default true). (#4209, #4219 by @deluan) - Added a context menu option to "Show in Playlist". (#4139 by @deluan)
- Added RecentlyAddedByModTime support for tracks. (#4046, #4279 by @deluan)
- Added a configuration tab in the About dialog. (#4142 by @deluan)
- Experimental Plugin Support: Added experimental support for plugins, allowing for greater extensibility and customization. See details in the PR description (#3998, #4260 by @deluan)
- Scanner Accuracy: Implemented folder hashing for smarter and more accurate quick scans, significantly improving detection of library changes. (#4220 by @deluan)
- MBID Search: Added functionality to search for albums, artists, and songs by their MusicBrainz ID (MBID). (#4286 by @deluan)
- Smart Playlists:
- Deezer Agent: Added a new agent to fetch artist images from the Deezer API. (#4180 by @bplaat)
- API Features:
- Monitoring: Added new Prometheus metrics to the Subsonic API and Plugins. (#4266 by @kgarner7)
Changed
- Docker: Downgraded the Alpine base image in the Dockerfile to oldest supported version 3.19 for smaller images. (
7928adb3d
by @deluan) - Dependencies: Updated TagLib to version 2.1.1. (#4281 by @deluan)
Fixed
- UI:
- Scanner:
- Server:
- Subsonic API:
- Fixed an issue where clearing a playlist's
comment
andpublic
status was not working. (#4258 by @deluan) - Fixed
JukeboxRole
logic ingetUser
to respectAdminOnly
setting. (#4170 by @deluan) - Fixed loading lyrics from external files when the embedded lyrics was empty. (#4232 by @wilywyrm)
- Fixed lyrics detection when the there are multiple instances of the same song. (#4237 by @kgarner7)
- Fixed an issue where clearing a playlist's
- Database:
- Jukebox: Fixed issues with
mpv
command and template parsing, and ensured theMusicFolder
is included. (#4162 by @deluan, #4067 by @patso23)
Note: For those waiting for the Multi-Library feature, it is still in progress and will be released in the next version. You can follow its development in the Multi-Library PR. It is a complex feature that requires significant changes to the codebase, so it's taking a bit longer than expected. Thank you for your patience and continuous support!
New Contributors
- @Keviannn made their first contribution in #4146
- @strider- made their first contribution in #4154
- @patso23 made their first contribution in #4067
- @wilywyrm made their first contribution in #4232
- @emmanuel-ferdman made their first contribution in #4234
- @bplaat made their first contribution in #4180
Full Changelog: v0.56.1...v0.57.0
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.56.1
Changelog
Quick fix for Artists not showing up in Subsonic clients, See #4140
Bug fixes
Full Changelog: v0.56.0...v0.56.1
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
- Read installation instructions on our website.
- Host Navidrome on PikaPods for a simple cloud solution.
- Reach out on Discord, Reddit and Twitter!
Changelog
Bug fixes
Full Changelog: v0.56.0...v0.56.1
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.56.0
We're excited to announce Navidrome v0.56.0, a major release packed with new features, important bug fixes, and significant improvements to the user experience. This release includes 81 commits with contributions from our amazing community!
π SECURITY UPDATES
- SQL Injection Prevention: Fixed potential SQL injection vulnerability in artist role filtering. CVE will be published soon - @4rdr / @caiocotts (Advisory)
- Transcoding Security: Transcoding configuration changes are now restricted to admin users only - @lujiefsi (#4096) (Advisory)
π Major New Features
Missing Files Management
- Remove All Missing Files: New bulk action to clean up missing files from your library - @deluan (#4108)
- Scanner.PurgeMissing Configuration: New config option to automatically purge missing files during scans - @deluan (#4107)
- Missing Artists: Hide missing artists from the UI and Subsonic API, and add admin-only "missing" filters - @deluan (#4092)
Playlist Enhancements
- M3U File Downloads & Unified Export Logic: Downloaded playlists now include M3U files for better compatibility with external players - @deluan
- Playlist Cover Art: Playlists now display their cover art in the UI - @deluan
- Save Queue to Playlist: Easily save your current playback queue as a new playlist - @deluan (#4110)
Enhanced User Interface
- Smooth Image Transitions: Smooth transitions for album and artist artwork - @deluan (#4120)
- Scan Progress & Status Improvements: Real-time scan progress, error reporting, and elapsed time - @deluan (#4094, #4115)
- Sample Rate Display: View sample rate information in the song info dialog - @gqgs (#3960)
- Genre and Mood Fields: Added genre and mood fields to the AlbumSongs component - @deluan
- Internationalization Improvements: Updated translations for multiple languages
Scanner and Metadata Improvements
- Filesystem Lyrics Support (only for Subsonic clients): Support for reading lyrics (.lrc) directly from filesystem files - @kgarner7 (#2897, #3997)
- Symlink Support: New
Scanner.FollowSymlinks
option (defaulttrue
)to allow disabling symbolic links following - @deluan (#4061) - ISRC Support: Added ISRC (International Standard Recording Code) support for OpenSubsonic - @deluan (#4088)
- Artist/AlbumArtist Filtering: New filter options for media files - @kgarner7 (#4001)
- Scanner Optimizations: Improved refresh performance and missing flag update logic - @deluan (#4059)
Other Notable Features
- Default Share Expiration: New
DefaultShareExpiration
configuration option - @caiocotts (#4082) - Scrobble First Artist Only: New option
Lastfm.ScrobbleFirstArtistOnly
to send only the first artist when scrobbling - @deluan (#4131)
π Critical Bug Fixes
Performance and Memory
- Memory Leak Fix: Resolved memory leak in cache warmer that could affect long-running instances - @deluan (#4095)
Database and Data Integrity
- User Deletion Fix: Fixed issue preventing deletion of users who have shares - @kgarner7 (#4098)
- Smart Playlist Fixes: Fixed numeric comparisons for float custom tags and albumtype handling - @deluan (#4116)
Media Handling
- Multi-disc Artwork: Always select cover art from the first disc in multi-disc albums - @deluan (#3950)
- AIFF/WMA Cover Art: Fixed cover art detection for AIFF and WMA files - @kgarner7 (#3996)
- Track Ordering: Albums now always order tracks by disc and track number correctly - @deluan (#3975)
User Interface Fixes
- Share Image Aspect: Fixed share image aspect ratios by forcing square dimensions - @kgarner7 (#4122)
- UI Display Improvements: Enhanced external link display, artist link rendering, and button styles - @deluan
- Page Titles: Updated titles for radios, shares and show pages - @deluan (#4128)
π§ Technical Improvements
Development and Build
- Go 1.24.2: Updated to Go version 1.24.2 - @deluan
- Dependency Updates: Updated both Go and JavaScript dependencies, including golangci-lint - @deluan (#3937)
- Automated Dependency Updates: eslint-config-prettier and golangci-lint-action updates - @dependabot (#4077, #4035)
- golangci-lint Integration: Added automatic installation and improved Makefile setup - @deluan
- Demo URLs Update: Updated Makefile with new demo URLs - @caiocotts (#4080)
Code Quality
- External Metadata Refactoring: Refactored external*metadata to external.Provider - *@deluan_ (#3903)
- Documentation: Added code guidelines, copilot instructions, and scanner overview - @deluan
- Cleanup: Removed unused files and improved code organization - @deluan
π Documentation and Developer Experience
- Documentation Updates: Added code guidelines, copilot instructions, and scanner overview - @deluan
- Test Infrastructure: Enhanced test reliability and added new test coverage - @deluan
Full Changelog: v0.55.2...v0.56.0
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.55.2
Bugfix release
A few more bug fixes and improvements.
Changelog
New Features
- 1c691ac: feat(docker): automatically loads a navidrome.toml file from /data, if available (@deluan)
- 57e0f6d: feat(server): custom ArtistJoiner config (#3873) (@deluan)
- 112ea28: feat(ui): add Greek translation (#3892) (@Michatec)
- 3394580: feat(ui): add Norwegian translation (@deluan)
- 73eb0e2: feat(ui): add mood column to Album and Song list views (#3925) (@deluan)
- 46a2ec0: feat(ui): hide absolute paths from regular users (@deluan)
- 296259d: feat(ui): show bitDepth in song info dialog (@deluan)
Bug fixes
- 55ce28b: fix(bfr): force upgrade to read all folders. (#3871) (@deluan)
- ee2c2b1: fix(dockerfile): remove the healthcheck, it gives more headaches than benefits. (@deluan)
- 1ed8930: fix(msi): don't override custom ini config (#3836) (@mintsoft)
- be7cb59: fix(scanner): allow disabling splitting with the
Tags
config option (#3869) (@deluan) - b386981: fix(scanner): better log message when AutoImportPlaylists is disabled (@deluan)
- 3a0ce6a: fix(scanner): elapsed time for folder processing is wrong in the logs (@deluan)
- 2adb098: fix(scanner): fix displayArtist logic (#3835) (@deluan)
- 491210a: fix(scanner): ignore NaN ReplayGain values (@deluan)
- cd552a5: fix(scanner): pass datafolder and cachefolder to scanner subprocess (@deluan)
- 3f9d173: fix(scanner): support ID3v2 embedded images in WAV files (@deluan)
- 59ece40: fix(server): better embedded artwork extraction with ffmpeg (#3860) (@deluan)
- 264d73d: fix(server): don't break if the ND_CONFIGFILE does not exist (@deluan)
- f9081bb: fix(server): first user created should be admin, when using reverse proxy (#3920) (@deluan)
- d78c6f6: fix(subsonic): ArtistID3 should contain list of AlbumID3 (@deluan)
- 2128872: fix(ui): minor icon inconsistencies and "no missing files" translation (#3837) (@kgarner7)
- 651ce16: fix(ui): sort playlist by
album_artist
,bpm
andchannels
(@deluan) - d331ee9: fix(ui): sort playlist by
year
(@deluan) - 1e1dce9: fix(ui): update Basque translation (#3864) (@xabirequejo)
- 63dc0e2: fix(ui): update FranΓ§ais, reorder translation according to en.json template (#3839) (@kalon33)
- c837838: fix(ui): update French, Polish, Turkish translations from POEditor (#3834) (@deluan)
- a057a68: fix(ui): update Greek, Esperanto, Polish, Russian, Turkish translations from POEditor (#3894) (@deluan)
- 9e94655: fix(ui): update Italian translations (#3885) (@matteo00gm)
- 2b84c57: fix: restore old date display/sort behaviour (#3862) (@deluan)
Other work
- b046473: chore(deps): upgrade to Go 1.24.1 (#3851) (@deluan)
- 0147bb5: chore(deps): upgrade viper to 1.20.0, add tests for the supported config formats (@deluan)
- 5ab345c: chore(server): add more info to scrobble errors logs (#3889) (@deluan)
- e457f21: chore(server): show square flag in resize artwork logs (@deluan)
- cf100c4: chore(subsonic): update snapshot tests to use version 1.16.1 (@deluan)
- 1806552: chore: remove more outdated TODOs (@deluan)
- 223e88d: chore: remove some BFR-related TODOs that are not valid anymore (@deluan)
- 88f87e6: chore: replace album placeholder (@deluan)
Full Changelog: v0.55.1...v0.55.2
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.55.1
Bugfix release
A bunch of bug fixes, and a couple of improvements.
Thanks you all for the feedback!
Changelog
New Features
- 2838ac3: feat(scanner): allow disabling tags with
Tags.<tag>.Ignore=true
(@deluan) - beb768c: feat(server): add Role filters to albums (#3829) (@deluan)
Bug fixes
- b952672: fix(scanner): add back the Scanner.GenreSeparators as a deprecated option (@deluan)
- 226be78: fix(scanner): full_text not being updated on scan (@deluan)
- 938c3d4: fix(scanner): restore setsubtitle as discsubtitle for non-WMA (#3821) (@kgarner7)
- 5fb1db6: fix(scanner): watcher not working with relative MusicFolder (@deluan)
- 2a15a21: fix(server): db migration does not work for MusicFolders ending with a trailing slash. (#3797) (@deluan)
- 5c67297: fix(server): panic when logging tag type. Fix #3790 (@deluan)
- 5c0b6fb: fix(server): skip non-UTF encoding during the database migration. (#3803) (@deluan)
- ed1109d: fix(subsonic): fix albumCount in artists (#3827) (@kgarner7)
- 7c13878: fix(subsonic): getRandomSongs with
genre
filter (@deluan) - a28462a: fix(ui): fix
make dev
(#3795) (@kgarner7) - 70f536e: fix(ui): skip missing files in bulk operations (#3807) (@deluan)
- 0bb4b88: fix(ui): update EspaΓ±ol translation (#3805) (@RigleGit)
Documentation updates
Other work
Full Changelog: v0.55.0...v0.55.1
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.55.0
Navidrome 0.55.0 - Big Refactor (BFR) Release Notes
Overview
Navidrome 0.55.0 introduces the highly anticipated Big Refactor (BFR), significantly enhancing core functionalities,
and introducing robust new features. This release brings substantial improvements in handling file management and
metadata usage and customization.
New Features
-
Multiple Artists in Albums and Songs: Navidrome now supports albums and tracks with multiple artists, allowing
users to group tracks with different artists under a single album. This feature enhances the organization of
compilation albums and multi-artist collaborations. -
Contributors and Performers: Composer, conductor, and other contributors can now be added to tracks, providing
detailed information about the creators and performers involved in the music production process. -
Album Versions: Support for
ALBUMVERSION
tag has been added, enabling users to differentiate between standard
releases, deluxe editions, remasters, and other versions of the same album. This feature enhances album categorization
and provides a more comprehensive music library experience. -
Multi-valued Tags: Support for multi-valued tags has been improved, allowing users to store multiple values for
any single tag. This feature enhances metadata flexibility and enables more detailed categorization. -
Custom Tags: Support for user-defined custom tags has been added, allowing enhanced metadata flexibility and
personalized categorization. Learn more. -
Smart Playlists Enhancements: Smart Playlists supports all newly added tags, including multiple artists,
contributors, performers, and album versions, as well as custom tags. It also behaves better with multi-valued tags.
Learn more. -
Persistent IDs: Tracks and albums now use persistent IDs (PIDs), ensuring stability in playlists, favorites,
and external integrations, even if your files move or are renamed. PIDs can also be configured to change the way
Navidrome disambiguates albums and tracks. It is now also possible to group albums by folder,
bay settingPID.Album="folder"
. Learn more. -
Scanner Improvements: Optimized file scanning, with improved handling of file moves and retagging, "watcher" mode
for real-time updates, resumable scans and enhanced performance during library updates. -
Improved Handling of Missing Files: Enhanced mechanisms for managing missing files ensure better accuracy and
easier troubleshooting. Learn more. -
Beginner-Friendly Tagging Guidelines: A comprehensive tagging guide has been introduced to assist new users in
properly tagging their music collections. Learn more.
New configuration options
PID.Album
PID.Track
Scanner.Enabled
Scanner.Schedule
Scanner.WatcherWait
Scanner.ScanOnStartup
Subsonic.AppendSubtitle
Subsonic.ArtistParticipations
Subsonic.DefaultReportRealPath
Subsonic.LegacyClients
Tags
Check the Config Options documentation to learn more.
Deprecated/Changed configuration options:
ScanSchedule
was renamed toScanner.Schedule
Scanner.Extractor
was removed.ffmpeg
extractor is not supported anymore and Navidrome will now always use TagLib for metadata extraction.Scanner.GenreSeparators
was removed. UseTags.genre.Split
instead. Check the [Custom Tags][custom-tags] documentation for more information.Scanner.GroupAlbumReleases
was removed. UsePID.Album
instead.
Check the Configuration Options documentation for
more information.
Breaking Changes
- Artist favourites and artist ratings will be lost after the upgrade.
- Albums may move around (change grouping), as the default disambiguation logic is slightly different than the previous version. If you want to keep the same behaviour as before, add this line to your configuration before upgrading:
PID.Album = "album_legacy"
or as env var
ND_PID_ALBUM=album_legacy
Upgrade Instructions
- Backup Database: Before upgrading, create a backup of your current Navidrome database.
- Stop Navidrome: Ensure Navidrome is not running before proceeding.
- Replace Binary: Download and replace the existing Navidrome binary with the latest version (0.55.0).
If using docker, pull thelatest
image. - Start Navidrome: Restart Navidrome to automatically migrate the database schema. The upgrade process
will trigger a full scan of your library, which may take some time depending on the size of your collection. While
this full scan is in progress, please avoid using Navidrome, as the data will be unstable until the process finishes.
Please don't report any bugs until this full scan is complete (check the logs)
For detailed discussions and comprehensive insights into this update, refer to
our Big Refactor announcement and the original BFR Pull Request
We appreciate your ongoing support and feedback. Make sure you read the linked new documentation pages and enjoy the
enhanced Navidrome experience!
Changelog
New Features
- c795bcf: feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) (@deluan)
- 453873f: feat(insights): send scanner options (@deluan)
- c37583f: feat(server): create M3Us from shares (#3652) (@deluan)
- 21a5528: feat(server): deprecate
Scanner.GroupAlbumReleases
config option (@deluan) - 8ab2a11: feat(server): group Subsonic config options together (@deluan)
- dc4e091: feat(server): make appending subtitle to song title configurable (@deluan)
- 74348a3: feat(server): new option to set the default for ReportRealPath on new players (@deluan)
- 637c909: feat(server): removed
GenreSeparator
, replaced withTag.Genre.Split
(@deluan) - de37e0f: feat(server): rename ScanSchedule conf to Scanner.Schedule, for consistency (@deluan)
- f3cb85c: feat(server): warn users of ffmpeg extractor that it is not available anymore (@deluan)
- 57d3be8: feat(subsonic): rename AppendSubtitle conf to Subsonic.AppendSubtitle, for consistency (@deluan)
- 5869f7c: feat(subsonic): set sortName for OS AlbumList (#3776) (@kgarner7)
- aee19e7: feat(ui): Improve Artist Album pagination (#3748) (@kgarner7)
- f6eee65: feat(ui): Show performer subrole(s) where possible (#3747) (@kgarner7)
- f34f15b: feat(ui): make need for refresh more visible when upgrading server (@deluan)
- 31e003e: feat(ui): use webp for login backgrounds (@deluan)
Security updates
Bug fixes
- 36ed880: fix(scanner): always refresh folder image time when adding first image (#3764) (@kgarner7)
- d4147c2: fix(scanner): improve refresh artists stats query (@deluan)
- 9d86f63: fix(server): add logs to public image endpoint (@deluan)
- 8732fc7: fix(server): change log level for some unimportant messages (@deluan)
- 365df52: fix(server): db migration not working when MusicFolder is a relative path (#3766) (@deluan)
- 15a3d2c: fix(server): disallow search engine crawlers in robots.txt (@deluan)
- 47e3fdb: fix(server): do not try to validate credentials if the request is canceled (#3650) (@deluan)
- 0c4c223: fix(server): import absolute paths in m3u (#3756) (@deluan)
- 0372339: fix(server): only build core.Agents once (@deluan)
- 1468a56: fix(server): reduce SQLite "database busy" errors (#3760) (@deluan)
- a041676: fix(server): remove misleading "Agent not available" warning. (@deluan)
- 5ad9f54: fix(server): role filters in Smart Playlists. (@deluan)
- 20297c2: fix(server): send artist mbids when scrobbling to ListenBrainz (@deluan)
- d6ec52b: fix(subsonic): check errors before setting headers for getCoverArt (@deluan)
- ee18489: fix(subsonic): don't return empty disctitles for a single disc album (@deluan)
- 98a6819: fix(ui): disable bulk action buttons if transcoding edit is disabled (@deluan)
- 70487a0: fix(ui): paginate albums in artist page when needed (@deluan)
- dd4802c: fix(ui): remove unused term (@deluan)
- 1c192d8...
v0.54.5
This is an important security fix. Please update ASAP.
Security Advisory: GHSA-c3p4-vm8f-386p
Changelog
Security updates
Full Changelog: v0.54.4...v0.54.5
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.54.4
Changelog
New Features
Bug fixes
- 3179966: fix(metrics): write system metrics on start (#3641) (@kgarner7)
- acce3c9: fix(release): make binaries executable before packaging (@deluan)
- beff1af: fix(subsonic): make Share's lastVisited optional (@deluan)
- f1478d4: fix(ui): fix for typo in hu.json (#3635) (@ChekeredList71)
- 920fd53: fix(ui): remove index.html from service worker cache after creating admin user (#3642) (@kgarner7)
- 73ccfbd: fix(ui): update TΓΌrkΓ§e translations from POEditor (#3636) (@deluan)
Other work
- 537e2fc: chore(deps): bump go dependencies (@deluan)
- ba2623e: chore(server): add more logs to backup (@deluan)
Full Changelog: v0.54.3...v0.54.4
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.
Where to go next?
v0.54.3
Changelog
Bug fixes
- 1eedee9: fix(insights): add more linux fs types (@deluan)
- 51eed74: fix(release): change owner of cache to Navidrome user (#3599) (@kgarner7)
- 0299e48: fix(server): backup and restore issues from the cli (#3579) (@deluan)
- 630c304: fix(server): typo in backup prune message (#3582) (@whorfin)
- f030252: fix(server): use cancellable context instead of Sleep for initial insights delay (#3593) (@kgarner7)
- 734eb30: fix(ui): update Suomi, Polski, TΓΌrkΓ§e translations from POEditor (#3592) (@deluan)
Build process updates
Other work
- 3942275: chore(deps): bump github.com/andybalholm/cascadia from 1.3.2 to 1.3.3 (@deluan)
- 98b038c: chore(deps): upgrade golang.org/x/net (CVE-2024-45338) (@deluan)
Full Changelog: v0.54.2...v0.54.3
Helping out
This release is only possible thanks to the support of some awesome people!
Want to be one of them?
You can sponsor, pay me a Ko-fi, or contribute with code.