# See https://pre-commit.com for more informatio
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
  rev: v4.6.0
  hooks:
  - id: trailing-whitespace
  - id: end-of-file-fixer
  - id: check-yaml
    exclude: ^conda/
  - id: check-added-large-files

- repo: https://github.com/pycqa/flake8
  rev: 7.1.0
  hooks:
  - id: flake8
    args:
    - "--max-line-length=88"
    - "--ignore=E203,W503"

- repo: https://github.com/psf/black
  rev: 24.4.2
  hooks:
  - id: black
    args:
    - --line-length=88

- repo: https://github.com/pycqa/pydocstyle
  rev: 6.3.0
  hooks:
  - id: pydocstyle

- repo: https://github.com/pycqa/isort
  rev: 5.13.2
  hooks:
    - id: isort
      name: isort (python)

- repo: https://github.com/Takishima/cmake-pre-commit-hooks
  rev: v1.9.6
  hooks:
    - id: clang-format
      args:
        - '-B_build-pre-commit'
        - '-DWITH_Fortran=ON'
        - '-DWITH_TESTS=ON'
        - '-i'
      stages: [manual]
    - id: clang-tidy
      args:
        - '-B_build-pre-commit'
        - '-DWITH_Fortran=ON'
        - '-DWITH_TESTS=ON'
        # - '--'
        # - '-I/Users/togo/.miniforge/envs/dev/include'
        # - '-I/Users/togo/.miniforge/envs/dev/include/python3.10'
        # - '-I/Users/togo/.miniforge/envs/dev/lib/python3.10/site-packages/numpy/core/include'
      stages: [manual]

- repo: https://github.com/cheshirekow/cmake-format-precommit
  rev: v0.6.13
  hooks:
  - id: cmake-format
  - id: cmake-lint
