repos:
  - repo: https://github.com/psf/black
    rev: e66be67b9b6811913470f70c28b4d50f94d05b22  # frozen: 20.8b1
    hooks:
      - id: black
        args: ["--target-version", "py36"]
        # Only .py files, until https://github.com/psf/black/issues/402 resolved
        files: \.py$
        types: []

  - repo: https://github.com/PyCQA/isort
    rev: 377d260ffa6f746693f97b46d95025afc4bd8275  # frozen: 5.4.2
    hooks:
      - id: isort

  - repo: https://github.com/asottile/yesqa
    rev: 7a009f3ee493c796827ee334f9058b110a0e0db8  # frozen: v1.2.1
    hooks:
      - id: yesqa

  - repo: https://github.com/Lucas-C/pre-commit-hooks
    rev: f30f4974a08a6b2f6a1eeaf30a4d501cf909163a  # frozen: v1.1.9
    hooks:
      - id: remove-tabs
        exclude: (Makefile$|\.bat$|\.cmake$|\.eps$|\.fits$|\.opt$)

  - repo: https://gitlab.com/pycqa/flake8
    rev: 05f6544aef321e2fee03a1277ce2eef8880fb927  # frozen: 3.8.3
    hooks:
      - id: flake8
        additional_dependencies: [flake8-2020, flake8-implicit-str-concat]

  - repo: https://github.com/pre-commit/pygrep-hooks
    rev: eae6397e4c259ed3d057511f6dd5330b92867e62  # frozen: v1.6.0
    hooks:
      - id: python-check-blanket-noqa
      - id: rst-backticks

  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: e1668fe86af3810fbca72b8653fe478e66a0afdc  # frozen: v3.2.0
    hooks:
      - id: check-merge-conflict
      - id: check-yaml
