chore: bump version to 0.12.5 #46
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 | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| jobs: | |
| # ── Gate 1: Fast checks (~10-30s each) ── | |
| biome: | |
| name: Biome | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: jdx/mise-action@v2 | |
| - run: bun install --frozen-lockfile | |
| - run: just biome | |
| cargo-fmt: | |
| name: Rust Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: jdx/mise-action@v2 | |
| - run: rustup component add rustfmt | |
| - run: just fmt | |
| svelte-check: | |
| name: Svelte Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: jdx/mise-action@v2 | |
| - run: bun install --frozen-lockfile | |
| - run: just svelte-check | |
| # ── Gate 2: Heavy checks (only after Gate 1 passes) ── | |
| cargo-clippy: | |
| name: Clippy | |
| needs: [biome, cargo-fmt, svelte-check] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install system dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| libwebkit2gtk-4.1-dev \ | |
| build-essential \ | |
| curl \ | |
| wget \ | |
| file \ | |
| libxdo-dev \ | |
| libssl-dev \ | |
| libayatana-appindicator3-dev \ | |
| librsvg2-dev | |
| - uses: jdx/mise-action@v2 | |
| - run: rustup component add clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: "src-tauri -> target" | |
| save-if: ${{ github.ref == 'refs/heads/main' }} | |
| - run: just clippy | |
| cargo-test: | |
| name: Rust Tests | |
| needs: [biome, cargo-fmt, svelte-check] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install system dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| libwebkit2gtk-4.1-dev \ | |
| build-essential \ | |
| curl \ | |
| wget \ | |
| file \ | |
| libxdo-dev \ | |
| libssl-dev \ | |
| libayatana-appindicator3-dev \ | |
| librsvg2-dev | |
| - uses: jdx/mise-action@v2 | |
| - run: rustup component add llvm-tools-preview | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: "src-tauri -> target" | |
| save-if: ${{ github.ref == 'refs/heads/main' }} | |
| - uses: taiki-e/install-action@cargo-llvm-cov | |
| - name: Run tests with coverage | |
| run: just cargo-test-cov | |
| - name: Upload Rust coverage HTML | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: rust-coverage-report | |
| path: rust-coverage-html/ | |
| - name: Compile-check benchmarks | |
| run: just bench-check | |
| - name: Report Rust coverage | |
| if: github.event_name == 'pull_request' | |
| uses: zgosalvez/github-actions-report-lcov@v4 | |
| with: | |
| coverage-files: rust-lcov.info | |
| artifact-name: rust-coverage-report | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| title-prefix: Rust | |
| update-comment: true | |
| vitest: | |
| name: Vitest | |
| needs: [biome, cargo-fmt, svelte-check] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: jdx/mise-action@v2 | |
| - run: bun install --frozen-lockfile | |
| - name: Run tests with coverage | |
| run: just vitest-cov | |
| - name: Upload TypeScript coverage HTML | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: typescript-coverage-report | |
| path: coverage/ | |
| - name: Report TypeScript coverage | |
| if: github.event_name == 'pull_request' | |
| uses: zgosalvez/github-actions-report-lcov@v4 | |
| with: | |
| coverage-files: coverage/lcov.info | |
| artifact-name: typescript-coverage-report | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| title-prefix: TypeScript | |
| update-comment: true |