ci:
  autofix_prs: false

repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.0.1
    hooks:
      - id: trailing-whitespace
      - id: end-of-file-fixer
      - id: check-merge-conflict
      - id: check-case-conflict
      - id: check-json
      - id: check-toml
      - id: check-yaml
      - id: pretty-format-json
        args: [--autofix, --no-ensure-ascii, --no-sort-keys]
      - id: check-ast
      - id: debug-statements
      - id: check-docstring-first

  - repo: https://github.com/pre-commit/pygrep-hooks
    rev: v1.9.0
    hooks:
      - id: python-check-blanket-type-ignore
      - id: python-check-mock-methods

  - repo: https://github.com/pycqa/isort
    rev: 5.10.1
    hooks:
      - id: isort
        name: "isort (python)"
        types: [python]
      - id: isort
        name: "isort (pyi)"
        types: [pyi]
        args: [--lines-after-imports, "-1"]

  - repo: https://github.com/psf/black
    rev: 21.10b0
    hooks:
      - id: black

  - repo: https://github.com/pycqa/flake8
    rev: 4.0.1
    hooks:
      - id: flake8
        additional_dependencies:
          - flake8-bugbear

  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v0.910-1
    hooks:
      - id: mypy
        pass_filenames: false
        additional_dependencies:
          - types-dataclasses
          - types-requests
