Skip to content

chore(deps): bump uv from 0.11.29 to 0.11.32 across every release input - #27

Merged
abrichr merged 1 commit into
mainfrom
chore/uv-0.11.32
Jul 27, 2026
Merged

chore(deps): bump uv from 0.11.29 to 0.11.32 across every release input#27
abrichr merged 1 commit into
mainfrom
chore/uv-0.11.32

Conversation

@abrichr

@abrichr abrichr commented Jul 27, 2026

Copy link
Copy Markdown
Member

Completes #22, which could not go green.

Dependabot bumped only [project.optional-dependencies].release. The lockfile was left at 0.11.29, so the very first CI step failed on every leg:

error: The lockfile at `uv.lock` needs to be updated, but `--locked` was provided.

The uv pin is declared in three places, and a correct bump has to move all of them plus the lock:

Location Role
pyproject.toml [project.optional-dependencies].release the declared pin; the only one reflected in uv.lock
pyproject.toml [tool.semantic_release].build_command the uv actually installed and used to build the release
tests/test_release_contract.py asserts the build command's literal pin
uv.lock resolved uv entry + requires-dist specifier

The lock diff is contained to the uv package entry and its specifier; no other resolution changed.

Also adds test_release_uv_pin_is_declared_once. Only the release extra reaches uv.lock, so if a future bump touches one pyproject pin and not the other, the release build would install a uv that is neither declared nor locked and nothing would notice. Verified the guard fails when the pins diverge, not just that it passes.

Locally against uv 0.11.32: uv lock --locked, uv sync --locked --extra dev, ruff check, and 144 passed / 2 skipped.

Dependabot's #22 changed only the `release` extra, so `uv sync --locked`
rejected the stale uv.lock and every CI leg failed. Complete the bump instead:
the `release` extra, the semantic-release build_command, its contract test,
and the regenerated lock all move together.

Adds a guard that the two pyproject uv pins agree. Only the `release` extra is
reflected in uv.lock, so a half-applied bump would otherwise let the release
build install a uv that is neither declared nor locked.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM
@abrichr
abrichr merged commit 4af2b99 into main Jul 27, 2026
10 checks passed
@abrichr
abrichr deleted the chore/uv-0.11.32 branch July 27, 2026 22:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant