mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-19 19:15:30 +00:00

Revive https://github.com/astral-sh/ruff/pull/15341 as it got removed from the latest rebase in https://github.com/astral-sh/ruff/pull/15238.
26 lines
1.5 KiB
Markdown
26 lines
1.5 KiB
Markdown
# Ruff Formatter
|
|
|
|
The Ruff formatter is an extremely fast Python code formatter that ships as part of the `ruff`
|
|
CLI.
|
|
|
|
## Goals
|
|
|
|
The formatter is designed to be a drop-in replacement for [Black](https://github.com/psf/black),
|
|
but with an excessive focus on performance and direct integration with Ruff.
|
|
|
|
Specifically, the formatter is intended to emit near-identical output when run over Black-formatted
|
|
code. When run over extensive Black-formatted projects like Django and Zulip, > 99.9% of lines
|
|
are formatted identically. When migrating an existing project from Black to Ruff, you should expect
|
|
to see a few differences on the margins, but the vast majority of your code should be unchanged.
|
|
|
|
If you identify deviations in your project, spot-check them against the [intentional deviations](https://docs.astral.sh/ruff/formatter/black/)
|
|
enumerated below, as well as the [unintentional deviations](https://github.com/astral-sh/ruff/issues?q=is%3Aopen+is%3Aissue+label%3Aformatter)
|
|
filed in the issue tracker. If you've identified a new deviation, please [file an issue](https://github.com/astral-sh/ruff/issues/new).
|
|
|
|
When run over _non_-Black-formatted code, the formatter makes some different decisions than Black,
|
|
and so more deviations should be expected, especially around the treatment of end-of-line comments.
|
|
For details, see [Style Guide](https://docs.astral.sh/ruff/formatter/#style-guide).
|
|
|
|
## Getting started
|
|
|
|
Head to [The Ruff Formatter](https://docs.astral.sh/ruff/formatter/) for usage instructions and a comparison to Black.
|