1name: rust-next 2 3permissions: 4 contents: read 5 6on: 7 schedule: 8 - cron: '5 5 5 * *' 9 10env: 11 RUST_BACKTRACE: 1 12 CARGO_TERM_COLOR: always 13 CLICOLOR: 1 14 15jobs: 16 test: 17 name: Test 18 strategy: 19 matrix: 20 os: ["ubuntu-latest", "windows-latest", "macos-latest"] 21 rust: ["stable", "beta"] 22 include: 23 - os: ubuntu-latest 24 rust: "nightly" 25 continue-on-error: ${{ matrix.rust != 'stable' }} 26 runs-on: ${{ matrix.os }} 27 steps: 28 - name: Checkout repository 29 uses: actions/checkout@v4 30 - name: Install Rust 31 uses: dtolnay/rust-toolchain@stable 32 with: 33 toolchain: ${{ matrix.rust }} 34 - uses: Swatinem/rust-cache@v2 35 - uses: taiki-e/install-action@cargo-hack 36 - name: Build 37 run: cargo test --no-run --workspace --all-features 38 - name: Test 39 run: cargo hack test --workspace --feature-powerset 40 - name: Run crate example 41 run: cargo run --example default 42 latest: 43 name: "Check latest dependencies" 44 runs-on: ubuntu-latest 45 steps: 46 - name: Checkout repository 47 uses: actions/checkout@v4 48 - name: Install Rust 49 uses: dtolnay/rust-toolchain@stable 50 with: 51 toolchain: stable 52 - uses: Swatinem/rust-cache@v2 53 - uses: taiki-e/install-action@cargo-hack 54 - name: Update dependencues 55 run: cargo update 56 - name: Build 57 run: cargo test --no-run --workspace --all-features 58 - name: Test 59 run: cargo hack test --workspace --feature-powerset 60 - name: Run crate example 61 run: cargo run --example default 62