Deluan
fb32cfd7db
fix(ui): fix Reading mediafile(id:undefined): data not found
error
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-26 12:32:37 -04:00
Deluan Quintão
d26e2e29a6
feat(ui): add smooth image transitions to album and artist artwork ( #4120 )
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-26 08:57:37 -04:00
Deluan
5c4fbdb7c1
feat(ui): add playlist cover art display
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-25 23:22:55 -04:00
Deluan
0cb02bce06
test: improve test reliability with longer sleep durations and generous tolerances
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-25 22:03:55 -04:00
Deluan
fe1ed582bc
build(makefile): add golangci-lint installation step to setup
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-25 20:24:51 -04:00
Deluan Quintão
5e2db2c673
fix(server): fix numeric comparisons for float custom tags in smart playlists ( #4116 )
...
* Fix numeric comparisons for custom float tags
* feat(criteria): cast numeric tags for sorting and comparisons
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-25 17:52:27 -04:00
dependabot[bot]
fac9275c27
chore(deps): bump eslint-config-prettier from 9.1.0 to 10.1.5 in /ui ( #4077 )
...
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier ) from 9.1.0 to 10.1.5.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases )
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v9.1.0...v10.1.5 )
---
updated-dependencies:
- dependency-name: eslint-config-prettier
dependency-version: 10.1.5
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-24 23:10:46 -04:00
dependabot[bot]
6b3afc03cc
build(deps): bump golangci/golangci-lint-action in /.github/workflows ( #4035 )
...
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action ) from 7 to 8.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases )
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v7...v8 )
---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
dependency-version: '8'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-24 23:05:47 -04:00
Deluan
35599230ff
test: update test command to run without watch mode
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 22:58:04 -04:00
Deluan
13ea00e7f8
chore(deps): update JS dependencies
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 22:55:53 -04:00
Deluan
f7fb77054f
build(makefile): fix golangci-lint installation path check
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 22:40:33 -04:00
Deluan
441c9f52cc
chore(deps): update Go dependencies
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 22:36:05 -04:00
Deluan Quintão
b722f0dcfc
fix(ui): improve scan status handling (again) ( #4115 )
2025-05-24 21:26:05 -04:00
Deluan
c98e4d02cb
feat(ui): add missing filter for admin users in album, artist, and song lists
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 13:06:36 -04:00
Xabi
5ade9344ff
fix(ui): update Basque translation ( #4064 )
...
* Update eu.json
Added roles, reordered some strings, small fixes
* fix(ui): update Basque translation
* Update eu.json
third time's the charm
* please bear with me
I'm not a developer. I'm trying my hardest.
* Update eu.json
Added newest strings
2025-05-24 12:53:51 -04:00
ChekeredList71
d903d3f1e0
fix(ui): update Hungarian translation ( #4112 )
...
added: bitDepth, sampleRate, album/date, saveQueue, missing/empty, actions/remove_all, remove_all_missing_title, remove_all_missing_content, scanType, status, elapsedTime
edited (better sentence structuring, making it make more sense, etc.): listenBrainzLinkSuccess, playListsText
Co-authored-by: ChekeredList71 <asd@asd.com>
2025-05-24 12:38:12 -04:00
Deluan
6bf6424864
fix(scanner): optimize missing flag update logic for artists
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 12:31:12 -04:00
Deluan
a9f93c97e1
fix(ui): improve elapsed time handling during scans
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-24 10:13:01 -04:00
Deluan
3350e6c115
fix(ui): elapsed time for scans
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 23:28:02 -04:00
Deluan Quintão
514aceb785
feat(ui) add Save Queue to Playlist ( #4110 )
...
* ui: add save queue to playlist
* fix(ui): improve toolbar layout
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(ui): add loading state to save queue dialog
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(ui): refresh playlist after saving queue
Signed-off-by: Deluan <deluan@navidrome.org>
* fix lint
Signed-off-by: Deluan <deluan@navidrome.org>
* remove duplication in PlayerToolbar and add tests
Signed-off-by: Deluan <deluan@navidrome.org>
* fix(i18n): update save queue text for clarity in English and Portuguese
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 22:04:18 -04:00
Deluan
370f8ba293
fix(ui): update artist link rendering and improve button styles
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 17:42:19 -04:00
Deluan
1e4c759d93
test: fix flaky scanner tests by setting maximum open connections to 1
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 15:39:44 -04:00
Ewen
e06fbd26b7
fix(ui): update French translation ( #4069 )
...
Signed-off-by: Malesio <krytonspace@gmail.com>
2025-05-23 10:56:47 -04:00
Deluan
9062f4824e
fix(ui): the Portuguese translation is actually Brazilian Portuguese
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 09:11:07 -04:00
Deluan
2503d2dbb8
fix: small formatting error in en.json
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 09:04:41 -04:00
Deluan
45188e710c
fix(ui): update Portuguese translations
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 08:14:53 -04:00
Deluan
9dd050c377
fix: add useResourceRefresh hook to AlbumShow, ArtistShow, MissingFilesList, and PlaylistShow components
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-23 00:02:42 -04:00
Deluan Quintão
3ccc02f375
feat(ui): add remove all missing files functionality ( #4108 )
...
* Add remove all missing files feature
* test: update mediafile_repository tests for missing files deletion
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-22 22:28:10 -04:00
Copilot
992c78376c
feat(scanner): add Scanner.PurgeMissing configuration option ( #4107 )
...
* Initial plan for issue
* Add Scanner.PurgeMissing configuration option
Co-authored-by: deluan <331353+deluan@users.noreply.github.com>
* Remove GC call from phaseMissingTracks.purgeMissing method
Co-authored-by: deluan <331353+deluan@users.noreply.github.com>
* Address PR comments for Scanner.PurgeMissing feature
Co-authored-by: deluan <331353+deluan@users.noreply.github.com>
* Address PR comments and add DeleteAllMissing method
Co-authored-by: deluan <331353+deluan@users.noreply.github.com>
* refactor(scanner): simplify purgeMissing logic and improve error handling
Signed-off-by: Deluan <deluan@navidrome.org>
* fix configuration test
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: deluan <331353+deluan@users.noreply.github.com>
Co-authored-by: Deluan <deluan@navidrome.org>
2025-05-22 20:50:15 -04:00
Deluan Quintão
4a2412eef7
test: add PERFORMER tests ( #4105 )
...
* Add performer participant tests with MBIDs
* test: add handling for mismatched performer names and MBIDs in participant tests
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-22 16:41:08 -04:00
Deluan Quintão
98fdc42d09
test: fix ignored artwork tests ( #4103 )
...
* Fix artwork internal tests
* fix: rename artistReader functions to artistArtworkReader for clarity
Signed-off-by: Deluan <deluan@navidrome.org>
* fix: update artwork internal tests to handle corrupted cover scenarios
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-22 15:48:24 -04:00
Deluan
eb944bd261
chore: update Makefile to install golangci-lint if not present and adjust lint command
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 23:13:32 -04:00
Deluan
84384006a4
docs: update copilot instructions with important commands and linting guidelines
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 22:33:33 -04:00
Deluan Quintão
e5438552c6
fix(transcoding): restrict transcoding operations to admin users ( #4096 )
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 22:19:23 -04:00
Kendall Garner
6ac3acaaf8
fix(db): allow deleting users that have shares ( #4098 )
...
* fix(db): allow deleting users that have shares
* remove placeholders
2025-05-21 22:16:10 -04:00
Deluan
3953e3217d
docs: add code guidelines for backend and frontend development
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 21:57:24 -04:00
Deluan Quintão
6731787053
fix(server): memory leak in cache warmer ( #4095 )
...
* Prevent cache warmer memory leak when cache disabled
* refactor(tests): replace disabledCache with mockFileCache in CacheWarmer tests
Signed-off-by: Deluan <deluan@navidrome.org>
* test(cache): enhance CacheWarmer tests for initialization, buffer management, and error handling
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 21:48:49 -04:00
Deluan
dd1d3907b4
Revert "refactor(server): simplify lastfm agent initialization logic"
...
This reverts commit 6f52c0201cdc6e92bf4e47394d79767db9c33640.
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 16:45:30 -04:00
Kendall Garner
924354eb4b
fix(subsonic): find lyrics by artist or albumartist ( #4093 )
...
* find artist by multivalued exact match, instead of 'artist' field
* check if lyrics are not empty
* refactor(filters): rename function to better reflect its purpose
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
Co-authored-by: Deluan <deluan@navidrome.org>
2025-05-21 09:36:26 -04:00
Deluan Quintão
6880cffd16
feat(ui): add scan progress and error reporting to UI ( #4094 )
...
* feat(scanner): add LastScanError tracking to scanner status
- Introduced LastScanErrorKey constant for error tracking.
- Updated StatusInfo struct to include LastError field.
- Modified scanner logic to store and retrieve last scan error.
- Enhanced ScanStatus response to include error information.
- Updated UI components to display last scan error when applicable.
- Added tests to verify last scan error functionality.
Signed-off-by: Deluan <deluan@navidrome.org>
* feat(scanner): enhance scan status with type and elapsed time tracking
- Added LastScanTypeKey and LastScanStartTimeKey constants for tracking scan type and start time.
- Updated StatusInfo struct to include ScanType and ElapsedTime fields.
- Implemented getScanInfo method to retrieve scan type, elapsed time, and last error.
- Modified scanner logic to store scan type and start time during scans.
- Enhanced ScanStatus response and UI components to display scan type and elapsed time.
- Added formatShortDuration utility for better elapsed time representation.
- Updated activity reducer to handle new scan status fields.
Signed-off-by: Deluan <deluan@navidrome.org>
* refactor(tests): consolidate controller status tests into a single file
- Removed the old controller_status_test.go file.
- Merged relevant tests into the new controller_test.go file for better organization and maintainability.
- Ensured all existing test cases for controller status are preserved and functional.
Signed-off-by: Deluan <deluan@navidrome.org>
* Fix formatting issues
* refactor(scanner): update getScanInfo method documentation
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-21 09:30:23 -04:00
Caio Cotts
fef1739c1a
feat(server): add DefaultShareExpiration config option ( #4082 )
...
* add DefaultShareExpiration config option
* run prettier so that I can push
* undo reformatting
* sort imports
2025-05-20 22:17:30 -04:00
Deluan Quintão
453630d430
feat: hide missing artists from regular users and Subsonic API ( #4092 )
...
* Handle missing artists for non-admin users
* feat(artist): enhance ArtistList with missing row styling and class management
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-20 21:53:02 -04:00
Deluan
4733616d90
chore: removed unused file
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-20 21:25:33 -04:00
Deluan Quintão
ba7fd13724
feat(subsonic): add ISRC support for OpenSubsonic Child ( #4088 )
...
* docs: add testing and logging guidelines to AGENTS.md
Signed-off-by: Deluan <deluan@navidrome.org>
* Introduce TagISRC and update ISRC handling
* fix: update .gitignore to exclude executable files and bin directory
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-20 12:37:27 -04:00
Caio Cotts
1e4e3eac6e
fix: update Makefile with new demo URLs ( #4080 )
2025-05-19 15:34:25 -04:00
Deluan Quintão
19d443ec7f
feat(scanner): add Scanner.FollowSymlinks option ( #4061 )
...
* Add Scanner.FollowSymlinks option (default: true) - Fixes #4060
* fix(mockMusicFS): improve symlink handling in Open, Stat, and ReadDir methods
Signed-off-by: Deluan <deluan@navidrome.org>
* refactor(tests): enhance walkDirTree tests with symlink handling and cleanup
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-15 10:33:28 -04:00
Deluan Quintão
db92cf9e47
fix(scanner): optimize refresh ( #4059 )
...
* fix(artist): update RefreshStats to only process artists with recently updated media files
Signed-off-by: Deluan <deluan@navidrome.org>
* fix: paginate Artist's RefreshStats, also replace rawSQL with Expr
Signed-off-by: Deluan <deluan@navidrome.org>
---------
Signed-off-by: Deluan <deluan@navidrome.org>
2025-05-14 20:47:03 -04:00
Kendall Garner
ec9f9aa243
feat:(server): support reading lyrics from filesystem ( #2897 )
...
* simplified lyrics handling
* address initial feedback
* add some trace and error logging
* allow fallback lyrics
* update nit
* restore artist/title filter only
2025-04-30 08:10:19 -04:00
Kendall Garner
0d1f2bcc8a
fix(scanner): check if aiff/wma file has cover art ( #3996 )
...
* check if aiff file has cover art
* add cover art to test files, more support in wrapper
* remove wavpak since tag does't read it anyway
2025-04-25 13:00:26 -04:00
Deluan
dfa217ab51
docs(scanner): add overview README document
...
Signed-off-by: Deluan <deluan@navidrome.org>
2025-04-25 12:54:29 -04:00