dependency-support-policy-action¶
Manage rolling minimum-supported versions for Python projects, as a standalone CLI and a GitHub Action.
The tool reads dependency constraints from pyproject.toml, evaluates a
support policy — Scientific Python SPEC 0
is built in — against package release history, and raises dependency lower
bounds and the requires-python floor accordingly. Everything else in your
requirements (upper bounds, exclusions, extras, environment markers) and your
TOML formatting/comments is preserved character-for-character. Existing
minimums are never lowered.
Quick start¶
uvx dependency-support-policy check # exit 1 if floors drifted below policy
uvx dependency-support-policy plan # machine-readable change plan (JSON)
uvx dependency-support-policy update --lock minimal
# Pin to a full commit SHA in production instead of the mutable tag.
- uses: isaac-cf-wong/dependency-support-policy-action@v1
id: policy
with:
mode: update # check | plan | update
lock: minimal # off | minimal | upgrade
Where to go next¶
- Support-window model — how floors are computed, and what SPEC 0 means exactly.
- Configuration — the
[tool.dependency-support-policy]table and its precedence rules. - CLI and GitHub Action — modes, flags, inputs, and outputs.
- Coexisting with Renovate — who owns which updates.