# Apply to all files without committing: # pre-commit run --all-files # Update this file: # pre-commit autoupdate repos: # Code Upgrades - repo: https://github.com/asottile/pyupgrade rev: v3.15.2 hooks: - id: pyupgrade args: [--py310-plus] - repo: https://github.com/adamchainz/django-upgrade rev: 1.17.0 hooks: - id: django-upgrade args: [--target-version=4.2] # Formatting - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.6.0 hooks: # Identify invalid files - id: check-ast - id: check-yaml - id: check-json - id: check-toml - id: check-xml # git checks - id: check-merge-conflict - id: check-added-large-files args: [--maxkb=1000] - id: detect-private-key - id: check-case-conflict # Python checks # - id: check-docstring-first - id: debug-statements # - id: requirements-txt-fixer - id: fix-encoding-pragma args: [--remove] - id: fix-byte-order-marker # General quality checks - id: mixed-line-ending args: [--fix=lf] - id: trailing-whitespace args: [--markdown-linebreak-ext=md] exclude: | (?x)( \.min\.css| \.min\.js| \.po| \.mo| swagger\.json ) - id: check-executables-have-shebangs - id: end-of-file-fixer exclude: | (?x)( \.min\.css| \.min\.js| \.po| \.mo| swagger\.json ) - repo: https://github.com/editorconfig-checker/editorconfig-checker.python rev: 2.7.3 hooks: - id: editorconfig-checker exclude: | (?x)( LICENSE| allianceauth\/static\/allianceauth\/css\/themes\/bootstrap-locals.less| \.po| \.mo| swagger\.json ) - repo: https://github.com/igorshubovych/markdownlint-cli rev: v0.41.0 hooks: - id: markdownlint args: - --disable=MD013 # Infrastructure - repo: https://github.com/tox-dev/pyproject-fmt rev: 2.1.3 hooks: - id: pyproject-fmt name: pyproject.toml formatter description: "Format the pyproject.toml file." args: - --indent=4 additional_dependencies: - tox==4.15.0 # https://github.com/tox-dev/tox/releases/latest - repo: https://github.com/abravalheri/validate-pyproject rev: v0.18 hooks: - id: validate-pyproject name: Validate pyproject.toml description: "Validate the pyproject.toml file."