Repolode
PyCQA

PyCQA/flake8-import-order

Плагин для flake8 и Pylama, который проверяет группировку и порядок импортов Python по выбранному стилю.

Звёзды
279
Форки
72
Открытые issues
15
Последний коммит
4 дня назад

Что это?

flake8-import-order — плагин-линтер для flake8 и Pylama, который проверяет только группировку и порядок операторов импорта в Python. Другие аспекты импортов он не проверяет. Сначала идут импорты стандартной библиотеки, затем сторонних пакетов, а после них — локальных; внутри каждой группы импорты располагаются по алфавиту, хотя точные правила зависят от выбранного стиля.

Плагин добавляет четыре предупреждения: I100 и I101 — для импортов, расположенных не в том порядке, и имён в from-import, расположенных не в том порядке; I201 и I202 — для отсутствующих или лишних пустых строк между группами импортов. В комплект входят несколько встроенных стилей: cryptography (по умолчанию), google, smarkets, appnexus, edited, pycharm и pep8, который требует группировки, но не задаёт порядок внутри групп. Проекты могут указать имена своих приложений и пакетов с помощью параметров конфигурации.

Пользовательские стили можно добавлять, наследуясь от класса Style и регистрируя их через entry points setuptools.

Ключевые возможности

  • 01Проверяет группировку и порядок импортов для flake8 и Pylama.
  • 02Предоставляет четыре кода предупреждений для проблем с порядком импортов и пустыми строками.
  • 03Включает встроенные стили, например cryptography, google, smarkets и pep8.
  • 04Позволяет проектам настраивать имена локальных приложений и пакетов.
  • 05Поддерживает пользовательские стили через наследование и entry points.

Сценарии использования

  • Поддержание единообразного оформления импортов в кодовой базе Python при проверках в CI.
  • Приведение импортов к стилевому руководству команды, например Google, или соглашениям конкретного проекта.
  • Добавление проверок порядка импортов в существующую конфигурацию линтинга flake8.

Что важно знать

  • Распространяется по лицензии LGPL-3.0 — лицензии с авторским левом, которая устанавливает условия повторного распространения.
  • Проверяются только импорты на уровне модуля; условные импорты игнорируются, за исключением находящихся под TYPE_CHECKING.
  • Порядок проверяется только для соседних импортов, поэтому некоторые импорты, расположенные не по порядку, могут остаться незамеченными.

В подборках

Темы

#python#linter#flake8#code-style#static-analysis#flake8-extensions#linter-flake8#linter-plugin#pylama

Частые вопросы

Что такое flake8-import-order?
Плагин для flake8 и Pylama, который проверяет группировку и порядок импортов Python по выбранному стилю. flake8-import-order — плагин-линтер для flake8 и Pylama, который проверяет только группировку и порядок операторов импорта в Python. Другие аспекты импортов он не проверяет. Сначала идут импорты стандартной библиотеки, затем сторонних пакетов, а после них — локальных; внутри каждой группы импорты располагаются по алфавиту, хотя точные правила зависят от выбранного стиля.
flake8-import-order можно использовать бесплатно? Какая у него лицензия?
flake8-import-order распространяется с открытым исходным кодом под лицензией LGPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
flake8-import-order всё ещё поддерживается?
Активно поддерживается. Последний коммит в flake8-import-order — 3 нояб. 2026 г..
Для чего можно использовать flake8-import-order?
Поддержание единообразного оформления импортов в кодовой базе Python при проверках в CI. Приведение импортов к стилевому руководству команды, например Google, или соглашениям конкретного проекта. Добавление проверок порядка импортов в существующую конфигурацию линтинга flake8.
Где скачать flake8-import-order?
Исходный код и инструкции по установке — на GitHub: https://github.com/PyCQA/flake8-import-order

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты