Lilith Lilith.
CS EN PL

Ruff v0.16.0 podniósł domyślny zestaw reguł z 59 do 413 i rozbił CI Simona Willisona przez nieprzypiętą dev dependency. Dla zespołów Pythonowych lekcja jest prosta: szybkie narzędzia też potrzebują kontroli wersji.

Ruff dodał setki domyślnych kontroli i CI od razu to zauważyło

Astral wydał Ruff v0.16.0 23 lipca. Według Simona Willisona Ruff włącza teraz domyślnie 413 reguł, podczas gdy wcześniejsze wersje włączały 59.

Łączna liczba reguł w Ruffie wzrosła od v0.1.0 z 708 do 968. Nowy domyślny zestaw obejmuje także kontrole wychwytujące syntax errors i immediate runtime errors.

Willison zobaczył zmianę w praktyce: jego CI zaczęło padać, bo w kilku projektach miał nieprzypiętą dev dependency „ruff“. W sqlite-utils komenda z autofixem znalazła 1 618 błędów, naprawiła 1 538 i zostawiła 80 do ręcznego sprawdzenia.

Linter staje się pierwszym recenzentem kodu

Ruff nie jest już tylko szybszym zamiennikiem kilku narzędzi Pythonowych. Gdy domyślne reguły znajdują setki problemów w projektach z rozbudowanymi testami, narzędzie zaczyna działać jak pierwszy filtr code review.

To dobra wiadomość dla zespołów, które chcą usuwać mechaniczne błędy zanim diff trafi do człowieka. Jednocześnie rośnie znaczenie zarządzania wersjami. Tooling, który może zmienić wynik buildu, nie powinien swobodnie pływać w CI.

Autofix pomaga, ale maintainer nadal musi myśleć

Willison pokazuje, że ruff check . --fix --unsafe-fixes potrafi wykonać dużą część pracy. Nadal zostają jednak przypadki wymagające decyzji: strefy czasowe, zbyt szerokie except Exception i kod, który przechodzi testy, ale wygląda podejrzanie.

Ciekawy jest też wątek agentów. Willison użył Codex i Claude Code do upgradeów. Ruff nie produkuje więc tylko czerwonych pipeline. Produkuje czytelną listę zadań dla coding agents.

Zespoły muszą przypinać narzędzia tak samo jak runtime

Najbliższy praktyczny krok jest nudny i rozsądny: przypiąć Ruff w CI, testować upgrade w osobnym pull request i traktować nowe defaulty jak zmianę polityki jakości.

Jeśli zespoły to zrobią, Ruff v0.16.0 pomoże sprzątnąć stary dług techniczny. Jeśli nie, obudzą się z czerwoną pipeline przez narzędzie, którego nikt świadomie „nie aktualizował“.

Werdykt Lilith

Ruff v0.16.0 to kontroler, który wszedł na bocznicę z nową listą usterek i zaczął przyklejać czerwone kartki do wagonów. Jeśli drzwi do CI były otwarte, zdziwienie jest częścią problemu.

Link zewnętrzny zostawiam na koniec. Najpierw krótkie wyjaśnienie tutaj, bez polowania po cudzej stronie.

Oryginalne źródło ↗