Skip to content

build: allow newer uv for source checkouts - #1146

Merged
ironcommit merged 1 commit into
mainfrom
relax-uv-upper-bound/rsadler
Aug 7, 2026
Merged

build: allow newer uv for source checkouts#1146
ironcommit merged 1 commit into
mainfrom
relax-uv-upper-bound/rsadler

Conversation

@ironcommit

@ironcommit ironcommit commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Relaxes the uv version upper bound from >=0.9.14,<0.10.0 to >=0.9.14, allowing developers and CI to use newer uv releases (0.10.x, 0.11.x, etc.) for source checkouts. Lockfile updates are still pinned to uv 0.9.14 for reproducibility.

Changes

  • pyproject.toml: Removed <0.10.0 upper bound from required-version and constraint-dependencies
  • script/uv-lock.sh (new): Wrapper script that enforces uv 0.9.14 for uv lock operations, ensuring lockfile consistency across contributors
  • .pre-commit-config.yaml: Updated the uv-lock hook to use the new wrapper script
  • CI (.github/workflows/ci.yaml): Added two new jobs:
    • uv-lock: Validates lockfile with pinned uv 0.9.14
    • uv-latest-compatibility: Runs uv sync --frozen --all-packages with latest uv to verify forward compatibility
  • Documentation: Updated README.md, AGENTS.md, docs/get-started/setup.mdx, docs/requirements.mdx, docs/support-matrix.mdx, and plugins/nemo-experimentalist/README.md to reflect the relaxed requirement
  • uv.lock: Re-resolved with uv 0.9.14 (removes transient packages no longer pulled in)

Type of Change

  • Code change with documentation updates
  • CI, build, or test infrastructure

Quality Gates

  • Tests added or updated for changed behavior
  • Documentation updated for user-visible behavior

Verification

  • Pull request title follows the repository's Conventional Commit format
  • Every commit includes an appropriate Signed-off-by: trailer
  • uv run pre-commit run -a passes, or any blocked checks are identified below
  • No secrets, API keys, or credentials are included

Summary by CodeRabbit

  • Documentation

    • Updated setup and support guidance to allow uv version 0.9.14 or later.
    • Clarified that pip remains supported for published packages.
  • CI

    • Added checks for lockfile consistency and compatibility with both pinned and latest uv versions.
  • Developer Experience

    • Added validation and guidance for using the required uv version when updating lockfiles.

@ironcommit
ironcommit requested review from a team as code owners August 6, 2026 21:51
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The project now permits uv>=0.9.14 without an upper bound. Lock updates require uv 0.9.14. CI validates pinned and latest uv workflows.

Changes

uv compatibility

Layer / File(s) Summary
Update uv version contract and documentation
pyproject.toml, AGENTS.md, README.md, docs/get-started/setup.mdx, docs/requirements.mdx, docs/support-matrix.mdx, plugins/nemo-experimentalist/README.md
Configuration and documentation now accept uv>=0.9.14 without the previous <0.10.0 limit.
Enforce the lock update uv version
script/uv-lock.sh, .pre-commit-config.yaml, AGENTS.md
The pre-commit hook uses a wrapper that requires uv 0.9.14 before running uv lock.
Add pinned and latest uv CI checks
.github/workflows/ci.yaml
CI validates uv.lock with uv 0.9.14 and runs frozen synchronization across all packages with the latest uv. The aggregate CI status includes both jobs.

Possibly related PRs

Suggested labels: ci, docs

Suggested reviewers: crookedstorm, svvarom

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the primary change: allowing newer uv versions for source checkouts.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch relax-uv-upper-bound/rsadler

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/ci.yaml:
- Around line 121-124: Update the “Check lock and sync with latest uv” workflow
step to run uv sync with --frozen --all-packages without --dry-run, while
preserving the existing uv lock --check command.

In `@AGENTS.md`:
- Line 248: Update the uv version documentation in AGENTS.md to state the
concrete support contract as uv>=0.9.14, replacing vague phrases such as “Recent
uv releases.” Keep the separate CI compatibility-validation statement, but do
not use “current uv release stream” as the supported-version definition.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 6085f493-220e-43bf-9d8e-29aaf2aa89c1

📥 Commits

Reviewing files that changed from the base of the PR and between c71ca67 and ddb0b9d.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (8)
  • .github/workflows/ci.yaml
  • AGENTS.md
  • README.md
  • docs/get-started/setup.mdx
  • docs/requirements.mdx
  • docs/support-matrix.mdx
  • plugins/nemo-experimentalist/README.md
  • pyproject.toml

Comment thread .github/workflows/ci.yaml Outdated
Comment thread AGENTS.md Outdated
Comment thread uv.lock
@ironcommit
ironcommit force-pushed the relax-uv-upper-bound/rsadler branch from ddb0b9d to 38ec6a7 Compare August 6, 2026 22:14
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@ironcommit
ironcommit force-pushed the relax-uv-upper-bound/rsadler branch from 38ec6a7 to 9b80511 Compare August 6, 2026 22:27
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

Comment thread .github/workflows/ci.yaml
@ironcommit
ironcommit requested a review from mckornfield August 6, 2026 22:28
Comment thread .github/workflows/ci.yaml
@ironcommit
ironcommit force-pushed the relax-uv-upper-bound/rsadler branch from 9b80511 to 8b0b388 Compare August 6, 2026 23:13
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@github-actions github-actions Bot added the build conventional-commit type label Aug 6, 2026
@ironcommit
ironcommit requested a review from svvarom August 6, 2026 23:45
@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor
Suite Lines Covered Line Rate Branch Rate
Unit Tests 31638/40258 78.6% 63.2%
Integration Tests 18390/38193 48.1% 20.8%

Comment thread .github/workflows/ci.yaml
@coderabbitai coderabbitai Bot mentioned this pull request Aug 7, 2026
8 tasks
@ironcommit
ironcommit force-pushed the relax-uv-upper-bound/rsadler branch from 8b0b388 to 6d5e9b3 Compare August 7, 2026 18:34
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

Signed-off-by: Ryan S <267728323+ironcommit@users.noreply.github.com>
@ironcommit
ironcommit added this pull request to the merge queue Aug 7, 2026
@ironcommit
ironcommit removed this pull request from the merge queue due to a manual request Aug 7, 2026
@ironcommit
ironcommit force-pushed the relax-uv-upper-bound/rsadler branch from 6d5e9b3 to a5cdfd0 Compare August 7, 2026 19:06
@ironcommit
ironcommit enabled auto-merge August 7, 2026 19:07
@ironcommit
ironcommit added this pull request to the merge queue Aug 7, 2026
Merged via the queue into main with commit 6811a4e Aug 7, 2026
56 checks passed
@ironcommit
ironcommit deleted the relax-uv-upper-bound/rsadler branch August 7, 2026 19:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build conventional-commit type

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants