feat: add Windows support (updater + dictation) #1064
Workflow file for this run
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"] | |
| jobs: | |
| test-tauri: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Cache Rust build | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| src-tauri/target | |
| key: ${{ runner.os }}-cargo-test-${{ hashFiles('src-tauri/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-test- | |
| - name: Install CMake | |
| run: command -v cmake >/dev/null 2>&1 || brew install cmake | |
| - name: Rust tests | |
| run: cargo test | |
| working-directory: src-tauri | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: "npm" | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Lint | |
| run: npm run lint | |
| typecheck: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: "npm" | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Typecheck | |
| run: npm run typecheck | |
| test-js: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: "npm" | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Tests | |
| run: npm run test | |
| build-macos: | |
| runs-on: macos-latest | |
| needs: | |
| - lint | |
| - typecheck | |
| - test-js | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: "npm" | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Cache Rust build | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| src-tauri/target | |
| key: ${{ runner.os }}-cargo-build-${{ hashFiles('src-tauri/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-build- | |
| - name: Install CMake | |
| run: command -v cmake >/dev/null 2>&1 || brew install cmake | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Tauri debug build | |
| run: npm run tauri -- build --debug --no-bundle | |
| build-windows: | |
| runs-on: windows-latest | |
| needs: | |
| - lint | |
| - typecheck | |
| - test-js | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: "npm" | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Install LLVM (bindgen) | |
| run: choco install llvm -y --no-progress | |
| - name: Configure LLVM (bindgen) | |
| run: | | |
| echo "LIBCLANG_PATH=C:\\Program Files\\LLVM\\bin" >> $env:GITHUB_ENV | |
| echo "C:\\Program Files\\LLVM\\bin" >> $env:GITHUB_PATH | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Doctor (Windows) | |
| run: npm run doctor:win | |
| - name: Tauri debug build (Windows) | |
| run: npm run tauri -- build --debug --no-bundle --config src-tauri/tauri.windows.conf.json |