REPOMATIC-LINT-DEPS(1) REPOMATIC-LINT-DEPS(1)

repomatic lint-deps - Check dependencies resolve from the public index

repomatic lint-deps [OPTIONS]

Check that every dependency resolves from the index users install from.

A dependency is shippable when whoever installs the published artifact gets the same code the release was tested against. A git branch, a local path, a fork, a direct URL or a private index all break that, and most of them break it silently: a `[tool.uv.sources]` override never reaches the published metadata, so the wheel builds and uploads exactly as it would have, and only the install fails.

Runs entirely offline, reading pyproject.toml and uv.lock. The lockfile pass is what catches a source override on a package no table names, since it records the resolved origin of the whole tree.

Reads lint-deps.allow from [tool.repomatic] for packages exempted by name, each mapped to the reason it is safe, and lint-deps.comment-word-threshold for the length a floor comment may run to.

Output symbols:

✗ Blocks a release
⚠ Warning, does not block
ℹ Covered by lint-deps.allow

Exit codes:

0 Nothing blocks a release, or --no-fatal was passed.
1 At least one finding blocks a release.

Path to the pyproject.toml file.
Path to the uv.lock file.
Exit non-zero when a finding blocks a release. Pass --no-fatal to report without failing, for continuous visibility on ordinary pushes.
Also report declarations departing from the project's version policy: upper bounds, missing floors, unsorted lists, misplaced type stubs, uncommented and over-long floor comments. Never blocks a release.
Write a markdown report of the blocking findings to this file.
Format for --output. github-actions produces format for PR template consumption in workflows.
Sort table by this column. Repeat to set priority.
Show this message and exit.

Path to the pyproject.toml file.
Path to the uv.lock file.
Exit non-zero when a finding blocks a release. Pass --no-fatal to report without failing, for continuous visibility on ordinary pushes.
Also report declarations departing from the project's version policy: upper bounds, missing floors, unsorted lists, misplaced type stubs, uncommented and over-long floor comments. Never blocks a release.
Write a markdown report of the blocking findings to this file.
Format for --output. github-actions produces format for PR template consumption in workflows.
Sort table by this column. Repeat to set priority.
Show this message and exit.

0
Success.
1
A runtime error, or an aborted prompt (Ctrl-C, a declined confirmation).
2
A usage error: unknown option, invalid value, missing operand, or an unparsable configuration file.

Check the current project

repomatic lint\-deps

Report without failing, for an ordinary CI push

repomatic lint\-deps \-\-no\-fatal

Emit a markdown report for a PR body

repomatic lint\-deps \-\-no\-fatal \-\-output report.md

Kevin Deldycke

2026-09-14 7.15.1.dev0