chore(deps): update rust crate tauri-plugin-shell to v2.3.4 #199
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 - Lint and Test' | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| branches: [ main, dev ] | |
| paths: | |
| - 'src/**' | |
| - 'src-tauri/**' | |
| - 'package.json' | |
| - 'package-lock.json' | |
| - 'yarn.lock' | |
| - 'Cargo.toml' | |
| - 'Cargo.lock' | |
| - '.github/workflows/ci.yml' | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUST_BACKTRACE: 1 | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| frontend-lint: | |
| name: Frontend Lint & Type Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: 'yarn' | |
| - name: Install dependencies | |
| run: yarn install | |
| - name: Run ESLint | |
| run: yarn lint | |
| - name: Run TypeScript type check | |
| run: yarn web:build --mode=production | |
| rust-check: | |
| name: Rust Check & Lint | |
| runs-on: ${{ matrix.platform.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - os: ubuntu-latest | |
| target: x86_64-unknown-linux-gnu | |
| - os: windows-latest | |
| target: x86_64-pc-windows-msvc | |
| - os: macos-13 | |
| target: x86_64-apple-darwin | |
| - os: macos-latest | |
| target: aarch64-apple-darwin | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Rust | |
| uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| targets: ${{ matrix.platform.target }} | |
| components: rustfmt, clippy | |
| - name: Cache Rust dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: src-tauri | |
| cache-on-failure: true | |
| - name: Install system dependencies (Linux) | |
| if: matrix.platform.os == 'ubuntu-latest' | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: 'yarn' | |
| - name: Install frontend dependencies | |
| run: yarn install | |
| - name: Run prebuild script | |
| run: yarn prebuild:dev | |
| - name: Check Rust formatting | |
| working-directory: src-tauri | |
| run: cargo fmt --all -- --check | |
| - name: Run Clippy | |
| working-directory: src-tauri | |
| run: cargo clippy --target ${{ matrix.platform.target }} --all-targets --all-features -- -D warnings | |
| - name: Run Cargo check | |
| working-directory: src-tauri | |
| run: cargo check --target ${{ matrix.platform.target }} --all-targets --all-features | |
| - name: Run Rust tests | |
| working-directory: src-tauri | |
| run: cargo test --target ${{ matrix.platform.target }} --all-features | |
| security-audit: | |
| name: Security Audit | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: 'yarn' | |
| - name: Install dependencies | |
| run: yarn install | |
| - name: Run npm audit | |
| run: yarn audit --audit-level moderate | |
| build-test: | |
| name: Build Test | |
| runs-on: ${{ matrix.platform.os }} | |
| needs: [frontend-lint, rust-check] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - os: ubuntu-latest | |
| target: x86_64-unknown-linux-gnu | |
| - os: windows-latest | |
| target: x86_64-pc-windows-msvc | |
| - os: macos-13 | |
| target: x86_64-apple-darwin | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Rust | |
| uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| targets: ${{ matrix.platform.target }} | |
| - name: Cache Rust dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: src-tauri | |
| cache-on-failure: true | |
| - name: Install system dependencies (Linux) | |
| if: matrix.platform.os == 'ubuntu-latest' | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libxslt1.1 libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev patchelf | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: 'yarn' | |
| - name: Install frontend dependencies | |
| run: yarn install | |
| - name: Run prebuild script | |
| run: yarn prebuild:dev | |
| - name: Build frontend | |
| run: yarn web:build | |
| - name: Build Tauri application (test build) | |
| working-directory: src-tauri | |
| run: cargo build --target ${{ matrix.platform.target }} --release |