default_install_hook_types: - pre-commit - commit-msg default_stages: - pre-commit exclude: glob: - "schemas/*.json" - "CHANGELOG.md" repos: - repo: meta hooks: - id: check-hooks-apply - id: check-useless-excludes - repo: builtin hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - id: check-merge-conflict # - id: check-executables-have-shebangs - repo: local hooks: - id: fmt name: fmt description: Format files with cargo fmt. entry: cargo fmt language: system types: [rust] args: ["--", "--check"] # For some reason some formatting is different depending on how you invoke? pass_filenames: false - id: clippy name: clippy description: Lint rust sources entry: cargo clippy language: system args: ["--", "-D", "warnings"] types: [file] files: (\.rs|Cargo.lock)$ pass_filenames: false - id: audit name: audit description: Audit packages entry: cargo audit args: ["--deny", "warnings"] language: system pass_filenames: false always_run: true - id: test name: test description: Rust test entry: cargo test args: ["--workspace"] language: system types: [file] files: (\.rs|Cargo.lock)$ pass_filenames: false - id: xtask name: xtask description: Rust cargo xtask entry: cargo xtask language: system pass_filenames: false always_run: true - repo: https://github.com/pre-commit/mirrors-prettier rev: v3.1.0 hooks: - id: prettier - repo: https://github.com/crate-ci/typos rev: v1.40.0 hooks: - id: typos - repo: https://github.com/sirwart/ripsecrets rev: v0.1.11 hooks: - id: ripsecrets-system - repo: https://github.com/crate-ci/committed rev: v1.1.8 hooks: - id: committed