Skip to content

use stable rust

use stable rust #126

Workflow file for this run

---
name: Rust
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
CARGO_TERM_COLOR: always
jobs:
lint:
name: ${{matrix.command}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- {command: fmt, rust: nightly}
- {command: clippy, rust: nightly}
- {command: doc, rust: nightly}
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust (${{matrix.rust}})
uses: dtolnay/rust-toolchain@stable
with:
toolchain: '${{matrix.rust}}'
components: 'rustfmt, clippy'
- name: Run cargo ${{matrix.command}}
uses: actions-rs/cargo@v1
with:
command: ${{matrix.command}}
args: "${{matrix.command == 'fmt' && '--all -- --check' || matrix.command == 'doc' && '--workspace' || '--workspace -- -D warnings'}}"
test:
name: Test
runs-on: ${{matrix.platform}}
strategy:
fail-fast: false
matrix:
include:
- {platform: ubuntu-latest, rust: nightly}
- {platform: ubuntu-latest, rust: stable}
- {platform: windows-latest, rust: nightly}
- {platform: macos-latest, rust: nightly}
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust (${{matrix.rust}})
uses: dtolnay/rust-toolchain@stable
with:
toolchain: '${{matrix.rust}}'
- name: Build and test all crates
run: cargo test -vv --workspace "${{matrix.rust == 'nightly' && '--features' && 'unstable' }}"
- name: Build and test all docs
run: cargo test -vv --workspace --doc "${{matrix.rust == 'nightly' && '--features' unstable'}}"

Check failure on line 62 in .github/workflows/rust.yml

View workflow run for this annotation

GitHub Actions / Rust

Invalid workflow file

The workflow is not valid. .github/workflows/rust.yml (Line: 62, Col: 14): The expression is not closed. An unescaped ${{ sequence was found, but the closing }} sequence was not found. .github/workflows/rust.yml (Line: 64, Col: 14): Unexpected symbol: ''unstable''. Located at position 42 within expression: matrix.rust == 'nightly' && '--features' 'unstable'
- name: Build examples
run: cargo b --examples --verbose "${{matrix.rust == 'nightly' && '--features' 'unstable'}}"
bench:
name: Benchmark
runs-on: ubuntu-${{matrix.ubuntu}}
strategy:
fail-fast: false
matrix:
include:
- {ubuntu: 20.04, rust: nightly}
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust (${{matrix.rust}})
uses: dtolnay/rust-toolchain@stable
with:
toolchain: '${{matrix.rust}}'
- name: Build and bench
run: cargo bench -vv --workspace --features unstable
audit:
name: Audit
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly
- name: Install cargo audit
run: cargo install cargo-audit
- name: Run cargo audit
run: cargo audit
codecov:
name: Code coverage
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly
- name: Install tarpaulin
run: cargo install cargo-tarpaulin
- name: Run code coverage
run: cargo tarpaulin --verbose --out xml --ignore-tests
- name: Upload code coverage
run: bash <(curl -s https://codecov.io/bash)
addr_san:
name: Address sanitizer
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly
- name: Run test with sanitizer
env:
RUSTFLAGS: "-Z sanitizer=address"
RUSTDOCFLAGS: "-Z sanitizer=address"
run: cargo test --target x86_64-unknown-linux-gnu --workspace