Про ruff (4/5)
Помните я упоминал про звёздочки в выводе ruff
? После всех ошибок внизу есть ещё сноска, которая объясняет эти звёздочки:
Found 1986 errors.То есть можно запустить
[*] 1209 potentially fixable with the --fix option.
ruff check --fix
и он не просто отрепортит ошибки, он сам ещё и пофиксит большую часть из них. Ни flake8
, ни pylint
так делать не умеют. Автор ruff
очень упорот. Он не просто переписал все эти 400 правил с Python на Rust, но он ещё и научил свой линтер фиксить эти ошибки. Насколько вижу, примерно половина правил имеют эту звёздочку. Это. Просто. Офигенно.Да, в этом режиме он сам выкинет неиспользуемые импорты, сам отсортирует импорты по алфавиту. Получается, что
isort
уже можно не запускать, а это минус несколько секунд из пайплайна. Полноценно форматировать код ruff
пока не научился, но у них есть амбиция заменить собой даже black
. И я почему-то верю, что у ruff
получится. Это реально какой-то комбайн-мультитул, который всасывает в себя всё больше разных инструментов, причём попутно делая их быстрее и лучше. Автор тулзы уже и про тайп-чекинг тоже задумывается.Вы всё ещё думаете, что ваш нынешний линтер хорошо делает свою работу? А я вот уже не уверен. Я определенно пересмотрел свои ожидания от линтера.
ruff
просто задает новую планку. В хорошее влюбляешься очень быстро.
>>Click here to continue<<