@@ -17,34 +17,48 @@ jobs:
1717 platform :
1818 - { runner: ubuntu-latest, python_exec: ".venv/bin/python" }
1919 - { runner: ubuntu-24.04-arm, python_exec: ".venv/bin/python" }
20- - { runner: macos-latest, python_exec: ".venv/bin/python" }
21- - { runner: macos-13, python_exec: ".venv/bin/python" }
20+ - { runner: macos-latest, python_exec: ".venv/bin/python", extra_rustflags: "-C split-debuginfo=off" }
21+ - { runner: macos-13, python_exec: ".venv/bin/python", extra_rustflags: "-C split-debuginfo=off" }
2222 - { runner: windows-latest, python_exec: ".venv\\Scripts\\python" }
2323 runs-on : ${{ matrix.platform.runner }}
24+ env :
25+ RUSTFLAGS : " -C debuginfo=0 ${{ matrix.platform.extra_rustflags }}"
26+ CARGO_INCREMENTAL : " 0"
27+ SCCACHE_GHA_ENABLED : " true"
28+ RUSTC_WRAPPER : " sccache"
29+
2430 steps :
2531 - uses : actions/checkout@v4
32+ with :
33+ fetch-depth : 1
34+
35+ - name : Run sccache-cache
36+ uses :
mozilla-actions/[email protected] 2637
2738 - uses : actions/setup-python@v5
2839 id : setup_python
2940 with :
3041 python-version : ${{ matrix.python-version }}
31- cache : ' pip'
42+ # Python cache is huge and saves little time, so disabled for now, until we have higher cache size limits
43+ # cache: 'pip'
3244
3345 - run : rustup toolchain install stable --profile minimal
34- - name : Rust Cache
35- uses : Swatinem/rust-cache@v2
36- with :
37- key : rust-${{ matrix.platform.runner }}-${{ matrix.python-version }}
46+
47+ # Disable Rust cache until we have higher cache size limits
48+ # - name: Rust Cache
49+ # uses: Swatinem/rust-cache@v2
50+ # with:
51+ # key: rust-${{ matrix.platform.runner }}-${{ matrix.python-version }}
52+ # cache-targets: 'false'
53+ # cache-all-crates: 'false'
54+ # cache-workspace-crates: 'false'
55+
56+ - name : Rust tests (no default features)
57+ run : cargo test --no-default-features --verbose
58+
3859 - name : Rust tests
3960 run : cargo test --verbose
4061
41- - uses : actions/cache@v4
42- with :
43- path : .venv
44- key : pyenv-${{ matrix.platform.runner }}-${{ steps.setup_python.outputs.python-version }}-${{ hashFiles('pyproject.toml') }}
45- restore-keys : |
46- pyenv-${{ matrix.platform.runner }}-${{ steps.setup_python.outputs.python-version }}-
47-
4862 - name : Setup venv
4963 run : |
5064 python -m venv .venv
5367 ${{ matrix.platform.python_exec }} -m pip install maturin mypy pytest pytest-asyncio
5468 - name : Python build
5569 run : |
56- ${{ matrix.platform.python_exec }} -m maturin develop -E all
70+ ${{ matrix.platform.python_exec }} -m maturin develop --strip - E all
5771 - name : Python type check (mypy)
5872 run : |
5973 ${{ matrix.platform.python_exec }} -m mypy python
6579 runs-on : ubuntu-latest
6680 steps :
6781 - uses : actions/checkout@v4
82+ with :
83+ fetch-depth : 1
6884 - name : Install Rust toolchain
6985 uses : dtolnay/rust-toolchain@stable
7086 - uses : taiki-e/install-action@v2
8197 if [ $status -ne 0 ]; then
8298 echo "::error::Third-party notices validation failed. Please update /about.toml and rerun."
8399 exit $status
84- fi
100+ fi
0 commit comments