Add MSRV build-and-test to CI. #184
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: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master ] | |
schedule: | |
# Every-other month, to make sure new Rust | |
# releases don't break things. | |
- cron: '15 12 5 1,3,5,7,9,11 *' | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build-and-test: | |
name: Build and test | |
strategy: | |
matrix: | |
toolchain: | |
- stable | |
- beta | |
- "1.65" | |
runs-on: ubuntu-latest | |
steps: | |
# Get a checkout and rust toolchain. | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{matrix.toolchain}} | |
override: true | |
# Build and test | |
- run: cargo +${{matrix.toolchain}} build | |
- run: cargo +${{matrix.toolchain}} test | |
- run: cargo +${{matrix.toolchain}} test --no-default-features line | |
- run: cargo +${{matrix.toolchain}} test --no-default-features --features=cr_lines line | |
- run: cargo +${{matrix.toolchain}} bench --no-run | |
run-miri: | |
name: Run Miri | |
runs-on: ubuntu-latest | |
steps: | |
# Get a checkout and rust toolchain. | |
- uses: actions/checkout@v2 | |
- uses: hecrj/setup-rust-action@v1 | |
with: | |
rust-version: nightly | |
components: miri | |
# Build and test | |
# --no-default-features to get rid of the simd feature | |
- run: cargo miri test --no-default-features | |
env: | |
MIRIFLAGS: "-Zmiri-strict-provenance" | |