service_man/.pre-commit-config.yaml

59 lines
2.5 KiB
YAML
Raw Normal View History

2024-03-06 02:28:59 +03:00
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
2024-04-08 23:55:30 +03:00
rev: v4.6.0
2024-03-06 02:28:59 +03:00
hooks:
- id: trailing-whitespace # убирает лишние пробелы
- id: check-added-large-files # проверяет тяжелые файлы на изменения
- id: end-of-file-fixer # добавляет пустую строку в конце файла
- id: check-yaml # проверяет синтаксис .yaml файлов
- id: check-json # проверяет синтаксис .json файлов
- id: check-case-conflict # проверяет файлы, которые могут конфликтовать в файловых системах без учета регистра.
- id: check-merge-conflict # проверяет файлы, содержащие конфликтные строки слияния.
# Отсортировывает импорты в проекте
- repo: https://github.com/pycqa/isort
2024-04-08 23:55:30 +03:00
rev: 5.13.2
2024-03-06 02:28:59 +03:00
hooks:
- id: isort
exclude: __init__.py
args: [ --profile, black, --filter-files ]
# Обновляет синтаксис Python кода в соответствии с последними версиями
- repo: https://github.com/asottile/pyupgrade
2024-04-08 23:55:30 +03:00
rev: v3.15.2
2024-03-06 02:28:59 +03:00
hooks:
- id: pyupgrade
2024-04-23 12:08:56 +03:00
args: [ --py3-plus ]
2024-03-06 02:28:59 +03:00
# Форматирует код под PEP8
- repo: https://github.com/pre-commit/mirrors-autopep8
2024-04-08 23:55:30 +03:00
rev: v2.0.4
2024-03-06 02:28:59 +03:00
hooks:
- id: autopep8
args: [ "-i", "--in-place", "--max-line-length=120" ]
# Сканер стилистических ошибок, нарушающие договоренности PEP8
- repo: https://github.com/PyCQA/flake8
2024-04-08 23:55:30 +03:00
rev: 7.0.0
2024-03-06 02:28:59 +03:00
hooks:
- id: flake8
2024-04-08 23:55:30 +03:00
additional_dependencies: [flake8-print, pep8-naming, flake8-bugbear]
2024-03-06 02:28:59 +03:00
exclude: __init__.py
args: [ "--ignore=E501,F821", "--max-line-length=120" ]
# Форматирует код под PEP8 c помощью black
- repo: https://github.com/psf/black
2024-04-08 23:55:30 +03:00
rev: 24.3.0
2024-03-06 02:28:59 +03:00
hooks:
- id: black
2024-04-23 12:08:56 +03:00
language_version: python3
2024-03-06 02:28:59 +03:00
args: [ "--line-length=120" ]
# Проверка статических типов с помощью mypy
- repo: https://github.com/pre-commit/mirrors-mypy
2024-04-08 23:55:30 +03:00
rev: v1.9.0
2024-03-06 02:28:59 +03:00
hooks:
- id: mypy
exclude: 'migrations'
args: [--no-strict-optional, --ignore-missing-imports]