#727 Use TryInto Traitbounds for Builder Methods #492
Workflow file for this run
This file contains 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
name: CI | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
env: | |
RUST_BACKTRACE: 1 | |
jobs: | |
ci-pass: | |
name: CI is green | |
runs-on: ubuntu-latest | |
needs: | |
- style | |
- test | |
- msrv | |
- wasm | |
- minimal-versions | |
- miri | |
- semver | |
steps: | |
- run: exit 0 | |
style: | |
name: Check Style | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: rustfmt | |
- run: cargo fmt --all --check | |
test: | |
name: Test ${{ matrix.rust }} | |
#needs: [style] | |
strategy: | |
matrix: | |
rust: | |
- stable | |
- beta | |
- nightly | |
include: | |
- rust: nightly | |
benches: true | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust (${{ matrix.rust }}) | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.rust }} | |
- name: Test | |
run: cargo test | |
- name: Test all benches | |
if: matrix.benches | |
run: cargo test --benches ${{ matrix.features }} | |
msrv: | |
name: Check MSRV | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Get MSRV from package metadata | |
id: metadata | |
run: | | |
cargo metadata --no-deps --format-version 1 | | |
jq -r '"msrv=" + (.packages[] | select(.name == "http")).rust_version' >> $GITHUB_OUTPUT | |
- name: Install Rust (${{ steps.metadata.outputs.msrv }}) | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ steps.metadata.outputs.msrv }} | |
- name: Test | |
run: cargo check -p http | |
wasm: | |
name: WASM | |
#needs: [style] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
targets: wasm32-unknown-unknown | |
- name: Check | |
run: cargo check --target wasm32-unknown-unknown | |
minimal-versions: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: taiki-e/install-action@cargo-hack | |
- uses: taiki-e/install-action@cargo-minimal-versions | |
- run: cargo minimal-versions check | |
miri: | |
name: Miri | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: miri | |
- name: Test | |
run: MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-ignore-leaks" cargo miri test | |
semver: | |
name: semver | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Check semver | |
uses: obi1kenobi/cargo-semver-checks-action@v2 | |
with: | |
release-type: minor |