# Install pre-commit hooks via
# pre-commit install

exclude: >
    (?x)^(
      \.vscode/settings\.json|
      tests/test_commonmark/commonmark\.json|
      .*\.xml|
      tests/.*/.*\.md
    )$

repos:

  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.3.0
    hooks:
    - id: check-json
    - id: check-yaml
    - id: end-of-file-fixer
    - id: trailing-whitespace

  - repo: https://github.com/asottile/pyupgrade
    rev: v2.38.2
    hooks:
    - id: pyupgrade
      args: [--py37-plus]

  - repo: https://github.com/PyCQA/isort
    rev: 5.10.1
    hooks:
    - id: isort

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

  - repo: https://github.com/PyCQA/flake8
    rev: 5.0.4
    hooks:
    - id: flake8
      additional_dependencies:
        - flake8-comprehensions
        - flake8-bugbear
        # - flake8-self~=0.2.2

  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v0.971
    hooks:
    - id: mypy
      args: [--config-file=pyproject.toml]
      additional_dependencies:
      - sphinx~=5.0
      - markdown-it-py>=1.0.0,<3.0.0
      - mdit-py-plugins~=0.3.1
      files: >
        (?x)^(
            myst_parser/.*py|
        )$
