менее 1 мин на чтение

Pre-commit.yaml

Помнится, когда-то давно я руками собирал конфиг для pre-commit, но безврозвратно его потерял. Прикрепляю шаблон по библиотекам которого потом можно будет пройтись и обновить версиии

fail_fast: false
exclude: |
    (?x)^(
      .*\b(__pycache__)\b.*|
      .*\b(.git)\b.*|
      ^.*\b(CHANGELOG.md)\b.*$
    )$
repos:
-   repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.5.0
    hooks:
      - id: check-ast
      - id: check-case-conflict
      - id: check-json
      - id: check-toml
      - id: debug-statements
      - id: double-quote-string-fixer
      - id: pretty-format-json
        args:
          - "--autofix"
          - "--indent=4"
          - "--no-sort-keys"
      - id: trailing-whitespace
      - id: no-commit-to-branch
        args: [
          --branch, main,
          --branch, dev
        ]

-   repo: https://github.com/myint/autoflake
    rev: v2.2.1
    hooks:
    -   id: autoflake
        args: [
            --in-place,
            --remove-all-unused-imports,
            --ignore-init-module-imports,
            --remove-unused-variables,
        ]
        exclude: '(.+settings.+)|(__init__\.py)'

-   repo: https://github.com/psf/black
    rev: 23.11.0
    hooks:
    -   id: black

-   repo: https://github.com/asottile/pyupgrade
    rev: v3.15.0
    hooks:
    -   id: pyupgrade
        args: [--py310-plus]

-   repo: https://github.com/pycqa/isort
    rev: 5.12.0
    hooks:
    -   id: isort

-   repo: https://github.com/PyCQA/flake8
    rev: 6.1.0
    hooks:
    -   id: flake8
        additional_dependencies:
          - Flake8-print
          - Flake8-pyproject
        exclude: '(.+settings.+)|(__init__\.py)'
        args: [
          --ignore=W503
        ]

Метки:

Дата изменения: