Changelog¶
All notable changes to deprecator will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]¶
Fixed¶
warn_innow defaults tomin(gone_in, current_version)when not specified, fixing ValueError when defining deprecations with onlygone_inandcurrent_version > gone_in(#5)
[26.1.0] - 2026-01-12¶
Major rewrite introducing the modern deprecator API.
Added¶
- New Deprecator API:
for_package()function to get version-aware deprecators - Automatic warning transitions: Warnings automatically change type based on package version
PendingDeprecationWarningbeforewarn_inversionDeprecationWarningbetweenwarn_inandgone_inExpiredDeprecationWarningaftergone_inversion- Registry system:
registry_for()for framework ecosystems with multiple packages - CLI tools:
deprecator init,show-registry,show-package,validate-package,list-packages - pytest plugin:
--deprecator-github-annotationsfor CI visibility,--deprecator-errorfor strict mode - Entry point discovery: Automatic discovery of deprecators and registries via
deprecator.deprecatoranddeprecator.registryentry points - Type annotations: Full mypy support with
py.typedmarker - Rich display: Optional rich-based terminal output for CLI
- MkDocs-based documentation with Material theme and GitHub Pages deployment
- Comprehensive user guide with cookbook, migration, and testing guides
- "Why deprecator?" section explaining lifecycle management benefits
- Framework Developer section for registry documentation
Changed¶
- Minimum Python version raised to 3.10
- CLI migrated from argparse to Click
- Deprecated legacy
deprecate()decorator (still available for compatibility) - Documentation restructured for better end-user navigation
Architecture¶
Deprecatorclass: Main deprecation management with version-aware warning categorizationDeprecatorRegistry: Manages multiple deprecators for framework ecosystems- Per-package warning classes: Dynamic warning class creation for better filtering
[0.1.0] - 2024¶
Initial release with basic deprecation decorator.
Added¶
deprecate()decorator for simple deprecation warnings- Basic warning emission with customizable message and category
For the full commit history, see the GitHub repository.