Library/stack audit follow-ups L1-L8 (v0.6.4) #75
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: just ci (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: taiki-e/install-action@just | |
| # WHY: `just ci` runs `cargo deny check` and `typos`. Both are | |
| # external binaries — neither ships with the Rust toolchain. Using | |
| # taiki-e/install-action fetches prebuilt binaries (seconds) rather | |
| # than `cargo install` (minutes), which matters on the 3-OS matrix. | |
| - uses: taiki-e/install-action@cargo-deny | |
| - uses: taiki-e/install-action@typos | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22.12' | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| # WHY: Tauri v2 (crates/desktop) requires GTK3 + WebKit2GTK on | |
| # Linux. Without these, cargo build/clippy/test on the workspace | |
| # fails because tauri-build links against native libs. | |
| - name: Install Tauri Linux deps | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt-get update -q | |
| sudo apt-get install -yq \ | |
| libgtk-3-dev \ | |
| libwebkit2gtk-4.1-dev \ | |
| libappindicator3-dev \ | |
| librsvg2-dev \ | |
| patchelf | |
| - name: Run just ci | |
| shell: bash | |
| run: just ci |