Skip to content

Apply clippy ignored_unit_patterns recommendation (#249) #340

Apply clippy ignored_unit_patterns recommendation (#249)

Apply clippy ignored_unit_patterns recommendation (#249) #340

Workflow file for this run

name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
env:
CARGO_TERM_COLOR: always
jobs:
build_and_test:
strategy:
matrix:
include:
# Linux
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- os: ubuntu-latest
target: x86_64-unknown-linux-musl
- os: ubuntu-latest
target: i686-unknown-linux-gnu
# MacOS
- os: macos-latest
target: x86_64-apple-darwin
# Windows
- os: windows-latest
target: x86_64-pc-windows-gnu
- os: windows-latest
target: x86_64-pc-windows-msvc
- os: windows-latest
target: i686-pc-windows-msvc
# MSRV (Linux)
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
toolchain: 1.64.0
# MSRV (MacOS)
- os: macos-latest
target: x86_64-apple-darwin
toolchain: 1.64.0
# MSRV (Windows)
- os: windows-latest
target: x86_64-pc-windows-gnu
toolchain: 1.64.0
# Nightly (Linux)
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
toolchain: nightly
coverage: true
# Nightly (MacOS)
- os: macos-latest
target: x86_64-apple-darwin
toolchain: nightly
coverage: true
# Nightly (Windows)
- os: windows-latest
target: x86_64-pc-windows-gnu
toolchain: nightly
runs-on: ${{ matrix.os }}
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v2
- name: Install gcc-multilib
if: matrix.target == 'i686-unknown-linux-gnu'
run: |
sudo apt-get update
sudo apt-get install gcc-multilib
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain || 'stable' }}
target: ${{ matrix.target }}
override: true
- name: Build
uses: actions-rs/cargo@v1
with:
command: build
- name: Run tests without coverage instrumentation
if: ${{ ! matrix.coverage }}
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose --all-features --no-fail-fast
- name: Run tests with coverage instrumentation
if: matrix.coverage
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose --all-features --no-fail-fast
env:
CARGO_INCREMENTAL: '0'
RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests'
- name: Collect code coverage results
if: matrix.coverage
uses: actions-rs/[email protected]
id: coverage
- name: Upload code coverage results
if: matrix.coverage
uses: codecov/codecov-action@v2
with:
files: ${{ steps.coverage.outputs.report }}
flags: ${{ matrix.target }}
fail_ci_if_error: false
verbose: true
wasi:
name: wasi
runs-on: ubuntu-latest
strategy:
matrix:
toolchain:
- stable
- 1.64.0 # MSRV
- nightly
env:
CARGO_TERM_COLOR: always
steps:
- uses: actions/checkout@v2
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
target: wasm32-wasi
override: true
- name: Install WASI
run: cargo install cargo-wasi
- name: Run build on wasm32-wasi
run: cargo wasi build
static_checks:
strategy:
matrix:
include:
# Unix
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
# MacOS
- os: macos-latest
target: x86_64-apple-darwin
# Windows
- os: windows-latest
target: x86_64-pc-windows-gnu
# WASI
- os: ubuntu-latest
target: wasm32-wasi
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Install nightly with clippy and rustfmt
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
components: rustfmt, clippy
target: ${{ matrix.target }}
override: true
- name: Run rustfmt check
uses: actions-rs/cargo@v1
with:
command: fmt
args: --check
- name: Run Clippy
uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-features --target ${{ matrix.target }} -- -D warnings -D clippy::pedantic
name: clippy-${{ matrix.target }}