# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
ci:
    skip: [pylint]
    autoupdate_schedule: monthly

exclude: ^(cmake/ECM|cmake/KDAB/)
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
  rev: v4.3.0
  hooks:
  - id: trailing-whitespace
  - id: end-of-file-fixer
  - id: check-added-large-files
  - id: check-case-conflict
  - id: check-yaml
    args: [--allow-multiple-documents]
  - id: check-json
- repo: https://github.com/pre-commit/mirrors-clang-format
  rev: v14.0.6
  hooks:
  - id: clang-format
    exclude: (.json)
- repo: https://github.com/PyCQA/pylint
  rev: v2.15.5
  hooks:
  - id: pylint
    exclude: ^(.cmake-format.py|conan/conanfile.py)
    additional_dependencies: ["PySide2", "PySide6"]
- repo: https://github.com/pre-commit/mirrors-autopep8
  rev: v1.7.0
  hooks:
  - id: autopep8
- repo: https://github.com/codespell-project/codespell
  rev: v2.2.2
  hooks:
  - id: codespell
- repo: https://github.com/cheshirekow/cmake-format-precommit
  rev: v0.6.13
  hooks:
  - id: cmake-lint
    exclude: (.py.cmake|Doxyfile.cmake)
  - id: cmake-format
    exclude: (.py.cmake|Doxyfile.cmake)
- repo: https://github.com/markdownlint/markdownlint
  rev: v0.12.0
  hooks:
  - id: markdownlint
    entry: mdl
    language: ruby
    files: \.(md|mdown|markdown)$
- repo: https://github.com/fsfe/reuse-tool
  rev: v1.0.0
  hooks:
  - id: reuse
