Merge pull request #391 from stanislav-tkach/3-9-1-release #849
Workflow file for this run
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: [pull_request, push] | |
jobs: | |
# Code formatting. | |
fmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo fmt --all -- --check | |
# Static analyzer. | |
clippy: | |
name: Clippy | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo clippy --all-targets --all-features -- -D warnings | |
# Check links in the documentation. | |
deadlinks: | |
name: Deadlinks | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo install cargo-deadlinks | |
- run: cargo doc --no-deps -p os_info | |
- run: cargo deadlinks --no-build | |
# Check links in markdown files. | |
mlc: | |
name: MLC | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: becheran/[email protected] | |
# Spellcheck. | |
spellcheck: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: streetsidesoftware/[email protected] | |
with: | |
files: "**/*.{rs,md}" | |
# Markdown formatting. | |
markdown: | |
name: Markdown lints | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: nosborn/[email protected] | |
with: | |
files: . | |
# cargo-deny. | |
deny: | |
name: cargo-deny | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: EmbarkStudios/cargo-deny-action@v1 | |
# Tests. | |
test: | |
name: ${{ matrix.build }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
- build: Linux | |
os: ubuntu-latest | |
- build: macOS | |
os: macOS-latest | |
- build: Win32-msvc | |
os: windows-latest | |
rust: stable-i686-pc-windows-msvc | |
target: i686-pc-windows-msvc | |
- build: Win32-gnu | |
os: windows-latest | |
rust: stable-i686-pc-windows-gnu | |
target: i686-pc-windows-gnu | |
- build: Win64-msvc | |
os: windows-latest | |
rust: stable-x86_64-pc-windows-msvc | |
target: x86_64-pc-windows-msvc | |
- build: Win64-gnu | |
os: windows-latest | |
rust: stable-x86_64-pc-windows-gnu | |
target: x86_64-pc-windows-gnu | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust || 'stable' }} | |
target: ${{ matrix.target }} | |
profile: minimal | |
override: true | |
- name: Build | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --examples --all | |
- name: Test | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --all |