@@ -379,6 +379,8 @@ def func(used_arg, other_arg, unused, more_args): ...
379
379
f"Matplotlib internal error: { name !r} must be a parameter for "
380
380
f"{ func .__name__ } ()" )
381
381
382
+ addendum = kwargs .pop ('addendum' , None )
383
+
382
384
@functools .wraps (func )
383
385
def wrapper (* inner_args , ** inner_kwargs ):
384
386
arguments = signature .bind (* inner_args , ** inner_kwargs ).arguments
@@ -396,16 +398,15 @@ def wrapper(*inner_args, **inner_kwargs):
396
398
# wrappers always pass all arguments explicitly.
397
399
elif any (name in d and d [name ] != _deprecated_parameter
398
400
for d in [arguments , arguments .get (kwargs_name , {})]):
399
- addendum = (f"If any parameter follows { name !r} , they should be "
400
- f"passed as keyword, not positionally." )
401
- if kwargs .get ("addendum" ):
402
- kwargs ["addendum" ] += " " + addendum
403
- else :
404
- kwargs ["addendum" ] = addendum
401
+ deprecation_addendum = (
402
+ f"If any parameter follows { name !r} , they should be passed as "
403
+ f"keyword, not positionally." )
405
404
warn_deprecated (
406
405
since ,
407
406
name = repr (name ),
408
407
obj_type = f"parameter of { func .__name__ } ()" ,
408
+ addendum = (addendum + " " + deprecation_addendum ) if addendum
409
+ else deprecation_addendum ,
409
410
** kwargs )
410
411
return func (* inner_args , ** inner_kwargs )
411
412
0 commit comments