Apply Version Updates From Current Changes #16395
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
| # Copyright 2019-2024 Tauri Programme within The Commons Conservancy | |
| # SPDX-License-Identifier: Apache-2.0 | |
| # SPDX-License-Identifier: MIT | |
| name: test core | |
| on: | |
| push: | |
| branches: | |
| - dev | |
| pull_request: | |
| paths: | |
| - '.github/workflows/test-core.yml' | |
| - 'crates/**' | |
| - 'Cargo.toml' | |
| - 'Cargo.lock' | |
| - '!crates/tauri/scripts/**' | |
| - '!crates/tauri-cli/**' | |
| - '!crates/tauri-bundler/**' | |
| - '!crates/tauri-macos-sign/**' | |
| - '!crates/tauri-schema-generator/**' | |
| env: | |
| RUST_BACKTRACE: 1 | |
| CARGO_PROFILE_DEV_DEBUG: 0 # This would add unnecessary bloat to the target folder, decreasing cache efficiency. | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| runs-on: ${{ matrix.platform.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - { | |
| target: x86_64-pc-windows-msvc, | |
| os: windows-latest, | |
| toolchain: '1.90', | |
| cargo: cargo, | |
| command: 'test' | |
| } | |
| - { | |
| target: x86_64-unknown-linux-gnu, | |
| os: ubuntu-latest, | |
| toolchain: '1.90', | |
| cargo: cargo, | |
| command: 'test' | |
| } | |
| - { | |
| target: aarch64-apple-darwin, | |
| os: macos-14, | |
| toolchain: '1.90', | |
| cargo: cargo, | |
| command: 'test' | |
| } | |
| - { | |
| target: aarch64-apple-ios, | |
| os: macos-latest, | |
| toolchain: '1.90', | |
| cargo: cargo, | |
| command: 'build' | |
| } | |
| - { | |
| target: aarch64-linux-android, | |
| os: ubuntu-latest, | |
| toolchain: '1.90', | |
| cargo: cross, | |
| command: 'build' | |
| } | |
| features: | |
| - { args: --no-default-features, key: no-default } | |
| - { args: --all-features, key: all } | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: install Rust | |
| uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: ${{ matrix.platform.toolchain }} | |
| targets: ${{ matrix.platform.target }} | |
| - name: install Linux dependencies | |
| if: contains(matrix.platform.target, 'unknown-linux') | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y webkit2gtk-4.1 libxdo-dev libayatana-appindicator3-dev | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| key: ${{ matrix.platform.target }} | |
| save-if: ${{ matrix.features.key == 'all' }} | |
| - name: install cross | |
| if: ${{ matrix.platform.cargo == 'cross' }} | |
| run: cargo install cross --git https://github.com/cross-rs/cross --rev 51f46f296253d8122c927c5bb933e3c4f27cc317 --locked | |
| - name: test tauri-utils | |
| # Using --lib --bins --tests to skip doc tests | |
| run: ${{ matrix.platform.cargo }} ${{ matrix.platform.command }} --target ${{ matrix.platform.target }} ${{ matrix.features.args }} --lib --bins --tests --manifest-path crates/tauri-utils/Cargo.toml | |
| - name: test tauri | |
| run: ${{ matrix.platform.cargo }} ${{ matrix.features.key == 'no-default' && 'check' || matrix.platform.command }} --target ${{ matrix.platform.target }} ${{ matrix.features.args }} --manifest-path crates/tauri/Cargo.toml | |
| - name: test tauri examples | |
| if: ${{ matrix.features.key != 'no-default' && matrix.platform.command == 'test' }} | |
| run: | | |
| ${{ matrix.platform.cargo }} test --target ${{ matrix.platform.target }} ${{ matrix.features.args }} --examples --manifest-path crates/tauri/Cargo.toml | |
| ${{ matrix.platform.cargo }} test --target ${{ matrix.platform.target }} ${{ matrix.features.args }} --manifest-path examples/api/src-tauri/Cargo.toml |