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"]