@@ -215,7 +215,8 @@ def wrapper(*args, **kwargs):
215
215
def deprecate_nonkeyword_args (version : str ,
216
216
pos_args : list = None ,
217
217
* ,
218
- n_args : int = None ):
218
+ n_args : int = None ,
219
+ stacklevel : int = 2 ):
219
220
"""
220
221
Deprecate the function call with too much positional arguments.
221
222
@@ -232,6 +233,8 @@ def deprecate_nonkeyword_args(version: str,
232
233
pos_args : list
233
234
List of names of the arguments OK to be given as positional.
234
235
236
+ stacklevel : int, default 2
237
+ Stack level for `warnings.warn`
235
238
Returns
236
239
-------
237
240
_deprecate_nonkeyword_args : callable
@@ -256,14 +259,14 @@ def _deprecate_nonkeyword_args(func):
256
259
def wrapper (* args , ** kwargs ):
257
260
if len (args ) > n_args :
258
261
if pos_args is None :
259
- msg = "%s will only accept %i positional arguments in version %s" % ( func . __name__ ,
260
- n_args ,
261
- version )
262
+ msg = (
263
+ "%s will only accept %i positional arguments in version %s"
264
+ ) % ( func . __name__ , n_args , version )
262
265
else :
263
- msg = "%s will only accept positional arguments (%s) in version %s" % ( func . __name__ ,
264
- ", " . join ( pos_args ),
265
- version )
266
- warnings .warn (msg , FutureWarning )
266
+ msg = (
267
+ "%s will only accept positional arguments (%s) in version %s"
268
+ ) % ( func . __name__ , ", " . join ( pos_args ), version )
269
+ warnings .warn (msg , FutureWarning , stacklevel = stacklevel )
267
270
return func (* args , ** kwargs )
268
271
return wrapper
269
272
0 commit comments