Remove Applications shortcut from DMG #13
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: | |
| branches: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| check: | |
| name: Lint & Test | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - name: Cache Cargo | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/bin/ | |
| ~/.cargo/registry/index/ | |
| ~/.cargo/registry/cache/ | |
| ~/.cargo/git/db/ | |
| src-tauri/target/ | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: ${{ runner.os }}-cargo- | |
| - name: Cache Bun | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.bun/install/cache | |
| key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }} | |
| restore-keys: ${{ runner.os }}-bun- | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Build frontend | |
| run: bun run vite build | |
| - name: TypeScript typecheck | |
| run: bunx tsc --noEmit | |
| - name: Biome lint | |
| run: bunx biome check . | |
| - name: Check biome-ignore comments | |
| run: | | |
| if grep -r "biome-ignore" --include="*.ts" --include="*.tsx" --include="*.js" src/ 2>/dev/null; then | |
| echo "❌ Found biome-ignore comments - these are forbidden!" | |
| exit 1 | |
| fi | |
| echo "✅ No biome-ignore comments found" | |
| - name: Check code duplication | |
| run: bunx jscpd src/ | |
| - name: Check file length | |
| run: ./scripts/check_file_length.sh | |
| - name: Rust format check | |
| working-directory: src-tauri | |
| run: cargo fmt -- --check | |
| - name: Rust clippy | |
| working-directory: src-tauri | |
| run: cargo clippy --all-targets --all-features -- -D warnings | |
| - name: Rust tests | |
| working-directory: src-tauri | |
| run: cargo test | |
| - name: TypeScript tests | |
| run: bunx vitest run | |
| build: | |
| name: Build | |
| runs-on: macos-latest | |
| needs: check | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Cache Cargo | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/bin/ | |
| ~/.cargo/registry/index/ | |
| ~/.cargo/registry/cache/ | |
| ~/.cargo/git/db/ | |
| src-tauri/target/ | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: ${{ runner.os }}-cargo- | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Install Tauri CLI | |
| run: cargo install tauri-cli --locked | |
| - name: Build Tauri app | |
| run: cargo tauri build | |
| env: | |
| TAURI_SIGNING_PRIVATE_KEY: "" | |
| TAURI_SIGNING_PRIVATE_KEY_PASSWORD: "" |