name: CI on: push: branches: ['master', 'auto'] pull_request: jobs: Test: strategy: matrix: os: [ubuntu-latest] rust: [1.47.0, stable, beta, nightly] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.rust }} - name: Unpin dependencies except on MSRV if: matrix.rust != '1.47.0' run: cargo update - run: cargo build --all-targets - run: cargo test - run: cargo test --features "serde" - run: cargo test --no-default-features - run: cargo test --no-default-features --features=hardcoded-data Fmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@stable with: components: rustfmt - run: cargo fmt --check build_result: name: homu build finished runs-on: ubuntu-latest needs: - "Test" - "Fmt" steps: - name: Mark the job as successful run: exit 0 if: success() - name: Mark the job as unsuccessful run: exit 1 if: "!success()"