default_language_version:
  python: "3.13"

exclude: (^micropip/_vendored|^tests/vendored|^tests/test_data)
repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: "v5.0.0"
    hooks:
      - id: check-added-large-files
      - id: check-case-conflict
      - id: check-merge-conflict
      - id: check-symlinks
      - id: check-yaml
        exclude: .clang-format
      - id: debug-statements
      - id: end-of-file-fixer
      - id: mixed-line-ending
      - id: trailing-whitespace

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

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

  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: "v1.15.0"
    hooks:
      - id: mypy
        args: []
        additional_dependencies: &mypy-deps
          - pytest

  - repo: https://github.com/codespell-project/codespell
    rev: "v2.4.1"
    hooks:
      - id: codespell
        args: ["-L", "te,slowy,aray,ba,nd,classs,crate,feld,lits"]

ci:
  autoupdate_schedule: "quarterly"
