Плагин для flake8 запускает black в режиме проверки и сообщает о различиях форматирования как о нарушениях BLK.
openstack/hacking
Набор плагинов для flake8, которые проверяют соответствие Python-кода руководству по стилю OpenStack.
- Звёзды
- 243
- Форки
- 67
- Открытые issues
- 0
- Последний коммит
- 2 месяца назад
Что это?
Hacking — это набор плагинов для flake8, которые обеспечивают соблюдение руководства OpenStack по стилю Python. Они автоматизируют проверки, которые иначе пришлось бы выполнять вручную при ревью кода: например, проверку порядка импортов, правил для docstring и потенциально рискованных шаблонов, таких как затенение встроенных имён.
Проверки имеют имена с префиксом H и устанавливаются из PyPI вместе с зависимостями: плагинами flake8, pep8, mccabe и pyflakes. Версии зависимостей зафиксированы, поэтому новый релиз вышестоящего проекта не добавит незаметно правила, из-за которых перестанут проходить существующие проверки. Версионирование следует схеме major.minor.maintenance: в релизах maintenance не добавляются новые проверки, поэтому проекты могут безопасно зафиксировать minor-версию.
Некоторые проверки, например требования к стилю assert и импорту eventlet, по умолчанию отключены. Их можно включить в секции flake8 файла tox.ini. Проекты также могут объявлять локальные проверки в tox.ini и реализовывать их с помощью декоратора-расширения flake8.
Ключевые возможности
- 01Обеспечивает соблюдение руководства OpenStack по стилю Python с помощью плагинов flake8.
- 02Устанавливается из PyPI с зафиксированными зависимостями, чтобы проверки в CI оставались стабильными.
- 03В релизах maintenance не появляются новые проверки, поэтому фиксация minor-версии безопасна.
- 04Некоторые проверки по умолчанию отключены; их можно включить в tox.ini.
- 05Поддерживает локальные проверки для конкретного проекта, зарегистрированные в tox.ini.
Сценарии использования
- Автоматически выявлять придирки к стилю при проверке кода в проектах OpenStack.
- Обеспечивать единый стиль Python в крупной кодовой базе, над которой работают многие авторы.
- Добавлять специфичные для проекта правила линтинга к стандартным проверкам OpenStack.
Быстрый старт
- 1
Установите hacking из PyPI
pip install hacking
Что важно знать
- Hacking фиксирует версии зависимостей, поэтому он может конфликтовать с более новыми версиями flake8 или плагинов в вашем окружении.
- Многие проверки предназначены только для OpenStack и по умолчанию отключены для других проектов.
В подборках
Темы
Частые вопросы
- Что такое hacking?
- Набор плагинов для flake8, которые проверяют соответствие Python-кода руководству по стилю OpenStack. Hacking — это набор плагинов для flake8, которые обеспечивают соблюдение руководства OpenStack по стилю Python. Они автоматизируют проверки, которые иначе пришлось бы выполнять вручную при ревью кода: например, проверку порядка импортов, правил для docstring и потенциально рискованных шаблонов, таких как затенение встроенных имён.
- hacking можно использовать бесплатно? Какая у него лицензия?
- hacking распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- hacking всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в hacking — 14 сент. 2026 г..
- Для чего можно использовать hacking?
- Автоматически выявлять придирки к стилю при проверке кода в проектах OpenStack. Обеспечивать единый стиль Python в крупной кодовой базе, над которой работают многие авторы. Добавлять специфичные для проекта правила линтинга к стандартным проверкам OpenStack.
- Как установить hacking?
- Установите hacking из PyPI: pip install hacking
- Где скачать hacking?
- Исходный код и инструкции по установке — на GitHub: https://github.com/openstack/hacking
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Линтер Python, объединяющий PyFlakes, pycodestyle и McCabe в одной команде и поддерживающий сторонние плагины.
Консольная утилита и плагин для flake8, которые проверяют единообразие настроек в нескольких проектах и автоматически исправляют конфиги.
Плагин для flake8 и Pylama, который проверяет группировку и порядок импортов Python по выбранному стилю.
Инструмент командной строки для Python, который автоматически форматирует docstring по соглашениям PEP 257.
Плагин добавляет более 300 дополнительных правил ESLint для JavaScript и TypeScript, а также правила для CSS, HTML, JSON, Markdown, SOML, TOML и YAML.