on:
pull_request:
branches: [master]
push:
branches: [master]
env:
SCCACHE_GHA_ENABLED: true
RUSTC_WRAPPER: sccache
name: test
jobs:
test:
name: test
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
rust-version: [1.63.0, stable]
steps:
- uses: actions/checkout@v3
- id: toolchain
name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust-version }}
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.3
- name: Test (sync)
run: cargo test
- name: Test (async)
run: cargo test --features async
- name: Test (async-tokio)
run: cargo test --features async-tokio
build:
name: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
rust-version: [1.63.0, stable]
steps:
- uses: actions/checkout@v3
- id: toolchain
name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust-version }}
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.3
- name: Build (sync)
run: cargo build --release
- name: Build (async)
run: cargo build --release --features async
- name: Build (async-tokio)
run: cargo build --release --features async-tokio
msrv:
name: msrv
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- uses: actions/checkout@v3
- id: toolchain
name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.3
- name: Install cargo-msrv
run: |
curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
cargo binstall --no-confirm cargo-msrv
- name: Verify MSRV
run: cargo msrv verify