Рубрики
Без рубрики

Обзор инструментов Python: pyproject.toml и flake8

У меня недавно у меня была возможность рассмотреть некоторые инструменты для Python, и я подумал, что поделюсь некоторыми из моих … Помечено Python, оснастку, упаковка.

У меня недавно у меня была возможность просмотреть некоторые инструменты для Python, и я подумал, что поделился некоторыми из моих учащихся.

Этот модный новый файл – замена для setup.py и setup.cfg Первоначально указан в PEP 518 ( https://www.python.org/dev/peps/pep-0518/ ).

Простое и чистое объяснение, верно? Ну, нет, не на самом деле.

С момента его выпуска, теперь это эксклюзивный способ настроить черный для проекта. Дополнительные инструменты, такие как Поэзия (несколько из Pipenv конкурент) и Flit (инструмент для создания упаковки и публикации на PYPI проще) вышли также исключительно использовать pyproject.toml как их файл конфигурации.

Из PEP ясно, что это было предполагаемое следствие для других инструментов для использования pyproject.toml Отказ Однако, похоже, только действительно коснулся новых проектов. Старые, зрелые пакеты, кажется, все еще используют setup.cfg Для их инструментальных конфигов в их процессе CI.

Я обычно склонен принимать новые тенденции, как они в моем Проекты , но в моем существующем пакеты Я признаю, что я не вижу много ценного в настоящее время в рваных setup.py и setup.cfg. просто для удовольствия.

Я использовал Pylint в течение очень длительного времени, в то время как на стоянии и начал использовать Flake8 на Peerfit. У меня действительно не было мнения о над другим.

Тем не менее, теперь я могу сказать, что святое дерьмо делает Flake8 так много вещей. Он обертывает Pyflakes, Pycodestyle и McCabe. Кроме того, только так много плагинов: flake8-bugbear, flake8 – порядок импорта flake8, etc ( https://github.com/dmytrolitvinov/awesome-flake8-extsions). Это Богатая экосистема просто не существует для пилинта.

Наконец, многие крупные проекты, похоже, используют Flake8, поэтому пользовательская база является последовательной и зрелой:

Так что это продало меня на использовании Flake8 для обозримого будущего.

Оригинал: “https://dev.to/raiderrobert/python-tooling-review-pyproject-toml-and-flake8-45bb”