@@ -53,10 +53,12 @@ jobs:
5353 with :
5454 sync : false
5555 prune-cache : false
56+ # Use uvx for ruff to avoid building the Rust extension (saves ~4.5 min)
5657 - name : Python Lint - Format
57- run : uv run ruff format --check .
58+ run : uvx ruff format --check .
5859 - name : Python Lint - Ruff
59- run : uv run ruff check .
60+ run : uvx ruff check .
61+ # PyRight needs the project for type information, so use uv run
6062 - name : Python Lint - PyRight
6163 run : uv run basedpyright vortex-python
6264
9799 uv run --all-packages make html
98100 working-directory : docs/
99101
102+ python-wheel-build :
103+ name : " Python (wheel build)"
104+ runs-on : ubuntu-latest
105+ timeout-minutes : 120
106+ steps :
107+ - uses : actions/checkout@v6
108+ - uses : ./.github/actions/setup-rust
109+ with :
110+ repo-token : ${{ secrets.GITHUB_TOKEN }}
100111 - uses : mlugg/setup-zig@v2
112+ - name : Install uv
113+ uses :
spiraldb/actions/.github/actions/[email protected] 114+ with :
115+ sync : false
116+ prune-cache : false
101117 - name : Ensure wheel and sdist can be built on Linux - PyVortex
102118 shell : bash
103119 run : |
@@ -324,10 +340,12 @@ jobs:
324340 run : |
325341 cargo build -p vortex-ffi
326342 cargo run -p vortex-ffi --example hello_vortex
343+ - name : Install llvm-tools-preview
344+ run : rustup component add llvm-tools-preview
327345 - name : Generate coverage report
328346 run : |
329- rustup component add llvm-tools-preview
330347 grcov . --binary-path target/debug/ -s . -t lcov --llvm --ignore-not-existing \
348+ --threads $(nproc) \
331349 --ignore '../*' --ignore '/*' --ignore 'fuzz/*' --ignore 'bench-vortex/*' \
332350 --ignore 'home/*' --ignore 'xtask/*' --ignore 'target/*' --ignore 'vortex-error/*' \
333351 --ignore 'vortex-python/*' --ignore 'vortex-jni/*' --ignore 'vortex-flatbuffers/*' \
0 commit comments