Astralは2026年7月25日(現地時間)、Pythonリンティングツール「Ruff」のバージョン0.16.0をリリースした。この新バージョンでは、デフォルトで有効となるルールが従来の59から413に大幅に増加した。これにより、構文エラーや即時ランタイムエラーを含む多くの深刻な問題が、Ruffの設定なしに検出されるようになった。全体では、Ruffのルール総数は708から968に増加している。

Brent Westbrookの発表によると、Ruffはv0.1.0以降、デフォルトルールセットが変更されていなかったが、今回大幅に刷新された。これにより、多くのルールがデフォルトで有効となり、ユーザーはRuffの設定を行うことなく、自身のPythonプロジェクトに潜在する問題を発見できるようになる。

Simon Willison氏は、自身の主要なPythonプロジェクトであるDatasette、sqlite-utils、LLMに対し最新のRuffを実行した。これらのプロジェクトはPython 3.10からPython 3.14に対応する包括的なテストスイートを持つが、新しいデフォルトルールに違反する数百の軽微な問題が発見されたという。特にsqlite-utilsプロジェクトでは、uvx ruff@latest check . —fix —unsafe-fixesコマンドの実行により1618個のエラーが報告され、そのうち1538個が修正され、80個が残った。

残った問題の具体例として、datetime.datetime.now()tz引数なしで呼び出されているDTZ005、ブラインド例外except ExceptionをキャッチしているBLE001、そして不要な属性アクセスB018が挙げられている。Ruffは各問題に対し、説明と修正提案を提供している。OpenAI傘下のAstralのRuffは、この出力がコーディングエージェントによる問題修正に必要な全てを提供すると見られている。Willison氏は、Codex(GPT-5.6 Sol high)を用いてLLMとsqlite-utilsを、Claude Code(Opus 5)を用いてDatasetteをアップグレードしたことを報告している。


参考: Simon Willison’s Weblog (アーカイブ) — 2026年7月26日 07:44 (JST)

原文ハイライト

"Ruff now enables 413 rules by default, up from 59 in previous versions."

この記事をシェア
X はてブ LinkedIn