Skip to main content

Ruff

Ruff image image image Actions status Discord

Docs | Playground

An extremely fast Python linter and code formatter, written in Rust.

Shows a bar chart with benchmark results.

Linting the CPython codebase from scratch.

  • ⚡️ 10-100x faster than existing linters (like Flake8) and formatters (like Black)
  • 🐍 Installable via pip
  • 🛠️ pyproject.toml support
  • 🤝 Python 3.14 compatibility
  • ⚖️ Drop-in parity with Flake8, isort, and Black
  • 📦 Built-in caching, to avoid re-analyzing unchanged files
  • 🔧 Fix support, for automatic error correction (e.g., automatically remove unused imports)
  • 📏 Over 900 built-in rules, with native re-implementations of popular Flake8 plugins, like flake8-bugbear
  • ⌨️ First-party editor integrations for VS Code and more
  • 🌎 Monorepo-friendly, with hierarchical and cascading configuration

Ruff aims to be orders of magnitude faster than alternative tools while integrating more functionality behind a single, common interface.

Ruff can be used to replace Flake8 (plus dozens of plugins), Black, isort, pydocstyle, pyupgrade, autoflake, and more, all while executing tens or hundreds of times faster than any individual tool.

Ruff is extremely actively developed and used in major open-source projects like:

Ruff is backed by Astral, the creators of uv and ty.

Read the launch post, or the original project announcement.

Testimonials

Sebastián Ramírez, creator of FastAPI:

Ruff is so fast that sometimes I add an intentional bug in the code just to confirm it's actually running and checking the code.

Nick Schrock, founder of Elementl, co-creator of GraphQL:

Why is Ruff a gamechanger? Primarily because it is nearly 1000x faster. Literally. Not a typo. On our largest module (dagster itself, 250k LOC) pylint takes about 2.5 minutes, parallelized across 4 cores on my M1. Running ruff against our entire codebase takes .4 seconds.

Bryan Van de Ven, co-creator of Bokeh, original author of Conda:

Ruff is ~150-200x faster than flake8 on my machine, scanning the whole repo takes ~0.2s instead of ~20s. This is an enormous quality of life improvement for local dev. It's fast enough that I added it as an actual commit hook, which is terrific.

Timothy Crosley, creator of isort:

Just switched my first project to Ruff. Only one downside so far: it's so fast I couldn't believe it was working till I intentionally introduced some errors.

Tim Abbott, lead developer of Zulip (also here):

This is just ridiculously fast... ruff is amazing.

Table of Contents

For more, see the documentation.

  1. Getting Started
  2. Configuration
  3. Rules
  4. Contributing
  5. Support
  6. Acknowledgements
  7. Show Your Support
  8. License

Getting Started

For more, see the documentation.

Installation

Ruff is available as ruff on PyPI.

Invoke Ruff directly with uvx:

uvx ruff@0.16.7 check   # Lint all files in the current directory.
uvx ruff@0.16.7 format  # Format all files in the current directory.

Or install Ruff with uv (recommended), pip, or pipx:

# With uv.
uv tool install ruff@latest  # Install Ruff globally.
uv add --dev ruff            # Or add Ruff to your project.

# With pip.
pip install ruff

# With pipx.
pipx install ruff

Starting with version 0.5.0, Ruff can be installed with our standalone installers:

# On macOS and Linux.
curl -LsSf https://astral.sh/ruff/install.sh | sh

# On Windows.
powershell -c "irm https://astral.sh/ruff/install.ps1 | iex"

# For a specific version.
curl -LsSf https://astral.sh/ruff/0.16.7/install.sh | sh
powershell -c "irm https://astral.sh/ruff/0.16.7/install.ps1 | iex"

You can also install Ruff via Homebrew, Conda, and with a variety of other package managers.

Usage

To run Ruff as a linter, try any of the following:

ruff check                          # Lint all files in the current directory (and any subdirectories).
ruff check path/to/code/            # Lint all files in `/path/to/code` (and any subdirectories).
ruff check path/to/code/*.py        # Lint all `.py` files in `/path/to/code`.
ruff check path/to/code/to/file.py  # Lint `file.py`.
ruff check @arguments.txt           # Lint using an input file, treating its contents as newline-delimited command-line arguments.

Or, to run Ruff as a formatter:

ruff format                          # Format all files in the current directory (and any subdirectories).
ruff format path/to/code/            # Format all files in `/path/to/code` (and any subdirectories).
ruff format path/to/code/*.py        # Format all `.py` files in `/path/to/code`.
ruff format path/to/code/to/file.py  # Format `file.py`.
ruff format @arguments.txt           # Format using an input file, treating its contents as newline-delimited command-line arguments.

Ruff can also be used as a pre-commit hook via ruff-pre-commit:

- repo: https://github.com/astral-sh/ruff-pre-commit
  # Ruff version.
  rev: v0.16.7
  hooks:
    # Run the linter.
    - id: ruff-check
      args: [ --fix ]
    # Run the formatter.
    - id: ruff-format

Ruff can also be used as a VS Code extension or with various other editors.

Ruff can also be used as a GitHub Action via ruff-action:

name: Ruff
on: [ push, pull_request ]
jobs:
  ruff:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: astral-sh/ruff-action@v3

Configuration

Ruff can be configured through a pyproject.toml, ruff.toml, or .ruff.toml file (see: Configuration, or Settings for a complete list of all configuration options).

For the complete list of enabled rules, see Default Rules.

If left unspecified, Ruff's default configuration is equivalent to the following ruff.toml file:

# Exclude a variety of commonly ignored directories.
exclude = [
    ".bzr",
    ".direnv",
    ".eggs",
    ".git",
    ".git-rewrite",
    ".hg",
    ".ipynb_checkpoints",
    ".mypy_cache",
    ".nox",
    ".pants.d",
    ".pyenv",
    ".pytest_cache",
    ".pytype",
    ".ruff_cache",
    ".svn",
    ".tox",
    ".venv",
    ".vscode",
    "__pypackages__",
    "_build",
    "buck-out",
    "build",
    "dist",
    "node_modules",
    "site-packages",
    "venv",
]

# Same as Black.
line-length = 88
indent-width = 4

# Assume Python 3.10
target-version = "py310"

[lint]
# select = [...]  # See the Default Rules page for the full listing.
ignore = []

# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []

# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"

[format]
# Like Black, use double quotes for strings.
quote-style = "double"

# Like Black, indent with spaces, rather than tabs.
indent-style = "space"

# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false

# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"

Note that, in a pyproject.toml, each section header should be prefixed with tool.ruff. For example, [lint] should be replaced with [tool.ruff.lint].

Some configuration options can be provided via dedicated command-line arguments, such as those related to rule enablement and disablement, file discovery, and logging level:

ruff check --select F401 --select F403 --quiet

The remaining configuration options can be provided through a catch-all --config argument:

ruff check --config "lint.per-file-ignores = {'some_file.py' = ['F841']}"

To opt in to the latest lint rules, formatter style changes, interface updates, and more, enable preview mode by setting preview = true in your configuration file or passing --preview on the command line. Preview mode enables a collection of unstable features that may change prior to stabilization.

See ruff help for more on Ruff's top-level commands, or ruff help check and ruff help format for more on the linting and formatting commands, respectively.

Rules

Ruff supports over 900 lint rules, many of which are inspired by popular tools like Flake8, isort, pyupgrade, and others. Regardless of the rule's origin, Ruff re-implements every rule in Rust as a first-party feature.

By default, Ruff enables rules from the F, E, B, UP, and RUF categories, as well as many more, omitting any stylistic rules that overlap with the use of a formatter, like ruff format or Black.

If you're just getting started with Ruff, the default rule set is a great place to start: it catches a wide variety of common errors (like unused imports) with zero configuration. See Default Rules for the complete list.

Beyond the defaults, Ruff re-implements some of the most popular Flake8 plugins and related code quality tools, including:

For a complete enumeration of the supported rules, see Rules.

Contributing

Contributions are welcome and highly appreciated. To get started, check out the contributing guidelines.

You can also join us on Discord.

Support

Having trouble? Check out the existing issues on GitHub, or feel free to open a new one.

You can also ask for help on Discord.

Acknowledgements

Ruff's linter draws on both the APIs and implementation details of many other tools in the Python ecosystem, especially Flake8, Pyflakes, pycodestyle, pydocstyle, pyupgrade, and isort.

In some cases, Ruff includes a "direct" Rust port of the corresponding tool. We're grateful to the maintainers of these tools for their work, and for all the value they've provided to the Python community.

Ruff's formatter is built on a fork of Rome's rome_formatter, and again draws on both API and implementation details from Rome, Prettier, and Black.

Ruff's import resolver is based on the import resolution algorithm from Pyright.

Ruff is also influenced by a number of tools outside the Python ecosystem, like Clippy and ESLint.

Ruff is the beneficiary of a large number of contributors.

Ruff is released under the MIT license.

Show Your Support

If you're using Ruff, consider adding the Ruff badge to your project's README.md:

[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

...or README.rst:

.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
    :target: https://github.com/astral-sh/ruff
    :alt: Ruff

...or, as HTML:

<a href="https://github.com/astral-sh/ruff"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff" style="max-width:100%;"></a>

License

This repository is licensed under the MIT License

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ruff-0.16.7.tar.gz (4.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ruff-0.16.7-py3-none-win_arm64.whl (10.4 MB view details)

Uploaded Python 3Windows ARM64

ruff-0.16.7-py3-none-win_amd64.whl (10.6 MB view details)

Uploaded Python 3Windows x86-64

ruff-0.16.7-py3-none-win32.whl (10.1 MB view details)

Uploaded Python 3Windows x86

ruff-0.16.7-py3-none-musllinux_1_2_x86_64.whl (10.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

ruff-0.16.7-py3-none-musllinux_1_2_i686.whl (10.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

ruff-0.16.7-py3-none-musllinux_1_2_armv7l.whl (9.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

ruff-0.16.7-py3-none-musllinux_1_2_aarch64.whl (10.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

ruff-0.16.7-py3-none-manylinux_2_31_riscv64.whl (10.5 MB view details)

Uploaded Python 3manylinux: glibc 2.31+ riscv64

ruff-0.16.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ruff-0.16.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (10.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

ruff-0.16.7-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

ruff-0.16.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (10.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ruff-0.16.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (9.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

ruff-0.16.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ruff-0.16.7-py3-none-macosx_11_0_arm64.whl (9.8 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

ruff-0.16.7-py3-none-macosx_10_12_x86_64.whl (10.2 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

ruff-0.16.7-py3-none-linux_armv6l.whl (10.0 MB view details)

Uploaded Python 3

File details

Details for the file ruff-0.16.7.tar.gz.

File metadata

  • Download URL: ruff-0.16.7.tar.gz
  • Upload date:
  • Size: 4.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7.tar.gz
Algorithm Hash digest
SHA256 5f71d004ac1263b22fa39462ac5ae618a4b77d58981af2cc79bf79a29c12b1a6
MD5 780bb9c18596a4980e03e5aed43ca741
BLAKE2b-256 82bb5a449b9162e49b139d72f61672bd3ac1d790221f796d3304e2241fff4c58

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-win_arm64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-win_arm64.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 aab7f39e2c9df6c596216070f98eef1207b94f8516cca20c808826974971855b
MD5 1d9735a654cf394ea907b0266fe874e2
BLAKE2b-256 8b4b51327018d056f0dad2c2238f26d1fb0f53707a9d91b75dea6d1b3039f136

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-win_amd64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-win_amd64.whl
  • Upload date:
  • Size: 10.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 7ac26aca826e9e21d0f1cb25b54ac660760a9fdd094d3e4df9848232be98cfc6
MD5 90c0a7ab1e40baa088aa89bd9fb87b4f
BLAKE2b-256 3911480a6973a927aa653e1cead6a6416008640e03a99d05b34c0434b8c6c366

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-win32.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-win32.whl
  • Upload date:
  • Size: 10.1 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-win32.whl
Algorithm Hash digest
SHA256 2ea3470fcebcbc5df2fb0c6f3b90333fa9084c534e0111c038fa4a6ab9f1c4b7
MD5 48d5777df32f639052417b2f238b370c
BLAKE2b-256 5fea7f9b938a63ece4bec677ad7f9f7fa02df3383db1949ed93a382441c09a87

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 53e39506a730fadeee0d998ed5946f30671f0db240c6c7c73bdabbe33604bb6f
MD5 b581245d7d3e98c5ee91889810ed4474
BLAKE2b-256 684956f9c3a8b755df93a0ad318b2147bf4ef5dae9a7e5ec61c460109c67957f

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 10.3 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 ef140c6eb935fa9a84c9c607dfb2cb1b85843c192e79265b0c54f35f557ea8e5
MD5 603274728f43b0cfc3020812e34f6152
BLAKE2b-256 997578d401106731999a1dd20cc5a6961e37e1eb9397a3b589f73f3a5ce146a3

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 e6651f97a342d8b35d54d8991544ca22169b86dc54111cb604666940c431b750
MD5 9111041337d88c16e9aa976a03c07d83
BLAKE2b-256 ff8c667d83c16199a17a56adc6b0bd4c3beb5b767a2babcd16a56f76f9be7fd6

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 10.1 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 142151a5e7b93c1b11111337142f89dd2fbfee92161225c99a97222f22e32656
MD5 2b7ea6cc2ff9f6a47ddbcd6b45652085
BLAKE2b-256 3f4dc5576adf511f92a328e5569dda190ecdd430da51f1a649f3a4a2fd73e21e

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_31_riscv64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_31_riscv64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: Python 3, manylinux: glibc 2.31+ riscv64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 06d0e93d04f392996435ebd600c153f65b47d73fbec2415aa99c5ee5756b3a5f
MD5 c459622f494307fcf4bda7e4d1e6bfec
BLAKE2b-256 fa0b6345fb4dbf6dd0ed1cfe5d18391dc9c3f59cc81622a7b0a65b84b3e730ba

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ce7f8f22df67c93ed96c717f9128eadb797144ac2bad475cf536f31d6100c55
MD5 753b2f8735926315f765a1cb5ac21586
BLAKE2b-256 213381f3da371942ea031105ba679d8d6e28ec1660ccd690a45f42d381161356

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 af1b576fddb9d9ef2ececfb5fadcd6a624b25070ed85e3cfcfe449fc3ff6a7b9
MD5 73130996b905e16f5ffcd6b1fc4de397
BLAKE2b-256 5d43c75aa59a4ec181fe2ec06cab30e198c1c6d107229a9f008ae3a7c16cabd8

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ce05b62b770a8217c4646a9c4139fca00efe8fe5d71f87df2b243ff20d4584d1
MD5 8d7262bd2efb4360d462c3f2107d57f1
BLAKE2b-256 2942eaff4c9b6d0c7cdf56df313a17e89ae854f5bbc0b0c8f9cce19be0ab7a8f

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 10.6 MB
  • Tags: Python 3, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 398d3988edde000b5c75dc1b3f584708da9bc990de069c18909142580fec1af9
MD5 cb2006e131ae467bd8308e741788c170
BLAKE2b-256 0b11a15e60d4c87b214646f116ca9d204475bf993ee1047459bc9a360fd4d6d1

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 ac8c3bd0a7e10ad31e6ce51e7a99f3cb772e69aecdd6b9ea7e99b362f62a62c0
MD5 c9b44ef6fab2a84198377d6c45292550
BLAKE2b-256 4d98edea21e1a3e38dbbc3bf6bb068b863b3b06184cf8533a4c7dbbe208a89d5

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 10.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4c196c968874fc8019da8e7163de7a1a370f111e2309b4b7dfea0fce950198d0
MD5 e741f6c80e32b0c8bdaab0f872b96ce6
BLAKE2b-256 eb2ddb1633a641866ed801e34cc6b60ef236c5e16f9b2124ab1d49cc24a5fe4f

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ab81118df8945e0193d0240712aa4496573595b75185c3636ed825592a0f728
MD5 f7a6b8ff50a1640d02534f47a7795d9b
BLAKE2b-256 90b2f184b0d5abec02db69cfd7e49b688ae0237554528ca777136c613bf36bee

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 10.2 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9d61c258deabf58f34c67bd4bb4d939c7f2e6b5f0e59c1cdd1cf771b11cde929
MD5 2ebf558979b0c5fa1ca4e4851ff70530
BLAKE2b-256 7b9620bb7bcae008004df52afcb7ac83432d4a467f2c17b672fe46d26be231c5

See more details on using hashes here.

File details

Details for the file ruff-0.16.7-py3-none-linux_armv6l.whl.

File metadata

  • Download URL: ruff-0.16.7-py3-none-linux_armv6l.whl
  • Upload date:
  • Size: 10.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff-0.16.7-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 727307773e7c7f9181d3ed3a2484186e56c1fa1874255911c74585eb2c7c19f9
MD5 33e6142fecca6e0c556323da31c00ba4
BLAKE2b-256 e3b2c80aeeb7f9e469c0d63a85d2f1ab6e1ebfbe10ea7a8d2438b7e09e3ff09e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.16.7 This release

18 files

0.16.6

18 files

0.16.5

18 files

0.16.4

18 files

0.16.3

18 files

0.16.2

18 files

0.16.1

18 files

0.16.0

18 files

0.15.22

18 files

0.15.21

18 files

0.15.20

18 files

0.15.19

18 files

0.15.18

18 files

0.15.17

18 files

0.15.16

18 files

0.15.15

18 files

0.15.14

18 files

0.15.13

18 files

0.15.12

18 files

0.15.11

18 files

0.15.10

18 files

0.15.9

18 files

0.15.8

18 files

0.15.7

18 files

0.15.6

18 files

0.15.5

18 files

0.15.4

18 files

0.15.3

18 files

0.15.2

18 files

0.15.1

18 files

0.15.0

18 files

0.14.14

19 files

0.14.13

19 files

0.14.12

19 files

0.14.11

19 files

0.14.10

19 files

0.14.9

19 files

0.14.8

19 files

0.14.7

19 files

0.14.6

19 files

0.14.5

19 files

0.14.4

19 files

0.14.3

19 files

0.14.2

19 files

0.14.1

19 files

0.14.0

19 files

0.13.3

19 files

0.13.2

19 files

0.13.1

19 files

0.13.0

19 files

0.12.12

19 files

0.12.11

19 files

0.12.10

19 files

0.12.9

19 files

0.12.8

18 files

0.12.7

18 files

0.12.6

17 files

0.12.5

18 files

0.12.4

18 files

0.12.3

18 files

0.12.2

18 files

0.12.1

18 files

0.12.0

18 files

0.11.13

18 files

0.11.12

18 files

0.11.11

18 files

0.11.10

18 files

0.11.9

18 files

0.11.8

18 files

0.11.7

18 files

0.11.6

18 files

0.11.5

18 files

0.11.4

18 files

0.11.3

18 files

0.11.2

18 files

0.11.1

18 files

0.11.0

18 files

0.10.0

18 files

0.9.10

18 files

0.9.9

18 files

0.9.8

18 files

0.9.7

18 files

0.9.6

18 files

0.9.5

18 files

0.9.4

18 files

0.9.3

18 files

0.9.2

18 files

0.9.1

18 files

0.9.0

18 files

0.8.6

18 files

0.8.5

18 files

0.8.4

18 files

0.8.3

18 files

0.8.2

18 files

0.8.1

18 files

0.8.0

18 files

0.7.4

18 files

0.7.3

18 files

0.7.2

18 files

0.7.1

18 files

0.7.0

18 files

0.6.9

18 files

0.6.8

18 files

0.6.7

18 files

0.6.6

18 files

0.6.5

18 files

0.6.4

18 files

0.6.3

18 files

0.6.2

18 files

0.6.1

18 files

0.6.0

18 files

0.5.7

18 files

0.5.6

18 files

0.5.5

18 files

0.5.4

18 files

0.5.3

18 files

0.5.2

18 files

0.5.1

18 files

0.5.0

18 files

0.4.10

17 files

0.4.9

17 files

0.4.8

17 files

0.4.7

17 files

0.4.6

17 files

0.4.5

17 files

0.4.4

17 files

0.4.3

17 files

0.4.2

17 files

0.4.1

17 files

0.4.0

17 files

0.3.7

17 files

0.3.6

17 files

0.3.5

17 files

0.3.4

17 files

0.3.3

17 files

0.3.2

17 files

0.3.1

17 files

0.3.0

17 files

0.2.2

17 files

0.2.1

17 files

0.2.0

17 files

0.1.15

17 files

0.1.14

17 files

0.1.13

17 files

0.1.12

17 files

0.1.11

17 files

0.1.10

17 files

0.1.9

17 files

0.1.8

17 files

0.1.7

17 files

0.1.6

17 files

0.1.5

17 files

0.1.4

17 files

0.1.3

17 files

0.1.2

17 files

0.1.1

17 files

0.1.0

17 files

0.0.292

17 files

0.0.291

17 files

0.0.290

17 files

0.0.289

17 files

0.0.288

17 files

0.0.287

17 files

0.0.286

17 files

0.0.285

17 files

0.0.284

17 files

0.0.283

17 files

0.0.282

17 files

0.0.281

17 files

0.0.280

17 files

0.0.279

17 files

0.0.278

17 files

0.0.277

17 files

0.0.276

17 files

0.0.275

17 files

0.0.274

17 files

0.0.273

17 files

0.0.272

17 files

0.0.271

17 files

0.0.270

17 files

0.0.269

17 files

0.0.267

17 files

0.0.266

17 files

0.0.265

17 files

0.0.264

17 files

0.0.263

17 files

0.0.262

17 files

0.0.261

17 files

0.0.260

17 files

0.0.259

17 files

0.0.257

17 files

0.0.256

17 files

0.0.255

17 files

0.0.254

17 files

0.0.253

17 files

0.0.252

17 files

0.0.251

17 files

0.0.250

17 files

0.0.249

17 files

0.0.248

17 files

0.0.247

17 files

0.0.246

16 files

0.0.245

16 files

0.0.244

16 files

0.0.243

16 files

0.0.242

16 files

0.0.241

16 files

0.0.240

16 files

0.0.239

16 files

0.0.238

16 files

0.0.237

16 files

0.0.236

16 files

0.0.235

16 files

0.0.234

16 files

0.0.233

16 files

0.0.231

16 files

0.0.230

16 files

0.0.229

16 files

0.0.228

16 files

0.0.227

16 files

0.0.226

16 files

0.0.225

16 files

0.0.224

16 files

0.0.223

16 files

0.0.222

16 files

0.0.221

16 files

0.0.220

16 files

0.0.219

16 files

0.0.218

16 files

0.0.217

16 files

0.0.216

16 files

0.0.215

16 files

0.0.214

16 files

0.0.213

16 files

0.0.212

16 files

0.0.211

16 files

0.0.210

16 files

0.0.209

16 files

0.0.208

16 files

0.0.207

16 files

0.0.206

16 files

0.0.205

16 files

0.0.204

16 files

0.0.203

16 files

0.0.202

16 files

0.0.201

16 files

0.0.200

16 files

0.0.199

16 files

0.0.198

16 files

0.0.196

16 files

0.0.195

16 files

0.0.194

16 files

0.0.193

16 files

0.0.192

16 files

0.0.191

16 files

0.0.190

16 files

0.0.189

16 files

0.0.188

16 files

0.0.187

16 files

0.0.186

16 files

0.0.185

16 files

0.0.184

16 files

0.0.183

16 files

0.0.182

16 files

0.0.181

16 files

0.0.180

16 files

0.0.178

16 files

0.0.177

16 files

0.0.176

16 files

0.0.175

16 files

0.0.174

16 files

0.0.173

16 files

0.0.172

16 files

0.0.171

16 files

0.0.170

16 files

0.0.169

16 files

0.0.168

16 files

0.0.167

16 files

0.0.166

16 files

0.0.165

16 files

0.0.164

16 files

0.0.163

16 files

0.0.162

16 files

0.0.161

16 files

0.0.160

16 files

0.0.159

16 files

0.0.158

16 files

0.0.157

16 files

0.0.156

16 files

0.0.155

16 files

0.0.154

16 files

0.0.153

16 files

0.0.152

16 files

0.0.151

16 files

0.0.150

16 files

0.0.149

16 files

0.0.148

16 files

0.0.146

16 files

0.0.145

16 files

0.0.144

16 files

0.0.143

16 files

0.0.142

16 files

0.0.141

16 files

0.0.140

16 files

0.0.139

16 files

0.0.138

16 files

0.0.137

16 files

0.0.135

16 files

0.0.134

16 files

0.0.133

16 files

0.0.132

16 files

0.0.131

16 files

0.0.130

16 files

0.0.129

16 files

0.0.128

16 files

0.0.127

16 files

0.0.126

16 files

0.0.125

16 files

0.0.124

16 files

0.0.123

16 files

0.0.122

16 files

0.0.121

16 files

0.0.120

16 files

0.0.119

16 files

0.0.118

16 files

0.0.117

16 files

0.0.116

16 files

0.0.114

16 files

0.0.113

16 files

0.0.112

16 files

0.0.111

16 files

0.0.110

16 files

0.0.109

16 files

0.0.108

16 files

0.0.107

16 files

0.0.106

16 files

0.0.105

16 files

0.0.104

16 files

0.0.103

16 files

0.0.102

16 files

0.0.100

16 files

0.0.99

16 files

0.0.98

16 files

0.0.97

16 files

0.0.96

16 files

0.0.95

16 files

0.0.94

16 files

0.0.93

16 files

0.0.92

16 files

0.0.91

16 files

0.0.90

16 files

0.0.89

16 files

0.0.88

16 files

0.0.86

16 files

0.0.85

16 files

0.0.84

16 files

0.0.83

16 files

0.0.82

16 files

0.0.81

16 files

0.0.80

16 files

0.0.79

16 files

0.0.78

16 files

0.0.77

16 files

0.0.76

16 files

0.0.75

16 files

0.0.74

16 files

0.0.73

16 files

0.0.72

16 files

0.0.71

16 files

0.0.70

16 files

0.0.69

16 files

0.0.68

16 files

0.0.67

16 files

0.0.66

16 files

0.0.65

16 files

0.0.64

16 files

0.0.63

16 files

0.0.62

16 files

0.0.61

16 files

0.0.60

16 files

0.0.59

16 files

0.0.58

16 files

0.0.57

16 files

0.0.55

16 files

0.0.54

16 files

0.0.53

16 files

0.0.52

16 files

0.0.51

16 files

0.0.50

16 files

0.0.49

16 files

0.0.48

16 files

0.0.47

16 files

0.0.46

16 files

0.0.45

16 files

0.0.44

16 files

0.0.43

16 files

0.0.42

16 files

0.0.40

16 files

0.0.39

16 files

0.0.37

16 files

0.0.36

16 files

0.0.35

16 files

0.0.34

16 files

0.0.33

16 files

0.0.32

16 files

0.0.31

16 files

0.0.30

16 files

0.0.29

16 files

0.0.28

16 files

0.0.25

16 files

0.0.24

16 files

0.0.23

16 files

0.0.22

16 files

0.0.21

16 files

0.0.20

16 files

0.0.19

11 files

0.0.18

40 files

0.0.17

48 files

0.0.16

9 files

0.0.15

3 files

0.0.14

3 files

0.0.13

3 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page