repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: check-added-large-files
args: ["--maxkb=10240"]
- id: check-case-conflict
- id: check-merge-conflict
- id: check-illegal-windows-names
- id: check-json
types: [json]
- id: check-toml
types: [toml]
- id: check-yaml
types: [yaml]
args: [--allow-multiple-documents]
- id: check-xml
types: [xml]
- id: mixed-line-ending
args: [--fix=auto]
- id: check-vcs-permalinks
- repo: https://github.com/FeryET/pre-commit-rust
rev: v1.2.1
hooks:
- id: fmt
types: [rust]
- id: clippy
args: ["--", "-D", "warnings"]
types: [rust, cargo]
- id: cargo-check
types: [rust, cargo, cargo-lock]
- repo: https://github.com/rhysd/actionlint
rev: v1.7.11
hooks:
- id: actionlint
files: ".github/workflows/"
exclude: ^.github/workflows/release.yml$
types: [yaml]
- repo: local
hooks:
- id: shellcheck
name: ShellCheck
entry: mise x -- shellcheck
language: system
types: [shell]
- repo: https://github.com/bnjbvr/cargo-machete
rev: v0.9.1
hooks:
- id: cargo-machete
- repo: https://github.com/hukkin/mdformat
rev: 1.0.0
hooks:
- id: mdformat
additional_dependencies:
- mdformat-gfm
- mdformat-config
- mdformat-footnote
- mdformat-front-matters
- mdformat-simple-breaks
- mdformat-web
- mdformat-wikilink
- mdformat-gfm-alerts
- mdformat-toc
types: [markdown]
exclude: ^\.claude/
- repo: local
hooks:
- id: cargo-audit
name: cargo-audit
entry: mise x -- cargo audit
language: system
pass_filenames: false
types: [cargo, cargo-lock]
- repo: https://github.com/DevinR528/cargo-sort
rev: v2.1.0
hooks:
- id: cargo-sort
types: [cargo]