navidrome/persistence
Deluan Quintão bfa5b29913
feat: MBID search functionality for albums, artists and songs (#4286)
* feat(subsonic): search by MBID functionality

Updated the search methods in the mediaFileRepository, albumRepository, and artistRepository to support searching by MBID in addition to the existing query methods. This change improves the efficiency of media file, album, and artist searches, allowing for faster retrieval of records based on MBID.

Signed-off-by: Deluan <deluan@navidrome.org>

* feat(subsonic): enhance MBID search functionality for albums and artists

Updated the search functionality to support searching by MBID for both
albums and artists. The fullTextFilter function was modified to accept
additional MBID fields, allowing for more comprehensive searches. New
tests were added to ensure that the search functionality correctly
handles MBID queries, including cases for missing entries and the
includeMissing parameter. This enhancement improves the overall search
capabilities of the application, making it easier for users to find
specific media items by their unique identifiers.

Signed-off-by: Deluan <deluan@navidrome.org>

* fix(subsonic): normalize MBID to lowercase for consistent querying

Updated the MBID handling in the SQL search logic to convert the input
to lowercase before executing the query. This change ensures that
searches are case-insensitive, improving the accuracy and reliability
of the search results when querying by MBID.

Signed-off-by: Deluan <deluan@navidrome.org>

---------

Signed-off-by: Deluan <deluan@navidrome.org>
2025-06-30 17:11:54 -04:00
..
album_repository.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
album_repository_test.go feat(server): add Role filters to albums (#3829) 2025-03-14 21:43:52 -04:00
artist_repository.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
artist_repository_test.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
collation_test.go revert: separation of write and read DBs 2024-11-19 18:41:50 -05:00
export_test.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
folder_repository.go feat(scanner): add folder hash for smarter quick scan change detection (#4220) 2025-06-12 13:17:34 -04:00
genre_repository.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
helpers.go fix(scanner): optimize refresh (#4059) 2025-05-14 20:47:03 -04:00
helpers_test.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
library_repository.go fix(scanner): filter folders by num_audio_files to ensure accurate statistics 2025-06-23 10:26:26 -04:00
library_repository_test.go feat(scanner): add library stats to DB (#4229) 2025-06-14 15:58:33 -04:00
mediafile_repository.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
mediafile_repository_test.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
persistence.go refactor: rename chain package to run and update references 2025-06-14 17:19:06 -04:00
persistence_suite_test.go fix: Allow nullable ReplayGain and support 0.0 (#4239) 2025-06-17 12:02:25 -04:00
persistence_test.go fix(server): play queue should not return empty entries for deleted tracks 2024-09-20 11:22:37 -04:00
player_repository.go fix(insights): fix issues and improve reports (#3558) 2024-12-18 20:37:35 -05:00
player_repository_test.go revert: separation of write and read DBs 2024-11-19 18:41:50 -05:00
playlist_repository.go feat(ui): add 'Show in Playlist' context menu (#4139) 2025-05-30 21:26:35 -04:00
playlist_repository_test.go feat(ui): add 'Show in Playlist' context menu (#4139) 2025-05-30 21:26:35 -04:00
playlist_track_repository.go feat(ui): add song Love and Rating functionality to playlist view (#4134) 2025-06-04 20:38:28 -04:00
playqueue_repository.go fix(server): ensure single record per user by reusing existing playqueue ID 2025-06-11 17:26:13 -04:00
playqueue_repository_test.go fix(server): ensure single record per user by reusing existing playqueue ID 2025-06-11 17:26:13 -04:00
property_repository.go Replace beego/orm with dbx (#2693) 2023-12-09 13:52:17 -05:00
property_repository_test.go revert: separation of write and read DBs 2024-11-19 18:41:50 -05:00
radio_repository.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
radio_repository_test.go revert: separation of write and read DBs 2024-11-19 18:41:50 -05:00
scrobble_buffer_repository.go fix(server): send artist mbids when scrobbling to ListenBrainz 2025-02-23 13:30:39 -05:00
scrobble_buffer_repository_test.go feat(plugins): experimental support for plugins (#3998) 2025-06-22 20:45:38 -04:00
share_repository.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
sql_annotations.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
sql_base_repository.go fix(subsonic): Sort songs by presence of lyrics for getLyrics (#4237) 2025-06-16 12:04:41 -04:00
sql_base_repository_test.go fix(subsonic): Sort songs by presence of lyrics for getLyrics (#4237) 2025-06-16 12:04:41 -04:00
sql_bookmarks.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
sql_bookmarks_test.go revert: separation of write and read DBs 2024-11-19 18:41:50 -05:00
sql_participations.go fix(server): send artist mbids when scrobbling to ListenBrainz 2025-02-23 13:30:39 -05:00
sql_restful.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
sql_restful_test.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
sql_search.go feat: MBID search functionality for albums, artists and songs (#4286) 2025-06-30 17:11:54 -04:00
sql_search_test.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
sql_tags.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
tag_repository.go fix(scanner): optimize refresh (#4059) 2025-05-14 20:47:03 -04:00
transcoding_repository.go fix(transcoding): restrict transcoding operations to admin users (#4096) 2025-05-21 22:19:23 -04:00
transcoding_repository_test.go fix(transcoding): restrict transcoding operations to admin users (#4096) 2025-05-21 22:19:23 -04:00
user_props_repository.go Replace beego/orm with dbx (#2693) 2023-12-09 13:52:17 -05:00
user_repository.go sec(subsonic): authentication bypass in Subsonic API with non-existent username 2025-02-20 20:14:19 -05:00
user_repository_test.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00