Skip to main content

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

Project description

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

...and many more.

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. Who's Using Ruff?
  8. License

Getting Started

For more, see the documentation.

Installation

Ruff is available as ruff on PyPI.

Invoke Ruff directly with uvx:

uvx ruff check   # Lint all files in the current directory.
uvx ruff 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.15.12/install.sh | sh
powershell -c "irm https://astral.sh/ruff/0.15.12/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.15.12
  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).

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]
# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`) codes by default.
select = ["E4", "E7", "E9", "F"]
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 Flake8's F rules, along with a subset of the E rules, 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.

In preview, Ruff enables an expanded set of default rules that includes rules from the B, UP, and RUF categories, as well as many more. If you give the new defaults a try, feel free to leave feedback in the GitHub discussion, where you can also find the new rule set listed in full.

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.

Who's Using Ruff?

Ruff is used by a number of major open-source projects and companies, including:

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

Project details


Release history Release notifications | RSS feed

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.15.12.tar.gz (4.6 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.15.12-py3-none-win_arm64.whl (11.1 MB view details)

Uploaded Python 3Windows ARM64

ruff-0.15.12-py3-none-win_amd64.whl (11.8 MB view details)

Uploaded Python 3Windows x86-64

ruff-0.15.12-py3-none-win32.whl (10.7 MB view details)

Uploaded Python 3Windows x86

ruff-0.15.12-py3-none-musllinux_1_2_x86_64.whl (11.4 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

ruff-0.15.12-py3-none-musllinux_1_2_i686.whl (11.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

ruff-0.15.12-py3-none-musllinux_1_2_armv7l.whl (10.5 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

ruff-0.15.12-py3-none-musllinux_1_2_aarch64.whl (10.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

ruff-0.15.12-py3-none-manylinux_2_31_riscv64.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.31+ riscv64

ruff-0.15.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ruff-0.15.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (11.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

ruff-0.15.12-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (12.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

ruff-0.15.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (11.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ruff-0.15.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (10.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

ruff-0.15.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ruff-0.15.12-py3-none-macosx_11_0_arm64.whl (10.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

ruff-0.15.12-py3-none-macosx_10_12_x86_64.whl (11.1 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

ruff-0.15.12-py3-none-linux_armv6l.whl (10.6 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ruff-0.15.12.tar.gz
  • Upload date:
  • Size: 4.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12.tar.gz
Algorithm Hash digest
SHA256 ecea26adb26b4232c0c2ca19ccbc0083a68344180bba2a600605538ce51a40a6
MD5 8c8cc8db2526153a397e9e64b4f9c0a2
BLAKE2b-256 99433291f1cc9106f4c63bdce7a8d0df5047fe8422a75b091c16b5e9355e0b11

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-win_arm64.whl
  • Upload date:
  • Size: 11.1 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 a538f7a82d061cee7be55542aca1d86d1393d55d81d4fcc314370f4340930d4f
MD5 d80b09f57a393c5c58cc107b21f68046
BLAKE2b-256 c0986beb4b351e472e5f4c4613f7c35a5290b8be2497e183825310c4c3a3984b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-win_amd64.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c87a162d61ab3adca47c03f7f717c68672edec7d1b5499e652331780fe74950d
MD5 ce76929ac7540931a9d539467545aa5d
BLAKE2b-256 33f19614e03e1cdcbf9437570b5400ced8a720b5db22b28d8e0f1bda429f660d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-win32.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-win32.whl
Algorithm Hash digest
SHA256 d0185894e038d7043ba8fd6aee7499ece6462dc0ea9f1e260c7451807c714c20
MD5 11c1bc95a886ada49c41d31600fccf69
BLAKE2b-256 eaf90ae446942c846b8266059ad8a30702a35afae55f5cdc54c5adf8d7afdc27

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9cae0f92bd5700d1213188b31cd3bdd2b315361296d10b96b8e2337d3d11f53e
MD5 f57a73506afc3c54563a3bcf279f9d93
BLAKE2b-256 727aa9ba7f98c7a575978698f4230c5e8cc54bbc761af34f560818f933dafa0c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 01da3988d225628b709493d7dc67c3b9b12c0210016b08690ef9bd27970b262b
MD5 9c9c6f28779c5d47dad131d98f35ca0e
BLAKE2b-256 25e7cc9f16fd0f3b5fddcbd7ec3d6ae30c8f3fde1047f32a4093a98d633c6570

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 dd8aed930da53780d22fc70bdf84452c843cf64f8cb4eb38984319c24c5cd5fd
MD5 5e74cc212d77698eeb21a9b0772d73ce
BLAKE2b-256 0d5918aa4e014debbf559670e4048e39260a85c7fcee84acfd761ac01e7b8d35

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e852ba9fdc890655e1d78f2df1499efbe0e54126bd405362154a75e2bde159c5
MD5 c29ef13233409985b57dc99e0c64cb2d
BLAKE2b-256 460633f41fe94403e2b755481cdfb9b7ef3e4e0ed031c4581124658d935d52b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_31_riscv64.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.31+ riscv64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 9ba3b8f1afd7e2e43d8943e55f249e13f9682fde09711644a6e7290eb4f3e339
MD5 2596fe75127073755eca5e039719937c
BLAKE2b-256 c28d49afab3645e31e12c590acb6d3b5b69d7aab5b81926dbaf7461f9441f37a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 83b2f4f2f3b1026b5fb449b467d9264bf22067b600f7b6f41fc5958909f449d0
MD5 451240d2f860400f4ce13f883b6082ff
BLAKE2b-256 e839c61d193b8a1daaa8977f7dea9e8d8ba866e02ea7b65d32f6861693aa4c12

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: Python 3, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 9e77c7e51c07fe396826d5969a5b846d9cd4c402535835fb6e21ce8b28fef847
MD5 f9e7330791d0fb5420e04a7c02ecd29a
BLAKE2b-256 85f6c669cf73f5152f623d34e69866a46d5e6185816b19fcd5b6dd8a2d299922

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 12.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 2849ea9f3484c3aca43a82f484210370319e7170df4dfe4843395ddf6c57bc33
MD5 a2503ddf6ff44ba7a507d53d962db486
BLAKE2b-256 34ff8a6d6cf4ccc23fd67060874e832c18919d1557a0611ebef03fdb01fff11e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 11.2 MB
  • Tags: Python 3, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b0c862b172d695db7598426b8af465e7e9ac00a3ea2a3630ee67eb82e366aaa6
MD5 d425555fc0d4d412c9c2834a317928ba
BLAKE2b-256 9d684201e8444f0894f21ab4aeeaee68aa4f10b51613514a20d80bd628d57e88

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 fb129f40f114f089ebe0ca56c0d251cf2061b17651d464bb6478dc01e69f11f5
MD5 cdb530e2a5352d62f99ef8c5ac0c83d4
BLAKE2b-256 11c1a606911aee04c324ddaa883ae418f3569792fd3c4a10c50e0dd0a2311e1e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 84a1630093121375a3e2a95b4a6dc7b59e2b4ee76216e32d81aae550a832d002
MD5 8e8218eea8d8abaa408a41752fb3090e
BLAKE2b-256 71e03310fc6d1b5e1fdea22bf3b1b807c7e187b581021b0d7d4514cccdb5fb71

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe87510d000220aa1ed530d4448a7c696a0cae1213e5ec30e5874287b66557b5
MD5 3638db947527f38f5fafb996c7f05e08
BLAKE2b-256 aaa4f828e9718d3dce1f5f11c39c4f65afd32783c8b2aebb2e3d259e492c47bd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 11.1 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e3bcd123364c3770b8e1b7baaf343cc99a35f197c5c6e8af79015c666c423a6c
MD5 8f3f626d2a1ed9d9ba5a1337aa468f10
BLAKE2b-256 ae08a317bc231fb9e7b93e4ef3089501e51922ff88d6936ce5cf870c4fe55419

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff-0.15.12-py3-none-linux_armv6l.whl
  • Upload date:
  • Size: 10.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.15.12-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 f86f176e188e94d6bdbc09f09bfd9dc729059ad93d0e7390b5a73efe19f8861c
MD5 4ad380b276873d5c69cff35357a4951a
BLAKE2b-256 c36ee78ffb61d4686f3d96ba3df2c801161843746dcbcbb17a1e927d4829312b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page