Download Latest Version ruff-i686-pc-windows-msvc.zip (10.1 MB)
Email in envelope

Get an email when there's a new version of Ruff

Home / 0.15.21
Name Modified Size InfoDownloads / Week
Parent folder
source.tar.gz.sha256 2026-07-09 81 Bytes
ruff-x86_64-apple-darwin.tar.gz.sha256 2026-07-09 98 Bytes
ruff-x86_64-pc-windows-msvc.zip 2026-07-09 11.1 MB
ruff-x86_64-pc-windows-msvc.zip.sha256 2026-07-09 98 Bytes
ruff-x86_64-unknown-linux-gnu.tar.gz 2026-07-09 11.2 MB
ruff-x86_64-unknown-linux-gnu.tar.gz.sha256 2026-07-09 103 Bytes
ruff-x86_64-unknown-linux-musl.tar.gz 2026-07-09 11.2 MB
ruff-x86_64-unknown-linux-musl.tar.gz.sha256 2026-07-09 104 Bytes
sha256.sum 2026-07-09 81 Bytes
source.tar.gz 2026-07-09 12.3 MB
ruff-powerpc64le-unknown-linux-gnu.tar.gz 2026-07-09 11.9 MB
ruff-powerpc64le-unknown-linux-gnu.tar.gz.sha256 2026-07-09 108 Bytes
ruff-riscv64gc-unknown-linux-gnu.tar.gz 2026-07-09 11.2 MB
ruff-riscv64gc-unknown-linux-gnu.tar.gz.sha256 2026-07-09 106 Bytes
ruff-s390x-unknown-linux-gnu.tar.gz 2026-07-09 11.3 MB
ruff-s390x-unknown-linux-gnu.tar.gz.sha256 2026-07-09 102 Bytes
ruff-x86_64-apple-darwin.tar.gz 2026-07-09 10.7 MB
ruff-i686-unknown-linux-gnu.tar.gz.sha256 2026-07-09 101 Bytes
ruff-i686-unknown-linux-musl.tar.gz 2026-07-09 10.8 MB
ruff-i686-unknown-linux-musl.tar.gz.sha256 2026-07-09 102 Bytes
ruff-installer.ps1 2026-07-09 22.6 kB
ruff-installer.sh 2026-07-09 68.3 kB
ruff-arm-unknown-linux-musleabihf.tar.gz.sha256 2026-07-09 107 Bytes
ruff-armv7-unknown-linux-gnueabihf.tar.gz 2026-07-09 10.2 MB
ruff-armv7-unknown-linux-gnueabihf.tar.gz.sha256 2026-07-09 108 Bytes
ruff-armv7-unknown-linux-musleabihf.tar.gz 2026-07-09 10.2 MB
ruff-armv7-unknown-linux-musleabihf.tar.gz.sha256 2026-07-09 109 Bytes
ruff-i686-pc-windows-msvc.zip 2026-07-09 10.2 MB
ruff-i686-pc-windows-msvc.zip.sha256 2026-07-09 96 Bytes
ruff-i686-unknown-linux-gnu.tar.gz 2026-07-09 11.1 MB
ruff-aarch64-unknown-linux-gnu.tar.gz 2026-07-09 10.5 MB
ruff-aarch64-unknown-linux-gnu.tar.gz.sha256 2026-07-09 104 Bytes
ruff-aarch64-unknown-linux-musl.tar.gz 2026-07-09 10.4 MB
ruff-aarch64-unknown-linux-musl.tar.gz.sha256 2026-07-09 105 Bytes
ruff-arm-unknown-linux-musleabihf.tar.gz 2026-07-09 10.4 MB
dist-manifest.json 2026-07-09 46.2 kB
ruff-aarch64-apple-darwin.tar.gz 2026-07-09 10.1 MB
ruff-aarch64-apple-darwin.tar.gz.sha256 2026-07-09 99 Bytes
ruff-aarch64-pc-windows-msvc.zip 2026-07-09 10.4 MB
ruff-aarch64-pc-windows-msvc.zip.sha256 2026-07-09 99 Bytes
0.15.21 source code.tar.gz 2026-07-09 12.3 MB
0.15.21 source code.zip 2026-07-09 17.8 MB
README.md 2026-07-09 10.0 kB
Totals: 43 Items   225.6 MB 3

Release Notes

Released on 2026-07-09.

Preview features

  • Add --add-ignore for adding ruff:ignore comments (#26346)
  • [flake8-comprehensions] Drop C409 tuple comprehension preview behavior (#25707)
  • Avoid whitespace normalization when formatting comments (#26455)
  • [pyupgrade] Lint and fix use of deprecated abc decorators (UP051) (#26417)

Bug fixes

  • Refine non-empty f-string detection (#26526)
  • Detect syntax errors in individual notebook cells (#26419)
  • [flake8-implicit-str-concat] Fix ISC003 autofix incorrectly stripping + from comments (#26554)

Rule changes

  • [flake8-executable] Mark EXE004 fix as unsafe (#26033)
  • [flake8-pyi] Mark PYI061 fixes as unsafe in Python files (#26533)
  • [pydocstyle] Skip overload-with-docstring in stub files (D418) (#26318)

Performance

  • Avoid per-token source index visitor calls (#26506)
  • Cache parenthesized expression boundaries in the formatter (#26344)
  • Improve performance of rendering edits in preview mode (#26565)
  • Inline fits_element in formatter (#26429)
  • Inline formatter printing hot paths (#26504)
  • Lazily create builtin bindings (#26510)
  • Skip empty trivia scans in the source indexer (#26507)
  • Use ICF for macOS release builds (#25780)

Formatter

  • Add --extend-exclude to ruff format (#26372)

Documentation

  • Add "How does Ruff's import sorting compare to isort?" link to README (#26530)
  • Fix Mozilla Firefox repository link in README (#26537)
  • [flake8-bandit] Fix misleading docstring for mako-templates (S702) (#26432)
  • [ruff] Fix non-triggering example for if-key-in-dict-del (RUF051) (#26433)

Contributors

Install ruff 0.15.21

Install prebuilt binaries via shell script

:::sh
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.15.21/ruff-installer.sh | sh

Install prebuilt binaries via powershell script

:::sh
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ruff/releases/download/0.15.21/ruff-installer.ps1 | iex"

Download ruff 0.15.21

File Platform Checksum
ruff-aarch64-apple-darwin.tar.gz (releases.astral.sh) Apple Silicon macOS checksum
ruff-x86_64-apple-darwin.tar.gz (releases.astral.sh) Intel macOS checksum
ruff-aarch64-pc-windows-msvc.zip (releases.astral.sh) ARM64 Windows checksum
ruff-i686-pc-windows-msvc.zip (releases.astral.sh) x86 Windows checksum
ruff-x86_64-pc-windows-msvc.zip (releases.astral.sh) x64 Windows checksum
ruff-aarch64-unknown-linux-gnu.tar.gz (releases.astral.sh) ARM64 Linux checksum
ruff-i686-unknown-linux-gnu.tar.gz (releases.astral.sh) x86 Linux checksum
ruff-powerpc64-unknown-linux-gnu.tar.gz (releases.astral.sh) PPC64 Linux checksum
ruff-powerpc64le-unknown-linux-gnu.tar.gz (releases.astral.sh) PPC64LE Linux checksum
ruff-riscv64gc-unknown-linux-gnu.tar.gz (releases.astral.sh) RISCV Linux checksum
ruff-s390x-unknown-linux-gnu.tar.gz (releases.astral.sh) S390x Linux checksum
ruff-x86_64-unknown-linux-gnu.tar.gz (releases.astral.sh) x64 Linux checksum
ruff-armv7-unknown-linux-gnueabihf.tar.gz (releases.astral.sh) ARMv7 Linux checksum
ruff-aarch64-unknown-linux-musl.tar.gz (releases.astral.sh) ARM64 MUSL Linux checksum
ruff-i686-unknown-linux-musl.tar.gz (releases.astral.sh) x86 MUSL Linux checksum
ruff-x86_64-unknown-linux-musl.tar.gz (releases.astral.sh) x64 MUSL Linux checksum
ruff-arm-unknown-linux-musleabihf.tar.gz (releases.astral.sh) ARMv6 MUSL Linux (Hardfloat) checksum
ruff-armv7-unknown-linux-musleabihf.tar.gz (releases.astral.sh) 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:

:::sh
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:

:::sh
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>
Source: README.md, updated 2026-07-09