Commit Graph

  • 7af65aa71d test(ffmpeg): simplify animated WebP encoder check by removing context parameter artwork-e2e-suite Deluan 2026-04-18 01:28:11 -04:00
  • 72b5cf98f6 test(artwork): refactor image upload logic in e2e tests for consistency Deluan 2026-04-17 17:39:48 -04:00
  • 213eb0d193 test(artwork): cover additional edge cases in e2e suite Deluan 2026-04-17 16:42:57 -04:00
  • 752756e220 test(ffmpeg): add support for animated WebP encoder detection and fallback handling Deluan 2026-04-17 16:29:18 -04:00
  • 1271cc406c test(artwork): enhance e2e tests with real MP3 fixtures for embedded artwork Deluan 2026-04-17 15:20:49 -04:00
  • 60124077cc test(artwork): add e2e tests for playlist and radio artwork resolution Deluan 2026-04-17 15:05:27 -04:00
  • 1cc7efb5cf test(artwork): add ASCII file-tree diagrams to e2e scenarios Deluan 2026-04-17 14:24:22 -04:00
  • cab96f03ee refactor(artwork): scope artist folder traversal to library root Deluan 2026-04-17 13:57:03 -04:00
  • 571ef2e085 test(artwork): add e2e scenarios from artwork documentation Deluan 2026-04-17 12:47:30 -04:00
  • cf14baca12 test(artwork): reuse tests.MockFFmpeg in e2e harness Deluan 2026-04-16 22:02:26 -04:00
  • 3bfc8294b6 test(artwork): use maps.Copy in trackFile tag merge Deluan 2026-04-16 21:57:43 -04:00
  • 9f7cc83f2f test(artwork): rewrite e2e suite to use storagetest.FakeFS Deluan 2026-04-16 21:56:47 -04:00
  • f86b4a13f3 refactor(artwork): remove temporary path-based shims Deluan 2026-04-16 21:50:15 -04:00
  • bc6e3de017 refactor(artwork): migrate artist album-art lookup to MusicFS Deluan 2026-04-16 21:47:54 -04:00
  • 50f2c9037d refactor(artwork): migrate mediafile reader to MusicFS Deluan 2026-04-16 21:24:58 -04:00
  • 3d48222ebe refactor(artwork): build discFoldersRel directly and guard empty first track Deluan 2026-04-16 21:23:06 -04:00
  • 8cb69513f5 refactor(artwork): migrate disc reader to MusicFS Deluan 2026-04-16 21:08:59 -04:00
  • 30570bc095 fix(artwork): use path package in compareImageFiles for forward-slash relative paths Deluan 2026-04-16 21:03:41 -04:00
  • af0c7b07c6 refactor(artwork): migrate album reader to MusicFS Deluan 2026-04-16 20:59:31 -04:00
  • 6fb2fbec15 docs(artwork): note ffmpeg's path-based API limitation Deluan 2026-04-16 20:42:36 -04:00
  • 2e6c0a2477 refactor(artwork): defer fs.File close until after taglib reads finish Deluan 2026-04-16 20:41:51 -04:00
  • 68cf5eef3a refactor(artwork): convert fromTag to taglib.OpenStream over fs.FS Deluan 2026-04-16 20:31:27 -04:00
  • fc6dc2fd61 refactor(artwork): make fromExternalFileAbs a thin delegator Deluan 2026-04-16 20:26:41 -04:00
  • 3dd492eb6c refactor(artwork): convert fromExternalFile to use fs.FS Deluan 2026-04-16 20:23:53 -04:00
  • 3e5ab0243f test(artwork): update libraryFS test description to match implementation Deluan 2026-04-16 20:20:27 -04:00
  • db87dc6dba test(artwork): tighten libraryFS test isolation and add scheme-error case Deluan 2026-04-16 20:19:54 -04:00
  • 56453ecb7b refactor(artwork): add libraryFS helper to resolve MusicFS for a library Deluan 2026-04-16 20:16:40 -04:00
  • b9c44acef7 test(artwork): add e2e suite documenting album/disc resolution Deluan 2026-04-16 19:40:52 -04:00
  • 28eba567a7 fix(artwork): return correct timestamp when disc or album coverart changes (#5378) master bobo-xxx 2026-04-18 09:35:33 +08:00
  • c607bd1a6a chore(deps): bump dompurify and react-admin in /ui dependabot/npm_and_yarn/ui/multi-4d064dfd48 dependabot[bot] 2026-04-16 04:43:32 +00:00
  • 72688c8fcc fix(ui): update German translations from POEditor update-translations navidrome-bot 2026-04-15 10:33:30 +00:00
  • 155e293f4d chore(deps): upgrade Go to 1.26 (#5361) Deluan Quintão 2026-04-14 19:31:01 -04:00
  • e86d3266c4 Add context7.json with URL and public key Deluan Quintão 2026-04-14 19:19:42 -04:00
  • 15e011bd49 chore(deps-dev): bump flatted from 3.3.3 to 3.4.2 in /ui (#5236) dependabot[bot] 2026-04-13 20:38:03 -04:00
  • 02c9fc3359 chore(deps): update go-sqlite3 and other dependencies to latest versions Deluan 2026-04-13 20:32:42 -04:00
  • 9c87c74257 chore(deps-dev): bump @types/node from 24.12.2 to 25.6.0 in /ui dependabot/npm_and_yarn/ui/types/node-25.6.0 dependabot[bot] 2026-04-13 18:53:36 +00:00
  • e53e60d39d feat(artwork): enable native libwebp encoding in Docker image (#5350) Deluan Quintão 2026-04-13 13:30:05 -04:00
  • 0a6b5519cc refactor(scanner): remove C++ taglib adapter (#5349) Deluan Quintão 2026-04-12 21:52:29 -04:00
  • 4355ee1dd6 Merge branch 'master' into remove-cpp-taglib remove-cpp-taglib Deluan Quintão 2026-04-12 21:22:26 -04:00
  • 439cff47ac feat: add server-managed fields for plugin playlists in rest adapter feat/playlist-generator-capability Deluan 2026-03-05 21:00:31 -05:00
  • ae8263671a fix: address PR review comments for playlist provider capability Deluan 2026-03-05 20:29:38 -05:00
  • 9ddbcbf6b4 feat: persist and expose plugin playlist ValidUntil in Subsonic API Deluan 2026-03-05 19:00:43 -05:00
  • a5fd18dc67 feat: treat plugin playlists as read-only everywhere Deluan 2026-03-05 18:45:45 -05:00
  • 0a67142f74 refactor: update playlistSyncer methods to use consistent receiver naming Deluan 2026-03-05 18:03:27 -05:00
  • 73203eeef0 refactor: simplify and improve playlist provider and matcher code Deluan 2026-03-05 17:55:59 -05:00
  • 9053a4ffe9 feat(plugins): require users permission for PlaylistProvider and validate owner Deluan 2026-03-05 17:37:26 -05:00
  • 657119fcb3 refactor(plugins): increase work channel capacity for improved playlist processing Deluan 2026-03-05 17:11:31 -05:00
  • f9af67d45e refactor(plugins): streamline plugin loading and synchronization logic Deluan 2026-03-05 17:08:29 -05:00
  • 04aa10f988 refactor(plugins): rename PlaylistGenerator to PlaylistProvider Deluan 2026-03-05 16:51:07 -05:00
  • 03a36c5bdd refactor: inject matcher.Matcher via Wire instead of creating it inline Deluan 2026-03-05 16:03:06 -05:00
  • 0127b8c607 refactor(plugins): move PlaylistGenerator orchestrator into plugin closers Deluan 2026-03-05 15:37:48 -05:00
  • 9c516cf601 refactor(plugins): serialize PlaylistGenerator plugin calls via work queue Deluan 2026-03-05 14:44:53 -05:00
  • fde4517339 refactor(plugins): rename GetPlaylists, add NotFound error and RetryInterval Deluan 2026-03-05 13:27:02 -05:00
  • a8a336de33 fix: address race conditions and design issues in PlaylistGenerator Deluan 2026-03-05 09:01:33 -05:00
  • 188584e3fb test(plugins): add PlaylistGenerator integration tests with test WASM plugin Deluan 2026-03-05 08:12:12 -05:00
  • dedaf8e64a feat: generate PDK code for PlaylistGenerator capability Deluan 2026-03-05 08:02:31 -05:00
  • 4908dae21f feat: integrate PlaylistGenerator orchestration into plugin manager lifecycle Deluan 2026-03-05 07:57:55 -05:00
  • 22ae5bac54 feat: implement PlaylistGenerator orchestration logic Deluan 2026-03-05 07:52:56 -05:00
  • 002c7612bf feat: register PlaylistGenerator capability with WASM function names Deluan 2026-03-05 07:50:45 -05:00
  • 520a3e9c55 feat: define PlaylistGenerator plugin capability interface Deluan 2026-03-05 07:50:00 -05:00
  • bd0af7fd38 feat: add read-only guards for plugin-managed playlists Deluan 2026-03-05 07:49:12 -05:00
  • 4600ed7c28 feat: add PluginID and PluginPlaylistID fields to Playlist model Deluan 2026-03-05 07:44:37 -05:00
  • 4f47022f7f feat: add plugin_id and plugin_playlist_id columns to playlist table Deluan 2026-03-05 07:42:23 -05:00
  • 52e47b896a refactor: extract song-to-library matcher to core/matcher package (#5348) Deluan Quintão 2026-04-12 16:47:22 -04:00
  • aa84e645ba fix(ui): add albumGain and trackGain translations in Brazilian Portuguese v0.61.2 Deluan 2026-04-12 13:22:56 -04:00
  • 9dfd9ac849 fix(ui): update Russian translations and add missing gain keys (#5329) Alexander Makeenkov 2026-04-12 20:17:09 +03:00
  • 1988a4162e refactor(configuration): improve error handling in configuration validation Deluan 2026-04-12 12:18:13 -04:00
  • c49e5855b9 feat(artwork): make max image upload size configurable (#5335) m8tec 2026-04-12 17:16:00 +02:00
  • 85e9982b43 feat(plugins): add path to Scrobbler and Lyrics plugin TrackInfo (#5339) Jorge Pardo Pardo 2026-04-12 16:27:58 +02:00
  • 501c6eaf8f refactor(ffmpeg): consolidate dynamic audio flag injection into a single function Deluan 2026-04-11 23:23:04 -04:00
  • 27209ed26a fix(transcoding): clamp target channels to codec limit (#5336) (#5345) Deluan Quintão 2026-04-11 23:15:07 -04:00
  • de6475bb49 fix(artwork): allow shared disc art from unnumbered filenames in single-folder albums (#5344) Deluan Quintão 2026-04-11 21:19:57 -04:00
  • 1f3a7efa75 fix(backup): surface real SQLite error when backup step fails Deluan 2026-04-11 21:14:52 -04:00
  • ab2f1b45de perf: reduce hot-path heap escapes from value-param pointer aliasing (#5342) Deluan Quintão 2026-04-10 21:59:49 -04:00
  • 9b0bfc606b fix(subsonic): always emit required created field on AlbumID3 (#5340) Deluan Quintão 2026-04-10 19:29:20 -04:00
  • 4570dec675 fix(ui): refine image filters for playing and paused states in SquiddiesGlass Deluan 2026-04-08 13:13:56 -04:00
  • 36a7be9eaf fix(transcoding): include ffprobe in MSI and fall back gracefully when absent (#5326) Deluan Quintão 2026-04-07 20:11:38 -04:00
  • 9e2c6adffd chore(deps-dev): bump vite from 7.3.1 to 7.3.2 in /ui (#5321) dependabot[bot] 2026-04-07 19:07:46 -04:00
  • 1de4e43d29 fix(gotaglib): update go-taglib to fix issue with empty id3v2 frames Deluan 2026-04-07 15:30:21 -04:00
  • 1044c173cb fix(ui): update Chinese (Simplified) translation (#5323) fxj368 2026-04-07 23:11:05 +08:00
  • 478845bc5d fix(plugins): fix race between KVStore cleanup goroutine and Close (navidrome/apple-music-plugin#7) Deluan 2026-04-06 22:28:37 -04:00
  • 7834674381 fix(scanner): map ORIGYEAR tag for VorbisComment and MP4 formats obskyr 2026-04-07 03:35:22 +02:00
  • 9db08903c9 test: add NotInPlaylist integration test for same-owner private playlists fix/relax-inplaylist-public-requirement Deluan 2026-04-06 20:16:55 -04:00
  • 225938911d fix(smartplaylist): allow inPlaylist/notInPlaylist to reference same-owner private playlists (fix #5315) Deluan 2026-04-06 19:51:21 -04:00
  • cf2598203d Merge branch 'master' into remove-cpp-taglib Deluan Quintão 2026-04-06 13:57:20 -04:00
  • cc830e61e6 fix(scanner): gracefully fallback to default extractor instead of crashing Deluan 2026-04-06 13:47:30 -04:00
  • c91721363b fix(ui): prevent theme CSS filters from affecting disc cover art (fix #5312) Deluan 2026-04-06 08:36:28 -04:00
  • d808d75376 feat(docker): enable WebP encoding in Docker environment Deluan 2026-04-05 20:52:36 -04:00
  • 6b38be1891 fix(docker): use dynamic symlinks for libwebp libraries Deluan 2026-04-04 11:37:15 -04:00
  • af453f15bf refactor(build): remove CPP taglib, enable native libwebp in Docker Deluan 2026-04-03 17:31:26 -04:00
  • 664217f3f7 fix(transcoding): play WAV files directly in browsers instead of transcoding (#5309) Deluan Quintão 2026-04-05 20:31:11 -04:00
  • 991bd3ed21 fix(db): resolve schema inconsistencies in library_artist and scrobble_buffer tables (#5047) Barend 2026-04-05 18:56:32 +02:00
  • d7baf6ee7f fix(shares): honor path component of ShareURL config Deluan 2026-04-05 12:12:15 -04:00
  • 2018979bc3 chore(ui): regenerate package-lock.json to have integrity fields (#5276) Chris M 2026-04-05 11:37:50 -04:00
  • e7c7cba873 fix(ui): update Esperanto, Dutch translations from POEditor (#5301) v0.61.1 Deluan Quintão 2026-04-04 15:18:00 -04:00
  • 93631cdee9 fix(ui): update Basque localisation (#5278) Xabi 2026-04-04 21:17:40 +02:00
  • c87db92cee fix(artwork): address WebP performance regression on low-power hardware (#5286) Deluan Quintão 2026-04-04 15:17:01 -04:00
  • 80c1e60259 feat(playlists): add sampleRate, codec, and missing fields for smart playlists Deluan 2026-04-04 10:37:28 -04:00
  • 23f3556371 fix(subsonic): strip OpenSubsonic extensions from playlists for legacy clients Deluan 2026-04-02 16:37:52 -04:00
  • c60637de24 fix(subsonic): return proper artwork ID format in getInternetRadioStations Deluan 2026-04-02 15:44:20 -04:00