Files
qdrant/.github/workflows/rust-lint.yml
2026-03-26 09:53:54 +01:00

46 lines
1.4 KiB
YAML

name: Formatter and linter
on:
push:
branches: [ master, dev ]
pull_request:
branches: [ '**' ]
env:
CARGO_TERM_COLOR: always
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Install minimal nightly (only for fmt)
uses: dtolnay/rust-toolchain@0f1b44df7e9cbb178d781a242338dfa5e243ad7f # nightly
with:
components: rustfmt
- name: Install minimal stable
uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
with:
components: rustfmt, clippy
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install Protoc
uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
with:
key: clippy
- name: Update apt
run: sudo apt-get update
- name: Install dependencies
run: sudo apt-get install clang libunwind-dev
- name: Check code formatting
run: cargo +nightly fmt --all -- --check
- name: Check cargo clippy warnings
run: cargo clippy --workspace -- -D warnings
- name: Check cargo clippy warnings for all targets
run: cargo clippy --workspace --all-targets -- -D warnings
- name: Check cargo clippy warnings for all targets and features
run: cargo clippy --workspace --all-targets --all-features -- -D warnings