View source on GitHub

Decorator for marking functions or methods deprecated.

This decorator logs a deprecation warning whenever the decorated function is called. It has the following format:

(from ) is deprecated and will be removed after . Instructions for updating:

If date is None, 'after ' is replaced with 'in a future version'. will include the class name if it is a method.

It also edits the docstring of the function: ' (deprecated)' is appended to the first line of the docstring and a deprecation notice is prepended to the rest of the docstring.

date String or None. The date the function is scheduled to be removed. Must be ISO 8601 (YYYY-MM-DD), or None.
instructions String. Instructions on how to update code using the deprecated function.
warn_once Boolean. Set to True to warn only the first time the decorated function is called. Otherwise, every call will log a warning.

Decorated function or method.

ValueError If date is not None or in ISO 8601 format, or instructions are empty.