From ffa33efec7aadf6a0c14f1f9e4cc67d170118b5e Mon Sep 17 00:00:00 2001 From: asardaes Date: Sat, 22 Nov 2025 19:47:28 +0100 Subject: [PATCH] Fix emission of result from before_album_info_emitted --- beets/metadata_plugins.py | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/beets/metadata_plugins.py b/beets/metadata_plugins.py index 952985980..1871ed14f 100644 --- a/beets/metadata_plugins.py +++ b/beets/metadata_plugins.py @@ -35,15 +35,12 @@ def find_metadata_source_plugins() -> list[MetadataSourcePlugin]: return [p for p in find_plugins() if hasattr(p, "data_source")] # type: ignore[misc] +@notify_info_yielded("albuminfo_received") def candidates(items, *args, **kwargs) -> Iterable[AlbumInfo]: """Return matching album candidates from all metadata source plugins.""" for plugin in find_metadata_source_plugins(): for info in plugin.candidates(items, *args, **kwargs): - send( - "albuminfo_received", - info=plugin.before_album_info_emitted(items, info), - ) - yield info + yield plugin.before_album_info_emitted(items, info) @notify_info_yielded("trackinfo_received") @@ -63,10 +60,8 @@ def album_for_id( """ for plugin in find_metadata_source_plugins(): if info := plugin.album_for_id(album_id=_id): - send( - "albuminfo_received", - info=plugin.before_album_info_emitted(items, info), - ) + info = plugin.before_album_info_emitted(items, info) + send("albuminfo_received", info=info) return info return None