deprecated_renamed_argument#
- sunpy.util.deprecated_renamed_argument(
- old_name,
- new_name,
- since,
- arg_in_kwargs=False,
- relax=False,
- pending=False,
- warning_type=<class 'sunpy.util.exceptions.SunpyDeprecationWarning'>,
- alternative='',
- message='',
Deprecate a _renamed_ or _removed_ function argument.
The decorator assumes that the argument with the
old_namewas removed from the function signature and thenew_namereplaced it at the same position in the signature. If theold_nameargument is given when calling the decorated function the decorator will catch it and issue a deprecation warning and pass it on asnew_nameargument.- Parameters:
old_name (str or sequence of str) – The old name of the argument.
new_name (str or sequence of str or None) – The new name of the argument. Set this to
Noneto remove the argumentold_nameinstead of renaming it.since (str or number or sequence of str or number) – The release at which the old argument became deprecated.
arg_in_kwargs (bool or sequence of bool, optional) – If the argument is not a named argument (for example it was meant to be consumed by
**kwargs) set this toTrue. Otherwise the decorator will throw an Exception if thenew_namecannot be found in the signature of the decorated function. Default isFalse.relax (bool or sequence of bool, optional) – If
FalseaTypeErroris raised if bothnew_nameandold_nameare given. IfTruethe value fornew_nameis used and a Warning is issued. Default isFalse.pending (bool or sequence of bool, optional) – If
Truethis will hide the deprecation warning and ignore the correspondingrelaxparameter value. Default isFalse.warning_type (Warning) – Warning to be issued. Default is
AstropyDeprecationWarning.alternative (str, optional) – An alternative function or class name that the user may use in place of the deprecated object if
new_nameis None. The deprecation warning will tell the user about this alternative if provided.message (str, optional) – A custom warning message. If provided then
sinceandalternativeoptions will have no effect.
- Raises:
TypeError – If the new argument name cannot be found in the function signature and arg_in_kwargs was False or if it is used to deprecate the name of the
*args-,**kwargs-like arguments. At runtime such an Error is raised if both the new_name and old_name were specified when calling the function and “relax=False”.
Notes
The decorator should be applied to a function where the name of an argument was changed but it applies the same logic.
Warning
If
old_nameis a list or tuple thenew_nameandsincemust also be a list or tuple with the same number of entries.relaxandarg_in_kwargcan be a single bool (applied to all) or also a list/tuple with the same number of entries likenew_name, etc.