@@ -26,23 +26,17 @@ jobs:
26
26
runs-on : ${{ matrix.os }}
27
27
steps :
28
28
- name : Checkout
29
- uses : actions/checkout@v3
30
- - name : Set up Rust
31
- uses : actions-rs/ toolchain@v1
29
+ uses : actions/checkout@v4
30
+ - name : Set up Rust (Pinned Version)
31
+ uses : dtolnay/rust- toolchain@1.81.0
32
32
with :
33
- toolchain : 1.81
34
- override : true
35
- - name : Install Clippy (pinned version for this pinned version of Rust)
36
- run : rustup component add clippy
33
+ components : clippy, rustfmt, rust-src
37
34
- name : Run Clippy (strict for this pinned version of Rust)
38
35
run : cargo clippy --all-targets --all-features -- -D warnings
39
- - name : Set up Rust (Latest Stable for Tests )
40
- uses : actions-rs/ toolchain@v1
36
+ - name : Set up Rust (Latest Stable)
37
+ uses : dtolnay/rust- toolchain@stable
41
38
with :
42
- toolchain : stable
43
- override : true
44
- - name : Install Clippy (Latest)
45
- run : rustup component add clippy
39
+ components : clippy, rustfmt, rust-src
46
40
- name : Run Clippy (lenient for latest version)
47
41
run : cargo clippy --all-targets --all-features -- -A warnings || echo "Clippy warnings from the latest version"
48
42
- name : Test Rust no-default-features
@@ -183,27 +177,27 @@ jobs:
183
177
uses : astral-sh/setup-uv@v3
184
178
- name : Install Python ${{ matrix.python-version }}
185
179
run : uv python install ${{ matrix.python-version }}
186
- - name : Setup, Lint, and Test Python (Linux/macOS)
187
- if : runner.os != 'Windows'
180
+ - name : Pinned Ruff
181
+ run : uvx ruff@0.6.9 check bed_reader
182
+ - name : Lastest Ruff (just to check for warnings)
183
+ run : uvx ruff@latest check bed_reader || echo "Ignoring warnings from the latest version of ruff"
184
+ - name : Install minimal dependencies
185
+ run : uv sync --extra min_dev
186
+ - name : Run min tests
188
187
run : |
189
- cd bed_reader
190
- uvx ruff@0.6.9 check .
191
- uvx ruff@latest check . || echo "Ignoring warnings from the latest version of ruff"
192
- uv sync --extra min_dev
193
- source ../.venv/bin/activate
194
- pytest tests/test_opt_dep.py
195
- uv sync --extra dev --extra sparse --extra samples
196
- source ../.venv/bin/activate
197
- pytest .
198
- - name : Setup, Lint, and Test Python (Windows)
199
- if : runner.os == 'Windows'
188
+ if [[ "$RUNNER_OS" != "Windows" ]]; then
189
+ source .venv/bin/activate
190
+ else
191
+ source .venv/Scripts/activate
192
+ fi
193
+ pytest bed_reader/tests/test_opt_dep.py
194
+ - name : Install all dependencies
195
+ run : uv sync --all-extras
196
+ - name : Run all tests
200
197
run : |
201
- cd bed_reader
202
- uvx ruff@0.6.9 check .
203
- uvx ruff@latest check . || echo "Ignoring warnings from the latest version of ruff"
204
- uv sync --extra min_dev
205
- ../.venv/Scripts/activate
206
- pytest tests/test_opt_dep.py
207
- uv sync --extra dev --extra sparse --extra samples
208
- ../.venv/Scripts/activate
209
- pytest .
198
+ if [[ "$RUNNER_OS" != "Windows" ]]; then
199
+ source .venv/bin/activate
200
+ else
201
+ source .venv/Scripts/activate
202
+ fi
203
+ pytest bed_runner
0 commit comments