Repository navigation
52 lines (48 loc) · 1.64 KB
/
Copy pathcompatibility.yml
File metadata and controls
52 lines (48 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
name: Runtime compatibility
on:
push:
branches: [main]
paths: ['rust/**', 'python/**', 'server/**', 'tests/**', '.github/workflows/compatibility.yml']
pull_request:
paths: ['rust/**', 'python/**', 'server/**', 'tests/**', '.github/workflows/compatibility.yml']
permissions:
contents: read
jobs:
rust:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
rust: ['1.89', stable]
defaults:
run:
working-directory: rust
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: dtolnay/rust-toolchain@3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9
with:
toolchain: ${{ matrix.rust }}
components: rustfmt, clippy
- uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
with:
workspaces: rust
- run: cargo test --all-features --locked
- run: cargo fmt --check
if: matrix.rust == 'stable'
- run: cargo clippy --all-features --all-targets --locked -- -D warnings
if: matrix.rust == 'stable'
python:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python: ['3.10', '3.12']
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- run: python -m pip install --upgrade pip 'setuptools>=83.0.0' wheel
- run: python -m pip install -e './python[dev]' -r server/requirements.txt httpx pip-audit
- run: python -m pytest python/tests server/tests
- run: pip-audit --progress-spinner off