Michachatz
64dcdae017
feat(ui): add Greek translation ( #3892 )
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:24 +00:00
Deluan Quintão
7439a1166d
fix(ui): update French, Polish, Turkish translations from POEditor ( #3834 )
...
Co-authored-by: navidrome-bot <navidrome-bot@navidrome.org>
2026-01-02 20:48:24 +00:00
matteo00gm
03ed70338d
fix(ui): update Italian translations ( #3885 )
2026-01-02 20:48:24 +00:00
Deluan
396328cb87
fix(ui): sort playlist by album_artist, bpm and channels
...
fix #3878
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:24 +00:00
Deluan Quintão
f3817c6c71
fix(bfr): force upgrade to read all folders. ( #3871 )
...
* chore(scanner): add trace logs
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(bfr): force upgrade to read all folders. It was skipping folders for certain timezones
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:24 +00:00
Deluan
454bc26e47
fix(ui): sort playlist by year
...
fix #3878
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:24 +00:00
Deluan
739ccb9d5d
fix(scanner): elapsed time for folder processing is wrong in the logs
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:24 +00:00
Deluan
c34a6bae55
chore: remove more outdated TODOs
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
a1baec0fc1
chore: remove some BFR-related TODOs that are not valid anymore
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan Quintão
ce5e9ae218
feat(server): custom ArtistJoiner config ( #3873 )
...
* feat(server): custom ArtistJoiner config
Signed-off-by: Deluan <deluan@navidrome.org>
* refactor(ui): organize ArtistLinkField, add tests
Signed-off-by: Deluan <deluan@navidrome.org>
* feat(ui): use display artist
* feat(ui): use display artist
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
d9438b409c
feat(docker): automatically loads a navidrome.toml file from /data, if available
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
108f671519
fix(server): don't break if the ND_CONFIGFILE does not exist
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
55334e0b2b
feat(ui): show bitDepth in song info dialog
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
f373752b91
fix(scanner): support ID3v2 embedded images in WAV files
...
Fix #3867
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
f67a0834ac
fix(scanner): better log message when AutoImportPlaylists is disabled
...
Fix #3861
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan Quintão
afd9356154
fix(scanner): allow disabling splitting with the Tags config option ( #3869 )
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Nicolas Derive
b9e741deef
fix(ui): update Français, reorder translation according to en.json template ( #3839 )
...
Update french translation and reorder the file the same way as the en.json template, making comparison easier.
2026-01-02 20:48:23 +00:00
Xabi
f3dac57f92
fix(ui): update Basque translation ( #3864 )
...
* Update Basque localisation
added missing strings
* Update eu.json
2026-01-02 20:48:23 +00:00
Deluan
6b2575d02b
fix(subsonic): ArtistID3 should contain list of AlbumID3
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan Quintão
9a9605d341
fix(server): better embedded artwork extraction with ffmpeg ( #3860 )
...
- `-map 0:v` selects all video streams from the input
- `-map -0:V` excludes all "main" video streams (capital V)
This combination effectively selects only the attached pictures
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:23 +00:00
Deluan
2c64f5ef86
fix(scanner): ignore NaN ReplayGain values
...
Fix: https://github.com/navidrome/navidrome/issues/3858
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:22 +00:00
Deluan
e4943f786d
fix(scanner): pass datafolder and cachefolder to scanner subprocess
...
Fix #3831
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:22 +00:00
Deluan
a9331d5ddf
fix(dockerfile): remove the healthcheck, it gives more headaches than benefits.
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:22 +00:00
Deluan
e55c4ce2e5
chore(deps): upgrade viper to 1.20.0, add tests for the supported config formats
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:48:20 +00:00
Rob Emery
d4e8c17b9c
fix(msi): don't override custom ini config ( #3836 )
...
Previously addLine would add-or-update, resulting in the custom settings being overriden on upgrade. createLine will only add to the ini if the key doesn't already exist.
2026-01-02 20:47:44 +00:00
Deluan
d14e64b560
chore(server): show square flag in resize artwork logs
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Deluan Quintão
9b8b4fa446
chore(deps): upgrade to Go 1.24.1 ( #3851 )
...
* chore(deps): upgrade to Go 1.24.1
Signed-off-by: Deluan <deluan@navidrome.org>
* chore(deps): add reflex as go.mod tool
Signed-off-by: Deluan <deluan@navidrome.org>
* chore(deps): add wire as go.mod tool
Signed-off-by: Deluan <deluan@navidrome.org>
* chore(deps): add goimports as go.mod tool
Signed-off-by: Deluan <deluan@navidrome.org>
* chore(deps): add ginkgo as go.mod tool
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Deluan Quintão
be0dd1b7ab
fix(scanner): fix displayArtist logic ( #3835 )
...
* fix displayArtist logic
Signed-off-by: Deluan <deluan@navidrome.org>
* remove unneeded value
Signed-off-by: Deluan <deluan@navidrome.org>
* refactor
Signed-off-by: Deluan <deluan@navidrome.org>
* Use first albumartist if it cannot figure out the display name
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Kendall Garner
88ebb6ff19
fix(ui): minor icon inconsistencies and "no missing files" translation ( #3837 )
...
* chore(ui): Fix minor inconsistencies
1. The icons in the user menu are a mix of MUI and react-icons. Move them all to react-icons, and use a standard size (24px)
2. On missing files page, provide a custom Empty component that just removes 'yet'
* use RA's builtin support for custom empty message
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Deluan Quintão
994d82457b
feat(server): add Role filters to albums ( #3829 )
...
* navidrome artist filtering
* address discord feedback
* perPage min 36
* various artist artist_id -> albumartist_id
* artist_id, role_id separate
* remove all ui changes I guess
* Add tests, check for possible SQL injection
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com>
2026-01-02 20:47:44 +00:00
Kendall Garner
8d97ae8ca3
fix(subsonic): fix albumCount in artists ( #3827 )
...
* only do subsonic instead
* make sure to actually populate response first
* navidrome artist filtering
* address discord feedback
* perPage min 36
* various artist artist_id -> albumartist_id
* artist_id, role_id separate
* remove all ui changes I guess
* Revert role filters
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Deluan
85a4bec2a5
docs(scanner): clarifies the purpose of the mappings.yaml file for regular users
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Deluan
350a3900c5
chore(scanner): add logs to .ndignore processing
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:44 +00:00
Kendall Garner
8178792189
fix(scanner): restore setsubtitle as discsubtitle for non-WMA ( #3821 )
...
With old metadata, Disc Subtitle was one of `tsst`, `discsubtitle`, or `setsubtitle`.
With the updated, `setsubtitle` is only available for flac.
Update `mappings.yaml` to maintain prior behavior.
2026-01-02 20:47:43 +00:00
Deluan
2c5282d364
feat(scanner): allow disabling tags with Tags.<tag>.Ignore=true
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan
bb58769aa6
fix(scanner): add back the Scanner.GenreSeparators as a deprecated option
...
This allows easy upgrade of containers in PikaPods
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan Quintão
6543e4864a
fix(server): skip non-UTF encoding during the database migration. ( #3803 )
...
Fix #3787
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan
7f1adfb9a3
fix(scanner): watcher not working with relative MusicFolder
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan
e0c769243a
fix(scanner): full_text not being updated on scan
...
Fixes #3813
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan
202d2b0919
fix(subsonic): getRandomSongs with genre filter
...
fix https://github.com/dweymouth/supersonic/issues/577
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Rodrigo Iglesias
111eda1730
fix(ui): update Español translation ( #3805 )
...
Corrected "aletorio" and added some more translations
2026-01-02 20:47:43 +00:00
Deluan Quintão
1bf27e6a95
fix(ui): skip missing files in bulk operations ( #3807 )
...
* fix(ui): skip missing files when adding to playqueue
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(ui): skip missing files when adding to playlists
* fix(ui): skip missing files when shuffling songs
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan Quintão
3039d29ff1
fix(server): db migration does not work for MusicFolders ending with a trailing slash. ( #3797 )
...
* fix(server): db migration was not working for MusicFolders ending with a trailing slash.
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(server): db migration for relative paths
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Kendall Garner
24cef004ba
fix(ui): fix make dev ( #3795 )
...
1. For some bizarre reason, importing inflection by itself is undefined. But you can import specific functions
2. Per https://github.com/vite-pwa/vite-plugin-pwa/issues/419 , `type: 'module',` is only for non-chromium browsers
2026-01-02 20:47:43 +00:00
Deluan
f68ce0c960
fix(server): panic when logging tag type. Fix #3790
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan Quintão
c460f5422d
fix(server): db migration not working when MusicFolder is a relative path ( #3766 )
...
* fix(server): db migration not working when MusicFolder is a relative path
Signed-off-by: Deluan <deluan@navidrome.org>
* remove todo
Signed-off-by: Deluan <deluan@navidrome.org>
* fix migration of paths in Windows
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:43 +00:00
Deluan Quintão
82bb934ee9
fix(ui): update Finnish, Hungarian, Russian, Ukrainian translations from POEditor ( #3780 )
...
Co-authored-by: navidrome-bot <navidrome-bot@navidrome.org>
2026-01-02 20:47:42 +00:00
Deluan
25e4004df0
fix(subsonic): don't return empty disctitles for a single disc album
...
See https://support.symfonium.app/t/hide-disc-header-for-albums-with-only-1-disc/6877/1
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:42 +00:00
Deluan
234d661b01
feat(subsonic): rename AppendSubtitle conf to Subsonic.AppendSubtitle, for consistency
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:42 +00:00
Deluan
bfea453516
chore(deps): bump more JS dependencies
...
Signed-off-by: Deluan <deluan@navidrome.org>
2026-01-02 20:47:42 +00:00