build #140
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: build | |
on: | |
pull_request: | |
branches: | |
- main | |
push: | |
branches: | |
- main | |
schedule: | |
- cron: "12 3 * * *" | |
jobs: | |
fmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update && rustup component add rustfmt | |
- run: cargo fmt -- --check | |
clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update && rustup default 1.72.0 && rustup component add clippy | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo clippy --all-targets -- -D warnings -D clippy::all | |
- run: cargo clippy --all-targets --features native-tls -- -D warnings -D clippy::all | |
- run: cargo clippy --all-targets --features rustls-native -- -D warnings -D clippy::all | |
- run: cargo clippy --all-targets --features rustls-webpki -- -D warnings -D clippy::all | |
- run: cargo clippy --all-targets --features flate2 -- -D warnings -D clippy::all | |
test: | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, windows-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo test | |
- run: cargo test --features native-tls | |
- run: cargo test --features rustls-native | |
- run: cargo test --features rustls-webpki | |
- run: cargo test --features flate2 | |
test_msv: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- run: rustup update && rustup toolchain install nightly && rustup default 1.70.0 | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo +nightly update -Z direct-minimal-versions | |
- run: cargo test | |
- run: cargo test --features native-tls | |
- run: cargo test --features rustls-native | |
- run: cargo test --features rustls-webpki | |
- run: cargo test --features flate2 | |
rustdoc: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update && rustup override set 1.72.0 | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo doc --all-features --no-deps | |
env: | |
RUSTDOCFLAGS: -D warnings | |
deny: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo install cargo-deny || true | |
- run: cargo deny check | |
semver_checks: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- run: rustup update | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo install cargo-semver-checks || true | |
- run: cargo semver-checks check-release | |
typos: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo install typos-cli || true | |
- run: typos |