Помните я упоминал про звёздочки в выводе
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 просто задает новую планку. В хорошее влюбляешься очень быстро.