Skip to content

Commit 6f572bd

Browse files
committed
fix(ci): use uv venv + uv run instead of --system
The `--system` flag fails on modern uv because uv-managed Python installations are marked EXTERNALLY-MANAGED (PEP 668), rejecting system-wide pip installs. This caused exit code 2 in CI. Switch to the standard uv workflow: `uv venv` to create an env, `uv pip install` (no --system) to populate it, and `uv run` to execute commands within it. Verified locally with a clean-slate end-to-end run (venv → install .[test] → pytest → ruff → black).
1 parent fcb8232 commit 6f572bd

1 file changed

Lines changed: 13 additions & 13 deletions

File tree

.github/workflows/ci.yaml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,18 @@ jobs:
1818
uses: astral-sh/setup-uv@v7
1919
with:
2020
version: "latest"
21+
python-version: "3.13"
2122

22-
- name: Set up Python
23-
run: uv python install 3.13
24-
25-
- name: Install package (dev)
26-
run: uv pip install --system -e ".[dev]"
23+
- name: Create venv and install package
24+
run: |
25+
uv venv
26+
uv pip install -e ".[dev]"
2727
2828
- name: ruff check
29-
run: ruff check .
29+
run: uv run ruff check .
3030

3131
- name: black --check
32-
run: black --check .
32+
run: uv run black --check .
3333

3434
test:
3535
name: Test (Python ${{ matrix.python-version }})
@@ -46,12 +46,12 @@ jobs:
4646
uses: astral-sh/setup-uv@v7
4747
with:
4848
version: "latest"
49+
python-version: ${{ matrix.python-version }}
4950

50-
- name: Set up Python ${{ matrix.python-version }}
51-
run: uv python install ${{ matrix.python-version }}
52-
53-
- name: "Install package (test deps: jax + e3nn-jax)"
54-
run: uv pip install --system -e ".[test]"
51+
- name: Create venv and install package
52+
run: |
53+
uv venv
54+
uv pip install -e ".[test]"
5555
5656
- name: Run pytest
57-
run: pytest tests -q
57+
run: uv run pytest tests -q

0 commit comments

Comments
 (0)