default_stages: ['pre-commit'] repos: - repo: https://github.com/pycqa/autoflake rev: v2.3.1 hooks: - id: autoflake args: [ '--in-place', '--remove-all-unused-imports', '--ignore-init-module-imports' ] files: \.py$ require_serial: true fail_fast: true - repo: https://github.com/pre-commit/pre-commit-hooks rev: v5.0.0 hooks: # general hooks: - id: check-added-large-files # Prevent giant files from being committed args: ['--maxkb=5000'] - id: check-merge-conflict # Check for files that contain merge conflict strings - id: check-symlinks # Checks for symlinks which do not point to anything - id: check-yaml # Attempts to load all yaml files to verify syntax - id: destroyed-symlinks # Detects symlinks which are changed to regular files - id: detect-private-key # Checks for the existence of private keys - id: end-of-file-fixer # Makes sure files end in a newline and only a newline - id: trailing-whitespace # Trims trailing whitespace # Python specific hooks: - id: check-ast # Simply check whether files parse as valid python - id: check-docstring-first # Checks for a common error of placing code before the docstring - repo: https://github.com/pycqa/flake8 rev: 7.2.0 hooks: - id: flake8 args: [--config=.flake8] fail_fast: true - repo: https://github.com/pre-commit/mirrors-mypy rev: v1.15.0 hooks: - id: mypy args: [ '--show-traceback', '--config-file=pyproject.toml' ] fail_fast: true additional_dependencies: - pydantic - pytest - cryptography - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.11.9 hooks: - id: ruff args: ["check", "--select", "I", "--fix"] fail_fast: true - id: ruff - repo: local hooks: - id: pylint name: pylint entry: pylint language: system types: [python] fail_fast: true require_serial: true