Skip to content

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