python
4 guardrails, all at version v1.
| Guardrail | Default severity | What it checks |
|---|---|---|
python/build-backend-declared | warning | A packaged project names its build backend in [build-system], so it builds the same way everywhere. |
python/lockfile-committed | warning | The project commits a lock file, so an install of the same commit resolves the same versions. |
python/single-lockfile | warning | The project commits at most one lock file, so two installers don't both try to manage the environment. |
python/version-declared | warning | The project declares the Python version it is built and run against, and that version is no older than the configured floor. |
Shared inputs
Every python guardrail declares these inputs. Individual guardrails can add their own.
| Input | Description | Default |
|---|---|---|
projectDir | Directory holding the project, relative to the directory the CLI runs in. | . |
Shared collectors
Every python guardrail receives the facts these collectors gather. Individual guardrails can ask for more collectors of their own.
| Collector | Gathers |
|---|---|
python | The Python project in the project directory: its manifest and build backend, the Python version it asks for, the requirements it declares and which of them are pinned, and the lock files committed beside them. |
You configure every guardrail in this category the same way, in the guardrails.checks array of buildnote.json. Configuring guardrails lists every option, and Guardrails lets you search the whole library.