CI Perf Lint

pdm-without-use-uv

What it flags

Flags repositories and CI jobs that use PDM without use_uv = true configured.

PDM can delegate dependency resolution and installation to uv by setting one config flag. This speeds up pdm lock, pdm install, and pdm sync operations with no workflow changes.

Why it matters

PDM’s default backend uses pip’s resolver and installer, which can be slower than uv equivalents. Setting use_uv = true transparently swaps in uv for both resolution and installation, accelerating the most expensive parts of PDM’s workflow.

Current heuristic

The rule looks for:

The rule intentionally skips:

Install uv, then run pdm config --local use_uv true. This writes use_uv = true to the root of pdm.toml; putting that key in [tool.pdm] in pyproject.toml does not configure the PDM resolver. Visible CI commands enabling use_uv are also recognized.

When to ignore it

Ignore this finding when:

Suggested verification

Sources