name: CI on: push: branches: [main] pull_request: jobs: check: runs-on: docker container: docker.io/library/rust:1-bookworm steps: - uses: actions/checkout@v4 - name: Cache cargo registry and target dir uses: actions/cache@v4 with: path: | ~/.cargo/registry target key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - name: Add wasm target run: rustup target add wasm32-unknown-unknown - name: Check native crates run: cargo check --workspace --exclude feedsignal-web - name: Check web crate (server) run: cargo check -p feedsignal-web --no-default-features --features server - name: Check web crate (wasm client) run: cargo check -p feedsignal-web --no-default-features --features web --target wasm32-unknown-unknown - name: Test run: cargo test --workspace --exclude feedsignal-web