repos:
  - repo: https://github.com/pre-commit/mirrors-clang-format
    rev: 6d365699efc33b1b432eab5b4ae331a19e1857de # frozen: v18.1.2
    hooks:
      - id: clang-format
        exclude: ".*third_party/.*"
  - repo: https://github.com/cheshirekow/cmake-format-precommit
    rev: e2c2116d86a80e72e7146a06e68b7c228afc6319 # frozen: v0.6.13
    hooks:
      - id: cmake-format
  - repo: local
    hooks:
      - id: debug verbose check
        name: disallow checking in DEBUG_VERBOSE=1
        description: disallow checking in DEBUG_VERBOSE=1
        entry: "^#define DEBUG_VERBOSE 1$"
        language: pygrep
        types: [c++]
  - repo: local
    hooks:
      - id: debug verbose check
        name: disallow checking in SHOW_MEMORY=1
        description: disallow checking in SHOW_MEMORY=1
        entry: "^#define SHOW_MEMORY 1$"
        language: pygrep
        types: [c++]
  - repo: https://github.com/shellcheck-py/shellcheck-py
    rev: a23f6b85d0fdd5bb9d564e2579e678033debbdff # frozen: v0.10.0.1
    hooks:
      - id: shellcheck
  - repo: https://github.com/psf/black
    rev: 552baf822992936134cbd31a38f69c8cfe7c0f05 # frozen: 24.3.0
    hooks:
      - id: black
