Ruff v0.16.0:https://astral.sh/blog/ruff-v0.16.0 . Astral shipped a significant new version of their Ruff Python linting tool a few days ago on July 23rd. I noticed today because my various CI jobs all started failing thanks to new default Ruff checks and my unpinned "ruff" dev dependency.
From Brent Westbrook's announcement post:
Ruff now enables 413 rules by default, up from 59 in previous versions.
Since Ruff's default rule set was last modified in v0.1.0:https://github.com/astral-sh/ruff/blob/main/changelogs/0.1.x.md#breaking-changes, the number of rules in Ruff has grown from 708 to 968. Many of these rules catch severe issues, including syntax errors:https://docs.astral.sh/ruff/rules/load-before-global-declaration and immediate runtime errors:https://docs.astral.sh/ruff/rules/yield-in-init/ but were not previously enabled by default. With the new rule set, Ruff will bring these issues and many others to your attention without any Ruff configuration.
Here's a one-liner for trying it on any Python project:
I ran the latest Ruff against my three biggest projects - Datasette:https://datasette.io/, sqlite-utils:https://sqlite-utils.datasette.io/, and LLM:https://llm.datasette.io/ - and it found hundreds of minor issues that breached the new default rules.
All three projects have very comprehensive test suites, executed in CI against Python 3.10 through Python 3.14, so upgrades like this are pretty safe. The following command did the bulk of the upgrades:
Against sqlite-utils , that command reported:
As an illustrative example, here are three of the remaining issues. Ruff does a nice job of explaining each one:
Unsurprisingly, given Astral's new home at OpenAI:https://simonwillison.net/2026/Mar/19/openai-acquiring-astral/, this output provides everything a coding agent would need to fix the problems.
I had Codex (GPT-5.6 Sol high) upgrade LLM:https://github.com/simonw/llm/pull/1557 and sqlite-utils:https://github.com/simonw/sqlite-utils/pull/814, and Claude Code (with Opus 5) upgrade Datasette:https://github.com/simonw/datasette/pull/2857.
This is a link post by Simon Willison, posted on 25th July 2026:/2026/Jul/25/.
Sponsor me for $10/month and get a curated email digest of the month's most important LLM developments.
