make_deprecated_module_getattr - Tinker Documentation

tinker_cookbook.utils.make_deprecated_module_getattr

tinker_cookbook.utils.make_deprecated_module_getattr( module_name, attrs)

Create a __getattr__ function for deprecating module-level attributes.

Returns a function suitable for assigning to __getattr__ at module scope. When an old attribute name is accessed, it emits a deprecation warning and transparently returns the new object.

Parameters:

Returns: A __getattr__ function.

# In mymodule/__init__.py
__getattr__ = make_deprecated_module_getattr(
__name__,
{"OldThing": ("mymodule.new_place.NewThing", "0.20.0")},
)