# .pre-commit-config.yaml repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v5.0.0 hooks: - id: trailing-whitespace # Remove trailing whitespace exclude: '.*test.*' files: \.(py)$ - id: end-of-file-fixer # Ensure a single newline at the end of a file exclude: '.*test.*' files: \.(py)$ - id: check-yaml # Check if the YAML files are valid exclude: '.*test.*' files: \.(yaml|yml)$ - id: check-json # Check if the JSON files are valid exclude: '.*test.*' files: \.(json)$ - id: check-added-large-files # Prevent large files from being committed args: ['--maxkb=2000'] - id: check-ast # Check for parse errors in Python files exclude: '.*test.*' files: \.(py)$ - id: debug-statements # Check for print statements and pdb calls exclude: '.*test.*' files: \.(py)$ - repo: https://github.com/PyCQA/isort rev: 5.13.2 hooks: - id: isort args: ['--profile=black'] files: \.(py)$ exclude: '.*test.*' - repo: https://github.com/PyCQA/flake8 rev: 7.1.1 hooks: - id: flake8 args: ['--extend-ignore=E501,E402,W503,E721','--max-line-length=100'] files: \.(py)$ exclude: '.*test.*'