Release Notes
Released on 2026-11-12.
Preview features
- Redirect renamed rules (#30081)
- [
flake8-async] Implementpytest-raises-exception-group(ASYNC401) (#28772) - [
flake8-logging-format] MarkG004fix as unsafe (#30087) - [
pylint] Implementno-method-argument(PLE0211) (#29748) - [
refurb] Do not offer fix whenwriteis nested in an expression (FURB103) (#29789) - [
ruff] Addrenamed-rule(RUF202) (#30079) - [
ruff] Expandredirected-noqato other suppression comments (RUF101) (#30078)
Bug fixes
- Avoid crashing when Ruff logs to a closed stderr pipe (#30209)
- Fix fixes that add or remove a keyword argument with a parenthesized value (#30189)
- [
flake8-import-conventions] Avoid shadowing names when fixing import aliases (ICN001) (#30035) - [
flake8-bugbear] FixB010autofix for parenthesizedsetattrcalls (#30168) - [
flake8-pyi] FixPYI034autofix for parenthesizedselfannotations (#30173) - [
pyupgrade] FixUP031duplicating closing parentheses around the format string (#30172)
Rule changes
- [
flake8-bugbear] Ignore frozen dataclass instantiations (B008) (#29231)
Performance
- Various performance improvements (#30375, #30211, #30368, #30259, #30354, #30115, #30133, #30132, #30358, #30135, #30369, #30351, #30352, #30347, #30379, #30328, #30329, #29446)
Other changes
- Fix FreeBSD source builds with libc 0.2.190 (#30176)
Contributors
- @rajveer3x
- @tjkuson
- @hugehoo
- @hector2394
- @ansh-rohilla
- @mati-caliz
- @yxshee
- @charliermarsh
- @MichaReiser
- @GeorgiaPreda
- @G26karthik
- @ntBre
- @s-cork
Install ruff 0.17.5
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.17.5/ruff-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ruff/releases/download/0.17.5/ruff-installer.ps1 | iex"Download ruff 0.17.5
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>