exclude: "asdf/(_extern||_jsonschema)/.*"
repos:

- repo: https://github.com/pre-commit/pre-commit-hooks
  rev: v6.0.0
  hooks:
    - id: check-added-large-files
    - id: check-ast
    - id: check-case-conflict
    - id: check-yaml
      args: ["--unsafe"]
    - id: check-toml
    - id: check-merge-conflict
    - id: check-symlinks
    - id: debug-statements
    - id: detect-private-key
    - id: end-of-file-fixer
      exclude: ".*fits"
    - id: trailing-whitespace
      exclude: ".*fits"

- repo: https://github.com/pre-commit/pygrep-hooks
  rev: v1.10.0
  hooks:
    - id: python-check-blanket-noqa
    - id: python-check-mock-methods
    - id: rst-directive-colons
    - id: rst-inline-touching-normal
    - id: text-unicode-replacement-char

- repo: https://github.com/codespell-project/codespell
  rev: v2.4.1
  hooks:
    - id: codespell
      args: ["--write-changes"]
      additional_dependencies:
        - tomli

- repo: https://github.com/ikamensh/flynt/
  rev: '1.0.6'
  hooks:
    - id: flynt
      exclude: "asdf/(extern||_jsonschema)/.*"

- repo: https://github.com/astral-sh/ruff-pre-commit
  rev: 'v0.13.0'
  hooks:
    - id: ruff
      args: ["--fix"]

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

- repo: https://github.com/asottile/blacken-docs
  rev: '1.20.0'
  hooks:
    - id: blacken-docs

- repo: https://github.com/abravalheri/validate-pyproject
  rev: "v0.24.1"
  hooks:
    - id: validate-pyproject
