Deprecation and Support Policy#
This page defines how DepDigest maintains compatibility while moving toward 1.0.0.
Python support window#
DepDigest supports active Python versions listed in
pyproject.tomlclassifiers and CI jobs.Support for an older Python minor can be dropped in a minor release when maintenance cost or ecosystem constraints justify it.
When support is dropped, docs, CI, classifiers, and user-facing compatibility notes must be updated in the same release cycle.
Public API deprecation policy#
For symbols in depdigest.__all__ and documented CLI behavior:
Prefer additive changes over breaking replacements.
If a behavior must change, document the deprecation first and keep compatibility for at least one minor release when feasible.
Emit clear migration guidance in docs and release notes.
Remove deprecated behavior only after contract tests and docs are updated to the new baseline.
Schema and contract changes#
For get_info(format="dict|json") and CLI machine-readable outputs:
Treat schema/key changes as contract changes.
Bump the documented schema version when contract changes are intentional.
Add migration notes for integrators that parse output in CI.
Contributor checklist for compatibility-sensitive changes#
Before merging deprecations or support-window updates:
update
docs/content/developers/api-stability.md;update
standards/DEPDIGEST_GUIDE.mdwhen integration contract changes;add/adjust contract tests;
ensure release notes call out migration impact explicitly.