blob: 050e70d72eb8bce179d7c1c50761b43a02c6382a [file] [log] [blame]
name: Rust
on:
push: {}
pull_request: {}
jobs:
build_test:
runs-on: ubuntu-latest
strategy:
matrix:
rust:
- 1.34.0
- 1.36.0
- stable
- beta
- nightly
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: ${{ matrix.rust }}
default: true
- name: Build the crate on minimal version.
uses: actions-rs/cargo@v1
with:
command: build
- name: Build the crate on 1.36 with features.
if: matrix.rust != '1.34.0'
uses: actions-rs/cargo@v1
with:
command: build
# Using `extern crate alloc` is only possible after 1.36
args: --features=alloc,std,grab_spare_slice
- name: Test on Stable/Beta
if: matrix.rust != '1.34.0' && matrix.rust != '1.36.0'
uses: actions-rs/cargo@v1
with:
command: test
args: --features=alloc --features=grab_spare_slice --features=rustc_1_40
- name: Test on Nightly with All Features
if: matrix.rust == 'nightly'
uses: actions-rs/cargo@v1
with:
command: test
args: --all-features