name: Rust
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
check-style:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3.5.0
- name: Check style
run: cargo fmt -- --check
build-and-test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04, windows-2022, macos-latest]
toolchain: ["1.85", stable]
features: [all, default]
include:
- features: all
feature_flags: --all-features
steps:
- uses: actions/checkout@v3.5.0
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.toolchain }}
- name: Build
run: cargo build --tests --verbose ${{ matrix.feature_flags }}
- name: Run tests
run: cargo test --verbose ${{ matrix.feature_flags }}