From 78462245b7360a6a7043ffdfee1ccef348ffefd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0ar=C5=ABnas=20Nejus?= Date: Sun, 4 May 2025 14:35:30 +0100 Subject: [PATCH] Use wraps for notify_info_yielded decorator --- beets/plugins.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/beets/plugins.py b/beets/plugins.py index 560324fa1..06af40c26 100644 --- a/beets/plugins.py +++ b/beets/plugins.py @@ -491,13 +491,14 @@ def notify_info_yielded(event: str) -> Callable[[IterF[P, Ret]], IterF[P, Ret]]: 'send'. """ - def decorator(generator: IterF[P, Ret]) -> IterF[P, Ret]: - def decorated(*args: P.args, **kwargs: P.kwargs) -> Iterator[Ret]: - for v in generator(*args, **kwargs): + def decorator(func: IterF[P, Ret]) -> IterF[P, Ret]: + @wraps(func) + def wrapper(*args: P.args, **kwargs: P.kwargs) -> Iterator[Ret]: + for v in func(*args, **kwargs): send(event, info=v) yield v - return decorated + return wrapper return decorator @@ -694,7 +695,7 @@ def sanitize_pairs( ... ) [('foo', 'baz'), ('foo', 'bar'), ('key', 'value'), ('foo', 'foobar')] """ - pairs_all: list[tuple[str, str]] = list(pairs_all) + pairs_all = list(pairs_all) seen: set[tuple[str, str]] = set() others = [x for x in pairs_all if x not in pairs] res: list[tuple[str, str]] = []