name: Continuous Integration on: push: branches: - master pull_request: jobs: format: runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v6 - name: Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: toolchain: nightly components: rustfmt rustflags: "" - name: Format run: cargo +nightly fmt -- --check tests: needs: - format strategy: fail-fast: false matrix: test_args: - --no-default-features --features "" # for cosmic-comp, don't remove! - --no-default-features --features "winit_debug" - --no-default-features --features "winit_tokio" - --no-default-features --features "winit" - --no-default-features --features "winit_wgpu" - --no-default-features --features "wayland" - --no-default-features --features "applet" - --no-default-features --features "desktop,smol" - --no-default-features --features "desktop,tokio" - -p cosmic-theme runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v6 with: submodules: recursive - name: System dependencies run: sudo apt-get update; sudo apt-get install -y libxkbcommon-dev libwayland-dev - name: Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: rustflags: "" - name: Test features run: cargo test ${{ matrix.test_args }} -- --test-threads=1 env: RUST_BACKTRACE: full examples: needs: - format strategy: fail-fast: false matrix: examples: - "application" - "open-dialog" - "context-menu" - "nav-context" runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v6 with: submodules: recursive - name: System dependencies run: sudo apt-get update; sudo apt-get install -y libxkbcommon-dev libwayland-dev - name: Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: rustflags: "" - name: Check example run: cargo check -p "${{ matrix.examples }}" env: RUST_BACKTRACE: full