v0.16.9
Release Notes
Released on 2026-09-24.
Preview features
- \[
ruff\] Avoid false positives for overloaded division (RUF069) (#28309)
Bug fixes
- \[
flake8-bugbear\] Avoid false positives for calls with keyword arguments (B009,B010,B043) (#28776) - \[
flake8-tidy-imports\] Allow lazy imports to be used in deferred annotations (TID255) (#28767)
Rule changes
- Update LibCST-based fixes for Python 3.15 (#28616)
- \[
flake8-pyi\] Mention stubs in the diagnostic message (PYI002) (#28542)
Documentation
- Fix horizontal overflow on the rules documentation page (#28699)
- Update rules table with category information (#28651)
- \[
flake8-annotations\] Clarify thatANN401checks return types in addition to arguments (#28334) - \[
flake8-bugbear\] Document type-checker interaction (B010) (#28509) - \[
flake8-comprehensions\] Documentmap/generator exception behavior (C417) (#27794) - \[
ruff\] Mention related isort settings (RUF022) (#28719)
Contributors
- @qinpei-dev
- @sanjayrohith
- @ntBre
- @webdevsamran
- @zaniebot
- @ewdurbin
- @MichaReiser
- @spaceone
- @IbrahimKhan12
- @devtechedge
- @GruffElixir
Install ruff 0.16.9
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.16.9/ruff-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ruff/releases/download/0.16.9/ruff-installer.ps1 | iex"
Download ruff 0.16.9
| File | Platform | Checksum | |--------|----------|----------| | ruff-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum | | ruff-x86_64-apple-darwin.tar.gz | Intel macOS | checksum | | ruff-aarch64-pc-windows-msvc.zip | ARM64 Windows | checksum | | ruff-i686-pc-windows-msvc.zip | x86 Windows | checksum | | ruff-x86_64-pc-windows-msvc.zip | x64 Windows | checksum | | ruff-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum | | ruff-i686-unknown-linux-gnu.tar.gz | x86 Linux | checksum | | ruff-powerpc64-unknown-linux-gnu.tar.gz | PPC64 Linux | checksum | | ruff-powerpc64le-unknown-linux-gnu.tar.gz | PPC64LE Linux | checksum | | ruff-riscv64gc-unknown-linux-gnu.tar.gz | RISCV Linux | checksum | | ruff-s390x-unknown-linux-gnu.tar.gz | S390x Linux | checksum | | ruff-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum | | ruff-armv7-unknown-linux-gnueabihf.tar.gz | ARMv7 Linux | checksum | | ruff-aarch64-unknown-linux-musl.tar.gz | ARM64 MUSL Linux | checksum | | ruff-i686-unknown-linux-musl.tar.gz | x86 MUSL Linux | checksum | | ruff-x86_64-unknown-linux-musl.tar.gz | x64 MUSL Linux | checksum | | ruff-arm-unknown-linux-musleabihf.tar.gz | ARMv6 MUSL Linux (Hardfloat) | checksum | | ruff-armv7-unknown-linux-musleabihf.tar.gz | ARMv7 MUSL Linux | checksum |
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/ruff
You 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>