Skip to content

Tweak no sync in workflows#2074

Open
Dreamsorcerer wants to merge 1 commit into
mainfrom
uv-no-sync
Open

Tweak no sync in workflows#2074
Dreamsorcerer wants to merge 1 commit into
mainfrom
uv-no-sync

Conversation

@Dreamsorcerer
Copy link
Copy Markdown
Collaborator

Thought about this overnight, and I think this will be more robust to future changes if we ensure the uv installs are always explicit.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 13, 2026

Greptile Summary

This PR moves UV_NO_SYNC=1 from a per-job env: block into the top-level env: block, ensuring every job must explicitly call uv sync rather than relying on implicit syncing during uv run. An explicit uv sync --group tests --frozen step is also added to the tests matrix job, which previously lacked one.

  • UV_NO_SYNC: "1" is now declared once at workflow level, removing duplicated local declarations from lint and self-hosted-tests jobs and closing any gap where a new job could accidentally rely on implicit syncing.
  • The tests job gains an explicit uv sync --group tests --frozen step before the pytest invocation, bringing it in line with md-babel and self-hosted-tests which already had explicit sync steps.

Confidence Score: 5/5

Safe to merge — the change is a clean consolidation with no functional risk.

Every job that calls uv run already had or now has an explicit uv sync step before it, so moving UV_NO_SYNC=1 to the global scope introduces no regression. The only net-new step (the explicit sync in the tests job) replaces implicit behaviour that was previously happening inside uv run, keeping the effective package set identical.

No files require special attention.

Important Files Changed

Filename Overview
.github/workflows/ci.yml Promotes UV_NO_SYNC to global env scope and adds an explicit uv sync step to the tests matrix job; all other jobs already had explicit sync steps, so the change is internally consistent.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    GE["Global env: UV_NO_SYNC=1"]

    GE --> lint
    GE --> md_babel["md-babel"]
    GE --> tests
    GE --> self["self-hosted-tests"]

    lint --> lint_sync["uv sync --only-group lint --frozen"]
    lint_sync --> lint_run["uv run mypy / pre-commit"]

    md_babel --> md_sync["uv sync --group tests --frozen"]
    md_sync --> md_run["./bin/run-doc-codeblocks"]

    tests --> tests_sync["uv sync --group tests --frozen NEW"]
    tests_sync --> tests_run["uv run pytest"]

    self --> self_sync["uv sync --group tests-self-hosted --frozen"]
    self_sync --> self_run["uv run pytest"]
Loading

Reviews (1): Last reviewed commit: "Tweak no sync in workflows" | Re-trigger Greptile

@codecov
Copy link
Copy Markdown

codecov Bot commented May 13, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

📢 Thoughts on this report? Let us know!

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