Python — это незрелый dev-тулинг
Захотел написать кастомные линтер-правила
В JavaScript это один инструмент. В Python — это франкенштейн.
ESLint (JS):
Проверка + автофикс + плагин = один файл
Python:
🟣Ruff — быстрый, но плагинов нет
🟣Flake8 — плагины есть, автофикс нет
🟣Pylint — плагины есть, автофикс нет
🟣Автофикс — отдельно (autopep8, LibCST)
Итого: чтобы получить аналог одного ESLint-плагина, собираешь франкенштейна из трёх плюс библиотек.
2026 год на дворе
Или я что-то упускаю?
_____________
На этом пост должен был закончится!
И изначально это был наброс на эмоциях. Проанализировав, поспрашивал коллег/ребят из сообщества — оказалось, упускаю.
Есть Fixit от Meta. Тот же принцип что в ESLint: правило + автофикс = один файл. Построен на LibCST.
Но: в Fixit нет PEP8 и стандартных проверок.
Только для своих правил
Итоговый стек:
🟣Ruff — PEP8 + 800 готовых правил
🟣Fixit — кастомные правила с автофиксом
Post #297
1.14K

- 👍 8
- 😁 5
- 🔥 3