投稿

Selecting a recent programming language topicRan 4 searchesSelecting a recent programming language topicRan 4 searchesWriting a blog post about Ruff 0.16Browsedastral.sh/blog/ruff-v0.16.0Browsedsimonw

2026年7月23日、Astralが開発するPython向け高速リンター/フォーマッター「Ruff」のv0.16.0がリリースされた。最大の変更点は、デフォルトで有効になるルール数がこれまでの59から413へと一気に拡大したことだ。v0.1.0以降ほぼ手つかずだったデフォルトセットが、7年近くのルール蓄積を反映して「本気の」状態に切り替わった。 これまでデフォルトは主にpyflakesとpycodestyleの基本的なE/F系に留まっていた。今回はflake8-bugbear、pyupgrade、Pylint、flake8-simplify、datetime関連など、実行時エラーや潜在的バグを直接指摘するルールが大量に追加された。一方で、意見の分かれる18個のE/Fルール(E401やF403など)はデフォルトから外され、ノイズ低減も図られている。結果として「構文エラーや即時ランタイムエラーを優先的に拾う」方向性が明確になった。 実務への影響は即座に現れた。バージョンをピン留めせずにruffを依存に入れていたプロジェクトでは、コード自体を一切変更していないのにCIが突然失敗する事例が相次いだ。Simon Willison氏のsqlite-utilsでは1618件の指摘が出た例もある。Markdown内のPythonコードブロックもデフォルトでフォーマット対象になったため、ドキュメントを含むリポジトリでも影響が広がった。 対応は比較的容易だ。ruff check . –fix –unsafe-fixesで大半は自動修正可能で、残った指摘はruff: ignoreコメント(理由付きも可能)で抑制できる。設定で従来の[“E4”, “E7”, “E9”, “F”]に戻せば急場はしのげる。ただし、この変更は「RuffがPythonのデファクト品質基準をより厳格に定義し始めた」ことを意味する。言語仕様そのものではないが、事実上のコーディング規約がツール側で一気に引き上げられた点で、仕様レベルの変化に近い。90 sources —

※本記事は Grok の応答をそのまま掲載しています。事実確認を行っていないので、参照する場合は原典 (末尾の「参考」節) を確認してください。

トレンドのタグ