↓Skip to main content
Zeitgeist — a spike by Chris Gathercole
  1. Creators/
  2. Simon Willison — Creator of Datasette; co-creator of Django/

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.