Skip to content

Releases: astral-sh/ruff

0.14.13

15 Jan 20:16
b4b8299

Choose a tag to compare

Release Notes

Released on 2026-01-15.

This is a follow-up release to 0.14.12. Because of an issue publishing the WASM packages, there is no GitHub release or Git tag for 0.14.12, although the package was published to PyPI. The contents of the 0.14.13 release are identical to 0.14.12.

0.14.12

Preview features

  • [flake8-blind-except] Allow more logging methods (BLE001) (#22057)
  • [ruff] Respect lint.pydocstyle.property-decorators in RUF066 (#22515)

Bug fixes

  • Fix configuration path in --show-settings (#22478)
  • Respect fmt: skip for multiple statements on the same logical line (#22119)

Rule changes

  • [pydocstyle] Update Rust crate imperative to v1.0.7 (D401) (#22519)
  • [isort] Insert imports in alphabetical order (I002) (#22493)

Documentation

  • Add llms.txt support for documentation (#22463)
  • Use prek in documentation and CI (#22505)
  • [flake8-pytest-style] Add check parameter example to PT017 docs (#22546)
  • [ruff] Make example error out-of-the-box (RUF103) (#22558)
  • [ruff] document RUF100 trailing comment fix behavior (#22479)

Other changes

  • wasm: Require explicit logging initialization (#22587)

Contributors

Install ruff 0.14.13

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.13

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

0.14.11

08 Jan 19:20
c920cf8

Choose a tag to compare

Release Notes

Released on 2026-01-08.

Preview features

  • Consolidate diagnostics for matched disable/enable suppression comments (#22099)
  • Report diagnostics for invalid/unmatched range suppression comments (#21908)
  • [airflow] Passing positional argument into airflow.lineage.hook.HookLineageCollector.create_asset is not allowed (AIR303) (#22046)
  • [refurb] Mark FURB192 fix as always unsafe (#22210)
  • [ruff] Add non-empty-init-module (RUF067) (#22143)

Bug fixes

  • Fix GitHub format for multi-line diagnostics (#22108)
  • [flake8-unused-arguments] Mark **kwargs in TypeVar as used (ARG001) (#22214)

Rule changes

  • Add help: subdiagnostics for several Ruff rules that can sometimes appear to disagree with ty (#22331)
  • [pylint] Demote PLW1510 fix to display-only (#22318)
  • [pylint] Ignore identical members (PLR1714) (#22220)
  • [pylint] Improve diagnostic range for PLC0206 (#22312)
  • [ruff] Improve fix title for RUF102 invalid rule code (#22100)
  • [flake8-simplify]: Avoid unnecessary builtins import for SIM105 (#22358)

Configuration

  • Allow Python 3.15 as valid target-version value in preview (#22419)
  • Check required-version before parsing rules (#22410)
  • Include configured src directories when resolving graphs (#22451)

Documentation

  • Update T201 suggestion to not use root logger to satisfy LOG015 (#22059)
  • Fix iter example in unsafe fixes doc (#22118)
  • [flake8_print] better suggestion for basicConfig in T201 docs (#22101)
  • [pylint] Restore the fix safety docs for PLW0133 (#22211)
  • Fix Jupyter notebook discovery info for editors (#22447)

Contributors

Install ruff 0.14.11

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.11

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

0.14.10

18 Dec 19:37
45bbb4c

Choose a tag to compare

Release Notes

Released on 2025-12-18.

Preview features

  • [formatter] Fluent formatting of method chains (#21369)
  • [formatter] Keep lambda parameters on one line and parenthesize the body if it expands (#21385)
  • [flake8-implicit-str-concat] New rule to prevent implicit string concatenation in collections (ISC004) (#21972)
  • [flake8-use-pathlib] Make fixes unsafe when types change in compound statements (PTH104, PTH105, PTH109, PTH115) (#22009)
  • [refurb] Extend support for Path.open (FURB101, FURB103) (#21080)

Bug fixes

  • [pyupgrade] Fix parsing named Unicode escape sequences (UP032) (#21901)

Rule changes

  • [eradicate] Ignore ruff:disable and ruff:enable comments in ERA001 (#22038)
  • [flake8-pytest-style] Allow match and check keyword arguments without an expected exception type (PT010) (#21964)
  • [syntax-errors] Annotated name cannot be global (#20868)

Documentation

  • Add uv and ty to the Ruff README (#21996)
  • Document known lambda formatting deviations from Black (#21954)
  • Update setup.md (#22024)
  • [flake8-bandit] Fix broken link (S704) (#22039)

Other changes

  • Fix playground Share button showing "Copied!" before clipboard copy completes (#21942)

Contributors

Install ruff 0.14.10

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.10

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

0.14.9

11 Dec 21:46
3f63ea4

Choose a tag to compare

Release Notes

Released on 2025-12-11.

Preview features

  • [ruff] New RUF100 diagnostics for unused range suppressions (#21783)
  • [pylint] Detect subclasses of builtin exceptions (PLW0133) (#21382)

Bug fixes

  • Fix comment placement in lambda parameters (#21868)
  • Skip over trivia tokens after re-lexing (#21895)
  • [flake8-bandit] Fix false positive when using non-standard CSafeLoader path (S506). (#21830)
  • [flake8-bugbear] Accept immutable slice default arguments (B008) (#21823)

Rule changes

  • [pydocstyle] Suppress D417 for parameters with Unpack annotations (#21816)

Performance

  • Use memchr for computing line indexes (#21838)

Documentation

  • Document *.pyw is included by default in preview (#21885)
  • Document range suppressions, reorganize suppression docs (#21884)
  • Update mkdocs-material to 9.7.0 (Insiders now free) (#21797)

Contributors

Install ruff 0.14.9

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.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

0.14.8

04 Dec 15:14
9d4f1c6

Choose a tag to compare

Release Notes

Released on 2025-12-04.

Preview features

  • [flake8-bugbear] Catch yield expressions within other statements (B901) (#21200)
  • [flake8-use-pathlib] Mark fixes unsafe for return type changes (PTH104, PTH105, PTH109, PTH115) (#21440)

Bug fixes

  • Fix syntax error false positives for await outside functions (#21763)
  • [flake8-simplify] Fix truthiness assumption for non-iterable arguments in tuple/list/set calls (SIM222, SIM223) (#21479)

Documentation

  • Suggest using --output-file option in GitLab integration (#21706)

Other changes

  • [syntax-error] Default type parameter followed by non-default type parameter (#21657)

Contributors

Install ruff 0.14.8

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.8

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

0.14.7

28 Nov 21:03
ecab623

Choose a tag to compare

Release Notes

Released on 2025-11-28.

Preview features

  • [flake8-bandit] Handle string literal bindings in suspicious-url-open-usage (S310) (#21469)
  • [pylint] Fix PLR1708 false positives on nested functions (#21177)
  • [pylint] Fix suppression for empty dict without tuple key annotation (PLE1141) (#21290)
  • [ruff] Add rule RUF066 to detect unnecessary class properties (#21535)
  • [ruff] Catch more dummy variable uses (RUF052) (#19799)

Bug fixes

  • [server] Set severity for non-rule diagnostics (#21559)
  • [flake8-implicit-str-concat] Avoid invalid fix in (ISC003) (#21517)
  • [parser] Fix panic when parsing IPython escape command expressions (#21480)

CLI

  • Show partial fixability indicator in statistics output (#21513)

Contributors

Install ruff 0.14.7

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.7

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

0.14.6

21 Nov 14:33
59c6cb5

Choose a tag to compare

Release Notes

Released on 2025-11-21.

Preview features

  • [flake8-bandit] Support new PySNMP API paths (S508, S509) (#21374)

Bug fixes

  • Adjust own-line comment placement between branches (#21185)
  • Avoid syntax error when formatting attribute expressions with outer parentheses, parenthesized value, and trailing comment on value (#20418)
  • Fix panic when formatting comments in unary expressions (#21501)
  • Respect fmt: skip for compound statements on a single line (#20633)
  • [refurb] Fix FURB103 autofix (#21454)
  • [ruff] Fix false positive for complex conversion specifiers in logging-eager-conversion (RUF065) (#21464)

Rule changes

  • [ruff] Avoid false positive on ClassVar reassignment (RUF012) (#21478)

CLI

  • Render hyperlinks for lint errors (#21514)
  • Add a ruff analyze option to skip over imports in TYPE_CHECKING blocks (#21472)

Documentation

  • Limit eglot-format hook to eglot-managed Python buffers (#21459)
  • Mention force-exclude in "Configuration > Python file discovery" (#21500)

Contributors

Install ruff 0.14.6

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.6

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

0.14.5

13 Nov 20:06
87dafb8

Choose a tag to compare

Release Notes

Released on 2025-11-13.

Preview features

  • [flake8-simplify] Apply SIM113 when index variable is of type int (#21395)
  • [pydoclint] Fix false positive when Sphinx directives follow a "Raises" section (DOC502) (#20535)
  • [pydoclint] Support NumPy-style comma-separated parameters (DOC102) (#20972)
  • [refurb] Auto-fix annotated assignments (FURB101) (#21278)
  • [ruff] Ignore str() when not used for simple conversion (RUF065) (#21330)

Bug fixes

  • Fix syntax error false positive on alternative match patterns (#21362)
  • [flake8-simplify] Fix false positive for iterable initializers with generator arguments (SIM222) (#21187)
  • [pyupgrade] Fix false positive on relative imports from local .builtins module (UP029) (#21309)
  • [pyupgrade] Consistently set the deprecated tag (UP035) (#21396)

Rule changes

  • [refurb] Detect empty f-strings (FURB105) (#21348)

CLI

  • Add option to provide a reason to --add-noqa (#21294)
  • Add upstream linter URL to ruff linter --output-format=json (#21316)
  • Add color to --help (#21337)

Documentation

  • Add a new "Opening a PR" section to the contribution guide (#21298)
  • Added the PyScripter IDE to the list of "Who is using Ruff?" (#21402)
  • Update PyCharm setup instructions (#21409)
  • [flake8-annotations] Add link to allow-star-arg-any option (ANN401) (#21326)

Other changes

  • [configuration] Improve error message when line-length exceeds u16::MAX (#21329)

Contributors

Install ruff 0.14.5

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.5

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

0.14.4

06 Nov 22:15
c7ff982

Choose a tag to compare

Release Notes

Released on 2025-11-06.

Preview features

  • [formatter] Allow newlines after function headers without docstrings (#21110)
  • [formatter] Avoid extra parentheses for long match patterns with as captures (#21176)
  • [refurb] Expand fix safety for keyword arguments and Decimals (FURB164) (#21259)
  • [refurb] Preserve argument ordering in autofix (FURB103) (#20790)

Bug fixes

  • [server] Fix missing diagnostics for notebooks (#21156)
  • [flake8-bugbear] Ignore non-NFKC attribute names in B009 and B010 (#21131)
  • [refurb] Fix false negative for underscores before sign in Decimal constructor (FURB157) (#21190)
  • [ruff] Fix false positives on starred arguments (RUF057) (#21256)

Rule changes

  • [airflow] extend deprecated argument concurrency in airflow..DAG (AIR301) (#21220)

Documentation

  • Improve extend docs (#21135)
  • [flake8-comprehensions] Fix typo in C416 documentation (#21184)
  • Revise Ruff setup instructions for Zed editor (#20935)

Other changes

  • Make ruff analyze graph work with jupyter notebooks (#21161)

Contributors

Install ruff 0.14.4

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.4

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

0.14.3

31 Oct 00:33
8737a2d

Choose a tag to compare

Release Notes

Released on 2025-10-30.

Preview features

  • Respect --output-format with --watch (#21097)
  • [pydoclint] Fix false positive on explicit exception re-raising (DOC501, DOC502) (#21011)
  • [pyflakes] Revert to stable behavior if imports for module lie in alternate branches for F401 (#20878)
  • [pylint] Implement stop-iteration-return (PLR1708) (#20733)
  • [ruff] Add support for additional eager conversion patterns (RUF065) (#20657)

Bug fixes

  • Fix finding keyword range for clause header after statement ending with semicolon (#21067)
  • Fix syntax error false positive on nested alternative patterns (#21104)
  • [ISC001] Fix panic when string literals are unclosed (#21034)
  • [flake8-django] Apply DJ001 to annotated fields (#20907)
  • [flake8-pyi] Fix PYI034 to not trigger on metaclasses (PYI034) (#20881)
  • [flake8-type-checking] Fix TC003 false positive with future-annotations (#21125)
  • [pyflakes] Fix false positive for __class__ in lambda expressions within class definitions (F821) (#20564)
  • [pyupgrade] Fix false positive for TypeVar with default on Python <3.13 (UP046,UP047) (#21045)

Rule changes

  • Add missing docstring sections to the numpy list (#20931)
  • [airflow] Extend airflow.models..Param check (AIR311) (#21043)
  • [airflow] Warn that airflow....DAG.create_dagrun has been removed (AIR301) (#21093)
  • [refurb] Preserve digit separators in Decimal constructor (FURB157) (#20588)

Server

  • Avoid sending an unnecessary "clear diagnostics" message for clients supporting pull diagnostics (#21105)

Documentation

  • [flake8-bandit] Fix correct example for S308 (#21128)

Other changes

  • Clearer error message when line-length goes beyond threshold (#21072)

Contributors

Install ruff 0.14.3

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Download ruff 0.14.3

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