Source code for plasmapy.utils.decorators.deprecation

"""Decorators to mark objects that are deprecated."""

__all__ = ["deprecated"]

import inspect

from astropy.utils.decorators import deprecated as astropy_deprecated

from plasmapy.utils.exceptions import PlasmaPyDeprecationWarning


[docs] def deprecated(*args, warning_type=PlasmaPyDeprecationWarning, **kwargs): """ A wrapper of `astropy.utils.decorators.deprecated` that by default assumes a warning type of `~plasmapy.utils.exceptions.PlasmaPyDeprecationWarning`. """ return astropy_deprecated(*args, warning_type=warning_type, **kwargs)
# override deprecated's signature asig = inspect.signature(astropy_deprecated) new_default = asig.parameters["warning_type"].replace( default=PlasmaPyDeprecationWarning ) new_sig = dict(asig.parameters) new_sig["warning_type"] = new_default new_sig = inspect.Signature( parameters=tuple(new_sig.values()), return_annotation=asig.return_annotation, ) deprecated.__signature__ = new_sig