Release Notes
Released on 2026-05-28.
Preview features
- Fix Markdown closing fence handling (#25310)
- [
pyflakes] Report duplicate imports intyping.TYPE_CHECKINGblock (F811) (#22560)
Bug fixes
- [
pyflakes] Treat function-scope bare annotations as locals per PEP 526 (F821) (#21540)
Performance
- Avoid redundant
TokenValuedrops in the lexer (#25300) - Reduce memory usage by dropping token-excess capacity and improve performance by approximating the initial tokens
Vecsize (#25354) - Use
ThinVecin AST to shrinkStmt(#25361)
Documentation
- Fix
line-lengthexample for--configoption (#25389) - [
flake8-comprehensions] DocumentRecursionErroredge case in__len__(C416) (#25286) - [
mccabe] Improve example (C901) (#25287) - [
pyupgrade] Clarify fix safety docs (UP007,UP045) (#25288) - [
refurb] DocumentFURB192exception change for empty sequences (#25317) - [
ruff] Document false negative for user-defined types (RUF013) (#25289)
Formatter
- Fix formatting of lambdas nested within f-strings (#25398)
Server
- Return code action for
codeAction/resolverequests that contain no or no valid URL (#25365)
Other changes
- Expand semantic syntax errors for invalid walruses (#25415)
Contributors
- @chirizxc
- @ntBre
- @adityasingh2400
- @charliermarsh
- @fallintoplace
- @martin-schlossarek
- @MichaReiser
- @Ruchir28
Install ruff 0.15.15
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.15.15/ruff-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ruff/releases/download/0.15.15/ruff-installer.ps1 | iex"Download ruff 0.15.15
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>