@@ -115,7 +115,7 @@ def match_by_id(album_id: str | None, consensus: bool) -> Iterable[AlbumInfo]:
115115 log .debug ("No album ID consensus." )
116116 else :
117117 log .debug ("Searching for discovered album ID: {}" , album_id )
118- return metadata_plugins .albums_for_ids (album_id )
118+ return metadata_plugins .albums_for_ids ([ album_id ] )
119119
120120 return ()
121121
@@ -203,7 +203,7 @@ def _add_candidate(
203203 return
204204
205205 # Prevent duplicates.
206- if info .album_id and info . identifier in results :
206+ if info .identifier in results :
207207 log .debug ("Duplicate." )
208208 return
209209
@@ -270,10 +270,9 @@ def tag_album(
270270
271271 # Search by explicit ID.
272272 if search_ids :
273- for search_id in search_ids :
274- log .debug ("Searching for album ID: {}" , search_id )
275- for _info in metadata_plugins .albums_for_ids (search_id ):
276- _add_candidate (items , candidates , _info )
273+ log .debug ("Searching for album IDs: {}" , search_ids )
274+ for _info in metadata_plugins .albums_for_ids (search_ids ):
275+ _add_candidate (items , candidates , _info )
277276
278277 # Use existing metadata or text search.
279278 else :
@@ -345,17 +344,16 @@ def tag_item(
345344 # First, try matching by the external source ID.
346345 trackids = search_ids or [t for t in [item .mb_trackid ] if t ]
347346 if trackids :
348- for trackid in trackids :
349- log .debug ("Searching for track ID: {}" , trackid )
350- for info in metadata_plugins .tracks_for_ids (trackid ):
351- dist = track_distance (item , info , incl_artist = True )
352- candidates [info .identifier ] = hooks .TrackMatch (dist , info )
353-
354- # If this is a good match, then don't keep searching.
355- rec = _recommendation (_sort_candidates (candidates .values ()))
356- if rec == Recommendation .strong and not config ["import" ]["timid" ]:
357- log .debug ("Track ID match." )
358- return Proposal (_sort_candidates (candidates .values ()), rec )
347+ log .debug ("Searching for track IDs: {}" , trackids )
348+ for info in metadata_plugins .tracks_for_ids (trackids ):
349+ dist = track_distance (item , info , incl_artist = True )
350+ candidates [info .identifier ] = hooks .TrackMatch (dist , info )
351+
352+ # If this is a good match, then don't keep searching.
353+ rec = _recommendation (_sort_candidates (candidates .values ()))
354+ if rec == Recommendation .strong and not config ["import" ]["timid" ]:
355+ log .debug ("Track ID match." )
356+ return Proposal (_sort_candidates (candidates .values ()), rec )
359357
360358 # If we're searching by ID, don't proceed.
361359 if search_ids :
0 commit comments