| repos: | |
| - repo: https://github.com/pre-commit/pre-commit-hooks | |
| rev: v6.0.0 | |
| hooks: | |
| - id: check-yaml # Check YAML files for syntax errors only | |
| args: [--unsafe, --allow-multiple-documents] | |
| - id: debug-statements # Check for debugger imports and py37+ breakpoint() | |
| - id: end-of-file-fixer # Ensure files end in a newline | |
| - id: trailing-whitespace # Trailing whitespace checker | |
| - id: check-merge-conflict # Check for files that contain merge conflict | |
| - repo: https://github.com/pre-commit/pygrep-hooks | |
| rev: v1.10.0 # Use the ref you want to point at | |
| hooks: | |
| - id: python-use-type-annotations # Check for missing type annotations | |
| - id: python-check-blanket-noqa # Check for # noqa: all | |
| - id: python-no-log-warn # Check for log.warn | |
| - repo: https://github.com/psf/black-pre-commit-mirror | |
| rev: 26.1.0 | |
| hooks: | |
| - id: black | |
| args: [--line-length=120] | |
| - repo: https://github.com/pycqa/isort | |
| rev: 8.0.1 | |
| hooks: | |
| - id: isort | |
| args: | |
| - -l 120 | |
| - --force-single-line-imports | |
| - --profile black | |
| - --project anemoi | |
| - repo: https://github.com/astral-sh/ruff-pre-commit | |
| rev: v0.15.4 | |
| hooks: | |
| - id: ruff | |
| args: | |
| - --line-length=120 | |
| - --fix | |
| - --exit-non-zero-on-fix | |
| - --exclude=docs/**/*_.py | |
| - repo: https://github.com/sphinx-contrib/sphinx-lint | |
| rev: v1.0.2 | |
| hooks: | |
| - id: sphinx-lint | |
| - repo: https://github.com/tox-dev/pyproject-fmt | |
| rev: "v2.16.2" | |
| hooks: | |
| - id: pyproject-fmt | |
| args: ["--max-supported-python", "3.12"] | |