navidrome/server/nativeapi
Deluan a79e670740 fix(album): serialize cover upload/delete to close shared-file races
The shared-file handling is check-then-act (CountByImage, then remove/write):
two concurrent deletes on albums sharing one file could both see refs>1, both
skip removal, and both clear their rows — leaving the file orphaned with no
remaining reference for the purge GC to find. Serialize album image
operations behind a mutex; they are rare, admin-gated actions.
2026-07-18 02:07:07 -04:00
..
albums.go fix(album): serialize cover upload/delete to close shared-file races 2026-07-18 02:07:07 -04:00
albums_test.go fix(album): never write over a cover file shared by another album 2026-07-17 23:36:08 -04:00
artists.go refactor: multiple syntax updates for Go 1.26 2026-05-19 18:02:36 -03:00
config.go refactor(conf): replace eager dir creation with lazy Dir type (#5495) 2026-05-13 17:44:22 -03:00
config_test.go feat(sharing): enable sharing by default (#5714) 2026-07-04 19:55:34 -04:00
image_upload.go feat(jellyfin): experimental Jellyfin Music API support (#5730) 2026-07-14 11:46:37 -04:00
inspect.go chore(deps): bump golangci-lint to v2.10.0 and suppress new gosec false positives 2026-02-17 09:28:42 -05:00
library.go fix: album statistics not updating after deleting missing files (#4668) 2025-11-08 20:11:00 -05:00
library_test.go feat(sharing): enable sharing by default (#5714) 2026-07-04 19:55:34 -04:00
missing.go fix: album statistics not updating after deleting missing files (#4668) 2025-11-08 20:11:00 -05:00
native_api.go fix(album): serialize cover upload/delete to close shared-file races 2026-07-18 02:07:07 -04:00
native_api_song_test.go feat(sharing): enable sharing by default (#5714) 2026-07-04 19:55:34 -04:00
native_api_suite_test.go Rename log.LevelCritical to log.LevelFatal 2022-12-21 14:53:36 -05:00
playlists.go feat: add artist image uploads and image-folder artwork source (#5198) 2026-03-15 22:19:55 -04:00
playlists_test.go feat(sharing): enable sharing by default (#5714) 2026-07-04 19:55:34 -04:00
plugin.go feat(plugins): allow mounting library directories as read-write (#5122) 2026-02-28 10:59:13 -05:00
plugin_test.go feat(sharing): enable sharing by default (#5714) 2026-07-04 19:55:34 -04:00
queue.go chore(deps): bump golangci-lint to v2.10.0 and suppress new gosec false positives 2026-02-17 09:28:42 -05:00
queue_test.go refactor: multiple syntax updates for Go 1.26 2026-05-19 18:02:36 -03:00
radios.go feat(ui): add cover art support for internet radio stations (#5229) 2026-03-18 18:57:33 -04:00
translations.go refactor: run Go modernize (#5002) 2026-02-08 09:57:30 -05:00
translations_test.go ci: run Go tests on Windows (#5380) 2026-04-19 13:16:47 -04:00