Release Notes
Released on 2026-11-05.
Preview features
- [
flake8-logging-format] Avoid behavior changes and syntax errors in fixes (G004) (#27419) - [
security] Implementtarfile-ignore-zeros-true(#28680)
Bug fixes
- Accept a bare raise before a semicolon (#29761)
- Allow match identifiers after a semicolon (#29760)
- Fix panic on BOM-prefixed files in diagnostic renderer (#30017)
- [
flake8-simplify] Report collapsibleelifclauses after a multi-statementifbranch (SIM102) (#29814)
Rule changes
- Show more nonprinting characters in diagnostic fix diffs (#30062)
Performance
- Coalesce source slices when formatting attributes (#29841)
- Collect return statements with a statement-only visitor (#29911)
- [
pyflakes] Defer value comparisons for repeated dictionary keys (F601,F602) (#29739) - Format node fields directly when comment handling is unnecessary (#29853)
- Reduce formatter source-slice overhead (#29855)
- Reuse a callee's qualified name across lint rules (#29916)
- Skip invalid string character checks when the source contains none (#29883)
- Use a Bloom filter for formatter comment lookups (#29852)
- Use a concrete buffer for ordinary writes (#29819)
CLI
- Give
NO_COLORprecedence in Ruff and ty diagnostics (#29898) - Honor
CLICOLOR=0in Ruff and ty diagnostics (#29910)
Documentation
- Correct the documented
versionandsrcdefaults forruff-action(#29880) - [
flake8-bugbear] MakeB014example error out-of-the-box (#29941) - [
flake8-no-pep420] Document preview behavior (INP001) (#29764) - [
isort] ExpandI001documentation (#29843)
Other changes
- [syntax-errors] Extend
__debug__write check to attribute targets (#27908)
Contributors
- @fixfon
- @hirehamir
- @MichaReiser
- @saberoueslati
- @mangod12
- @Sacrimento
- @AlexWaygood
- @mulaihonglixihonglixi-web
- @adarrevah
- @charliermarsh
- @shan3520
- @halcyon-past
Install ruff 0.17.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.17.4/ruff-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ruff/releases/download/0.17.4/ruff-installer.ps1 | iex"Download ruff 0.17.4
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo astral-sh/ruffYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>