412 Commits

Author SHA1 Message Date
Deluan
95cbf54403
Fix error on empty playlists. Simplify code for some operations 2026-01-02 20:09:01 +00:00
Deluan
507223ea40
Load playlist track genres 2026-01-02 20:09:01 +00:00
Deluan
4425ec1338
Remove duplication for loading tracks 2026-01-02 20:09:01 +00:00
Deluan
83380f2de2
Fix/Optimized Playlist tracks deletion 2026-01-02 20:09:01 +00:00
Deluan
9ca4fb538b
Optimize playlist updates 2026-01-02 20:09:00 +00:00
Deluan
1475597c16
Fix Genre field and Contains/NotContains/StartsWith/EndsWith in Criteria (Smart Playlists) 2026-01-02 20:09:00 +00:00
Deluan
8edfcd2c8d
Increase updatePlaylist chunk to 100 tracks 2026-01-02 20:09:00 +00:00
Deluan
8d2f921919
Speed up Subsonic GetPlaylist (by optimizing loadTracks) 2026-01-02 20:09:00 +00:00
Deluan
54996563ed
Make SmartPlaylists read-only 2026-01-02 20:08:59 +00:00
Deluan
a2264b3d39
Update stats of Smart Playlist when it is created
Also fix loadTracks
2026-01-02 20:08:59 +00:00
Deluan
674aab0ce5
Don't import invalid .nsp files 2026-01-02 20:08:59 +00:00
Deluan
1ccae7b21c
Use new Criteria and remove SmartPlaylist struct 2026-01-02 20:08:59 +00:00
Deluan
9aed87531c
Include never played songs in the "not in the last" operator 2026-01-02 20:08:59 +00:00
Deluan
7a8f703eaf
Fix smart playlist refreshing only after the tracks were loaded 2026-01-02 20:08:59 +00:00
Deluan
9033efc971
Cache smart playlist refreshes for 5 seconds 2026-01-02 20:08:59 +00:00
Deluan
56fb82a29a
First version of SmartPlaylists being generated on demand 2026-01-02 20:08:58 +00:00
Deluan
874926481b
Add methods to Playlist model
Also, don't load genres for Playlists tracks (not necessary for now)
2026-01-02 20:08:58 +00:00
Deluan
2939c96bd8
Reduce number of queries for some playlists operations.
Also allow admins to update/delete playlists from other users in the Subsonic API. Closes #1366
2026-01-02 20:08:58 +00:00
Deluan
3820b5ba1e
Fix time-based tests (again) 2026-01-02 20:08:58 +00:00
Deluan
06ed0b530b
Fix rules serialization 2026-01-02 20:08:58 +00:00
Deluan
c1ba89c0d9
Fix time-based tests 2026-01-02 20:08:58 +00:00
Deluan
898e01013c
Load SmartPlaylists rules from DB 2026-01-02 20:08:58 +00:00
Deluan
b9918e370b
More tests 2026-01-02 20:08:58 +00:00
Deluan
d8adf68ef5
Initial drafts for Smart Playlists 2026-01-02 20:08:58 +00:00
Deluan
8a303c7964
Sort songs by artist/album/disc/track_number before adding to playlist 2026-01-02 20:08:31 +00:00
Deluan
6740708313
Add songs to playlists with drag and drop 2026-01-02 20:08:31 +00:00
Deluan
24d8c0ca88
Fix genre update chunking 2026-01-02 20:08:01 +00:00
Deluan
2388709bcd
Do not attach Genres to the "Various Artists" artist 2026-01-02 20:08:01 +00:00
Deluan
c60c57085b
Update genres in chunks. Should fix #1368 2026-01-02 20:08:01 +00:00
Deluan
b96344ca93
Some small refactorings 2026-01-02 20:06:13 +00:00
Deluan
18f6d55acb
Use structs lib to map models to DB. Fix #1266 2026-01-02 20:06:11 +00:00
Deluan
6678a4185a
Inject DB into DataStore, instead of hardcode the dependency 2026-01-02 20:06:11 +00:00
Deluan
7ca8383a68
Fix get song by id 2026-01-02 20:06:11 +00:00
Deluan
cdba81d09a
Show in the logs which mbid will be used if multiple mbids are found for album/artist 2026-01-02 20:06:10 +00:00
Deluan
f9cfc4c63b
Fix "too many SQL variables" error in GetStarred endpoint 2026-01-02 20:06:10 +00:00
Deluan
e63769051f
Remove dependency of deprecated ioutil package 2026-01-02 20:06:10 +00:00
Deluan
4a38fdbaec
Simplify cover detection in roll-up code by left-joining synthesized table 2026-01-02 20:06:09 +00:00
Deluan
71b217bc09
Simplify genre roll-up code by left-joining synthesized tables 2026-01-02 20:06:09 +00:00
Deluan
8d7cd365cf
Optimize GetAll genres query 2026-01-02 20:06:09 +00:00
Deluan
6c74b184bc
Fix rollup of track genres to albums and artists.
See: https://github.com/navidrome/navidrome/pull/1251#issuecomment-882343022
2026-01-02 20:06:09 +00:00
Deluan
34fdc63c64
Fix log message about artist with Various Artists' mbid 2026-01-02 20:06:09 +00:00
Deluan
ac728c043b
Fix log message about multiple MBIDs 2026-01-02 20:06:09 +00:00
Deluan
03e7edc427
Fix multiple id3v2.4 genres appearing as one big concatenated genre 2026-01-02 20:06:09 +00:00
Deluan
033be045c0
Add more tests 2026-01-02 20:06:09 +00:00
Deluan
9cf777b5ff
Fix aggregated values (count, size, duration) in roll-up queries 2026-01-02 20:06:09 +00:00
Deluan
0fa019ac77
Fix Count methods 2026-01-02 20:06:08 +00:00
Deluan
bc266f8fad
Add Genre filters to UI 2026-01-02 20:06:08 +00:00
Deluan
27dfca0b7f
Purge unused genres at the end of the scan 2026-01-02 20:06:08 +00:00
Deluan
f7db423e9f
Add multiple genres to Artists 2026-01-02 20:06:08 +00:00
Deluan
15b3994d13
Remove unnecessary repositories methods 2026-01-02 20:06:08 +00:00