on: push: # Run CI for all branches except GitHub merge queue tmp branches branches-ignore: - "gh-readonly-queue/**" pull_request: # Run CI for PRs on any branch merge_group: # Run CI for the GitHub merge queue name: Continuous integration env: RUSTFLAGS: '--deny warnings' jobs: test: runs-on: ubuntu-latest strategy: matrix: rust: - stable - 1.59.0 # MSRV - nightly target: - x86_64-unknown-linux-gnu - thumbv6m-none-eabi - thumbv7m-none-eabi include: - target: x86_64-unknown-linux-gnu features: std - target: x86_64-unknown-linux-gnu features: alloc steps: - uses: actions/checkout@v3 - uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.rust }} target: ${{ matrix.target }} - run: sed -i '/nightly-only/d' Cargo.toml if: matrix.rust != 'nightly' - run: cargo check --target=${{ matrix.target }} --features=${{ matrix.features }} - run: cargo test --target=${{ matrix.target }} --features=${{ matrix.features }} if: contains(matrix.target, 'linux')