default_language_version: python: python3 ci: autofix_prs: true autoupdate_schedule: weekly autofix_commit_msg: "fix(pre_commit): 🎨 auto format pre-commit hooks" autoupdate_commit_msg: "chore(pre_commit): ⬆ pre_commit autoupdate" repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - id: trailing-whitespace - id: check-yaml args: ["--unsafe"] - id: check-executables-have-shebangs - id: check-json - id: check-toml - id: check-case-conflict - id: check-added-large-files args: ["--maxkb=500", "--enforce-all"] exclude: uv.lock|.*\.ipynb$ - id: detect-private-key - id: pretty-format-json exclude: demo.ipynb args: ["--autofix", "--no-sort-keys", "--indent=4"] - id: end-of-file-fixer - id: mixed-line-ending - repo: https://github.com/JoC0de/pre-commit-prettier rev: fc2da0552b28c24c836d045bfb6c3057b3d11e62 # v3.9.4 hooks: - id: prettier files: \.(ya?ml|toml)$ # https://prettier.io/docs/en/options.html#print-width args: ["--print-width=120"] - repo: https://github.com/tox-dev/pyproject-fmt rev: v2.25.1 hooks: - id: pyproject-fmt additional_dependencies: - "tomli>=2.0.1" - repo: https://github.com/abravalheri/validate-pyproject rev: v0.25 hooks: - id: validate-pyproject - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.15.20 hooks: - id: ruff-check args: ["--fix"] - id: ruff-format types_or: [python, pyi, jupyter] - repo: https://github.com/executablebooks/mdformat rev: 1.0.0 hooks: - id: mdformat additional_dependencies: - "mdformat-mkdocs[recommended]>=2.1.0" - "mdformat-ruff" args: ["--number", "--wrap=no"] exclude: ^(docs/changelog\.md|docs/deprecated\.md)$ - repo: https://github.com/pre-commit/mirrors-mypy rev: v2.1.0 hooks: - id: mypy language_version: python3.11 additional_dependencies: - "numpy>=2.0" - "types-PyYAML" - "types-requests" - "types-tqdm" - repo: https://github.com/codespell-project/codespell rev: v2.4.2 hooks: - id: codespell additional_dependencies: - "tomli>=2.0.1"