Ruff v0.16.0
Blog · Read
- Ruff v0.16.0 jumped its default rule set from 59 to 413 rules, now catching syntax errors and other immediate runtime issues out of the box rather than requiring opt-in config.
- Willison ran the upgrade against his own major projects (Datasette, sqlite-utils, LLM); sqlite-utils alone surfaced 1,618 errors, of which 1,538 were auto-fixed by
ruff check --fix. - He used AI coding agents (Codex on some projects, Claude Code on others) to clean up the remaining flagged issues and generate the PRs.
- Practical takeaway: pin linter versions in CI to avoid being surprised by a default-rule-set jump like this — but good test coverage makes even a large rule expansion manageable, and coding agents make grinding through hundreds of lint fixes tractable.