repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
  rev: v4.4.0
  hooks:
  - id: end-of-file-fixer
    exclude: (.txt$|.ipynb$)
  - id: trailing-whitespace
    exclude: (.txt$|README.md$)
  - id: check-yaml
  - id: check-json
  - id: check-toml
  - id: check-xml
  - id: check-ast
  - id: check-added-large-files
    args: [--enforce-all]
  - id: name-tests-test
  - id: detect-private-key
  - id: check-case-conflict
  - id: check-symlinks
  - id: check-docstring-first
  - id: mixed-line-ending
  - id: destroyed-symlinks
  - id: debug-statements
  - id: pretty-format-json

- repo: https://github.com/astral-sh/ruff-pre-commit
  # Ruff version.
  rev: v0.0.277
  hooks:
  - id: ruff
    args: [--fix, --exit-non-zero-on-fix]

- repo: https://github.com/psf/black
  rev: 23.3.0
  hooks:
  - id: black
    args: [--config=pyproject.toml]
  - id: black-jupyter
    args: [--config=pyproject.toml]


- repo: https://github.com/macisamuele/language-formatters-pre-commit-hooks
  rev: v2.9.0
  hooks:
  - id: pretty-format-ini
    args: [--autofix]
  - id: pretty-format-yaml
    args: [--autofix]
  - id: pretty-format-toml
    args: [--autofix]
    exclude: (^poetry.lock$)


- repo: https://github.com/pre-commit/mirrors-mypy
  rev: v1.4.1
  hooks:
  - id: mypy
    additional_dependencies:
    - pandas==2.*
    - pandas-stubs==2.0.*
    - types-requests

- repo: https://github.com/frnmst/md-toc
  rev: 8.1.9
  hooks:
  - id: md-toc

- repo: https://github.com/python-poetry/poetry
  rev: 1.5.0
  hooks:
  - id: poetry-check

- repo: https://github.com/Lucas-C/pre-commit-hooks-java
  rev: 1.3.10
  hooks:
  - id: validate-html

- repo: https://github.com/python-jsonschema/check-jsonschema
  rev: 0.23.2
  hooks:
  - id: check-github-workflows
