# SPDX-FileCopyrightText: Copyright © 2023 Idiap Research Institute <contact@idiap.ch>
#
# SPDX-License-Identifier: GPL-3.0-or-later

# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.4.3
    hooks:
      - id: ruff
        args: [ --fix ]
      - id: ruff-format
  - repo: https://github.com/numpy/numpydoc
    rev: v1.7.0
    hooks:
      - id: numpydoc-validation
  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v1.10.0
    hooks:
    - id: mypy
      args: [ --install-types, --non-interactive, --no-strict-optional, --ignore-missing-imports ]
  - repo: https://github.com/AleksaC/hadolint-py
    rev: v2.12.1b3
    hooks:
      - id: hadolint
        args: [--ignore, DL3007, --ignore, DL3008]
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.6.0
    hooks:
      - id: check-ast
      - id: check-added-large-files
        exclude: |
          (?x)(
              ^src/mednet/libs/classification/config/data/padchest/idiap.json.bz2|
              ^src/mednet/libs/classification/config/data/padchest/no-tb-idiap.json.bz2|
              ^src/mednet/libs/segmentation/config/data/cxr8/default.json.bz2
              )
      - id: check-toml
      - id: check-json
      - id: check-yaml
        exclude: |
          (?x)(
              ^.gitlab-ci.yml
              )
      - id: debug-statements
      - id: check-case-conflict
      - id: trailing-whitespace
      - id: end-of-file-fixer
      - id: debug-statements
  - repo: https://github.com/fsfe/reuse-tool
    rev: v3.0.2
    hooks:
      - id: reuse
        exclude: |
          (?x)(
              ^.pixi/|
              ^.pixi.lock|
              )
