fix compilation for Rust >= 1.79 #8031
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: Linting | |
on: | |
push: | |
branches: [develop, staging] | |
paths: | |
- ".cargo/config.toml" | |
- ".github/workflows/lint.yml" | |
- ".github/actions/**" | |
- "**.rs" # Include all rust files | |
- "**Cargo.toml" # Include all Cargo.toml files | |
- "**Cargo.lock" # Include all Cargo.lock files | |
- "!**/bindings/**" # Exclude all bindings | |
pull_request: | |
branches: [develop, staging] | |
paths: | |
- ".cargo/config.toml" | |
- ".github/workflows/lint.yml" | |
- ".github/actions/**" | |
- "**.rs" # Include all rust files | |
- "**Cargo.toml" # Include all Cargo.toml files | |
- "**Cargo.lock" # Include all Cargo.lock files | |
- "!**/bindings/**" # Exclude all bindings | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
CARGO_INCREMENTAL: 0 | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
toolchain: beta | |
components: clippy | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install Required Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install libudev-dev libusb-1.0-0-dev | |
# A first run without features to detect feature related issues. | |
- name: Run Clippy | |
uses: actions-rs/clippy-check@v1 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
args: --all-targets -- --deny warnings | |
name: Clippy Results for the Rust Core | |
# The second run will continue from where the first left off. | |
- name: Run Clippy | |
uses: actions-rs/clippy-check@v1 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
args: --all-features --all-targets -- --deny warnings | |
name: Clippy Results for the Rust Core | |
check-unused-deps: | |
name: Check Unused Dependencies | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
toolchain: nightly | |
install: cargo-udeps | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install Required Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install libudev-dev libusb-1.0-0-dev | |
- name: Run Cargo Udeps | |
run: cargo ci-udeps | |
check-format: | |
name: Check Format | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
toolchain: nightly | |
components: rustfmt | |
- name: Install cargo-license-template | |
run: cargo install --force cargo-license-template | |
- name: Run Cargo Fmt | |
run: cargo ci-fmt | |
- name: Run cargo-license-template | |
run: cargo ci-license | |
check-docs: | |
name: Check Documentation | |
runs-on: ubuntu-latest | |
env: | |
RUSTDOCFLAGS: -D warnings | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
toolchain: nightly | |
components: rustfmt | |
- name: Install Required Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install libudev-dev libusb-1.0-0-dev | |
- name: Run cargo-doc | |
run: cargo ci-doc | |
audit: | |
name: Perform Security Audit | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
toolchain: nightly | |
install: cargo-audit | |
- name: Run Cargo Audit | |
run: cargo ci-audit | |
no_std: | |
name: Check `no_std` compatability | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
with: | |
targets: riscv64gc-unknown-none-elf | |
- name: Check | |
run: cargo ci-check-nostd | |
types: | |
name: Check types-only compilation | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Source Code | |
uses: actions/checkout@v3 | |
- name: Set up Rust | |
uses: ./.github/actions/setup-rust | |
- name: Check | |
run: cargo ci-check-types |