---

repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks.git
    rev: v3.4.0
    hooks:
      - id: check-added-large-files
      - id: check-byte-order-marker
      - id: check-case-conflict
      - id: check-executables-have-shebangs
      - id: check-merge-conflict
      - id: check-symlinks
      - id: check-yaml
        args: [--allow-multiple-documents, --unsafe]
      - id: detect-private-key
      - id: end-of-file-fixer
      - id: forbid-new-submodules
      - id: requirements-txt-fixer
        args:
          - doc/requirements.txt
          - extra-requirements.txt
          - infrared_plugin/requirements.txt
          - linters-requirements.txt
          - requirements.txt
          - test-requirements.txt
          - upper-constraints.txt
      - id: trailing-whitespace

  - repo: https://github.com/pycqa/flake8.git
    rev: '6.1.0'  # pick a git hash / tag to point to
    hooks:
      - id: flake8
        additional_dependencies: [flake8-import-order]
        files: ^tobiko/

  - repo: https://github.com/pre-commit/mirrors-mypy.git
    rev: 'v0.981'
    hooks:
      - id: mypy
        files: ^tobiko/
        additional_dependencies:
          - types-setuptools==80.3.0.20250505
          - types-paramiko==3.5.0.20250801
        entry: mypy --install-types --non-interactive tobiko/
        pass_filenames: false
        # args: [--ignore-missing-imports]

  - repo: local
    hooks:
      - id: pylint
        name: pylint
        entry: .tox/pep8/bin/pylint
        files: ^tobiko/
        language: system
        types: [python]

#  - repo: https://github.com/adrienverge/yamllint.git
#    rev: v1.23.0
#    hooks:
#      - id: yamllint
#        files: \.(yaml|yml)$

#  - repo: https://opendev.org/openstack/bashate.git
#    rev: 2.0.0
#    hooks:
#      - id: bashate
