2024-08-15 · Astral

Ruff v0.6.0

tooling

read at source ↗ astral.sh

Ruff v0.6.0

Source: Astral Date: 2024-08-15 URL: https://astral.sh/blog/ruff-v0.6.0

Summary

Ruff v0.6.0 makes .ipynb files linted and formatted by default when scanning directories — no config required. isort now searches src/ for first-party packages by default. PT001/PT023 invert their default: remove parentheses from pytest decorators (aligning with official pytest style). Nine pylint-derived rules promoted from preview; async antipattern rules (ASYNC100-116) expand to cover asyncio and anyio alongside trio.

Implications

Notebook-by-default and asyncio-coverage are the two audience expansions. Making .ipynb opt-out rather than opt-in removes the last configuration barrier for data science teams — the cohort that was most likely to run Ruff on src/ but skip notebooks/. The asyncio/anyio async rules extending from trio-only is more significant than it looks: trio has a small but influential user base, asyncio is the stdlib standard. Covering asyncio antipatterns means Ruff’s async rules are now relevant to virtually all Python async code, not just a niche subset.

← all signals