class VersionedDeprecationWarning(DeprecationWarning): | |
"""A custom deprecation warning class that includes version information. | |
Attributes: | |
message (str): The deprecation message describing why the feature is deprecated. | |
remove_version (str): The version in which the feature will be removed. | |
Example: | |
>>> def deprecated_function(): | |
... warnings.warn( | |
... VersionedDeprecationWarning( | |
... "Function XYZ is deprecated.", | |
... after_version="2.0.0" | |
... ) | |
... ) | |
... | |
>>> deprecated_function() | |
DeprecationWarning: Function XYZ is deprecated. It will be removed in version 2.0.0. | |
""" | |
def __init__(self, message: str, remove_version: str) -> None: | |
super().__init__(message + f" It will be removed in version {remove_version}.") | |