Brent Westbrook
dec4154c8a
Document known lambda formatting deviations from Black ( #21954 )
...
Summary
--
Following #8179 , we now format long lambda expressions a bit more like
Black, preferring to keep long parameter lists on a single line, but we
go one step further to break the body itself across multiple lines and
parenthesize it if it's still too long. This PR documents both the
stable deviation that breaks parameters across multiple lines, and the
new preview deviation that breaks the body instead.
I also fixed a couple of typos in the section immediately above my
addition.
Test Plan
--
I tested all of the snippets here against `main` for the preview
behavior, our playground for the stable behavior, and Black's playground
for their behavior
2025-12-12 12:57:09 -05:00
Amethyst Reese
3f63ea4b50
Prepare 0.14.9 release ( #21927 )
...
- **Changelog and docs**
- **metadata**
2025-12-11 13:17:52 -08:00
Amethyst Reese
c055d665ef
Document range suppressions, reorganize suppression docs ( #21884 )
...
- **Reorganize suppression documentation, document range suppressions**
- **Note preview mode requirement**
Issue #21874 , #3711
2025-12-11 11:16:36 -08:00
Avasam
59b92b3522
Document `*.pyw` is included by default in preview ( #21885 )
...
Document `*.pyw` is included by default in preview mode.
Originally requested in https://github.com/astral-sh/ruff/issues/13246
and added in https://github.com/astral-sh/ruff/pull/20458
Co-authored-by: Amethyst Reese <amethyst@n7.gg>
2025-12-10 16:43:55 +00:00
mahiro
5df8a959f5
Update mkdocs-material to 9.7.0 (Insiders now free) ( #21797 )
2025-12-05 08:53:08 +01:00
Brent Westbrook
9d4f1c6ae2
Bump 0.14.8 ( #21791 )
2025-12-04 09:45:53 -05:00
Kieran Ryan
4686c36079
docs: Output file option with GitLab integration ( #21706 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2025-12-01 10:07:25 +00:00
renovate[bot]
d8d1464d96
Update dependency ruff to v0.14.7 ( #21709 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.14.6` -> `==0.14.7` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.14.7`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0147 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.14.6...0.14.7 )
Released on 2025-11-28.
##### Preview features
- \[`flake8-bandit`] Handle string literal bindings in
suspicious-url-open-usage (`S310`)
([#​21469](https://redirect.github.com/astral-sh/ruff/pull/21469 ))
- \[`pylint`] Fix `PLR1708` false positives on nested functions
([#​21177](https://redirect.github.com/astral-sh/ruff/pull/21177 ))
- \[`pylint`] Fix suppression for empty dict without tuple key
annotation (`PLE1141`)
([#​21290](https://redirect.github.com/astral-sh/ruff/pull/21290 ))
- \[`ruff`] Add rule `RUF066` to detect unnecessary class properties
([#​21535](https://redirect.github.com/astral-sh/ruff/pull/21535 ))
- \[`ruff`] Catch more dummy variable uses (`RUF052`)
([#​19799](https://redirect.github.com/astral-sh/ruff/pull/19799 ))
##### Bug fixes
- \[server] Set severity for non-rule diagnostics
([#​21559](https://redirect.github.com/astral-sh/ruff/pull/21559 ))
- \[`flake8-implicit-str-concat`] Avoid invalid fix in (`ISC003`)
([#​21517](https://redirect.github.com/astral-sh/ruff/pull/21517 ))
- \[`parser`] Fix panic when parsing IPython escape command expressions
([#​21480](https://redirect.github.com/astral-sh/ruff/pull/21480 ))
##### CLI
- Show partial fixability indicator in statistics output
([#​21513](https://redirect.github.com/astral-sh/ruff/pull/21513 ))
##### Contributors
- [@​mikeleppane](https://redirect.github.com/mikeleppane )
- [@​senekor](https://redirect.github.com/senekor )
- [@​ShaharNaveh](https://redirect.github.com/ShaharNaveh )
- [@​JumboBear](https://redirect.github.com/JumboBear )
- [@​prakhar1144](https://redirect.github.com/prakhar1144 )
- [@​tsvikas](https://redirect.github.com/tsvikas )
- [@​danparizher](https://redirect.github.com/danparizher )
- [@​chirizxc](https://redirect.github.com/chirizxc )
- [@​AlexWaygood](https://redirect.github.com/AlexWaygood )
- [@​MichaReiser](https://redirect.github.com/MichaReiser )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xOS45IiwidXBkYXRlZEluVmVyIjoiNDIuMTkuOSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-01 01:02:48 +00:00
Dylan
ecab623fb2
Bump 0.14.7 ( #21684 )
2025-11-28 14:34:27 -06:00
Tsvika Shapira
df66946b89
Show partial fixability indicator in statistics output ( #21513 )
...
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Micha Reiser <micha@reiser.io>
2025-11-27 18:03:36 +01:00
JumboBear
e2e21508dc
docs: update reference to the pre-commit hook ( #21645 )
...
## Summary
The reference to the pre-commit hook inside the tutorial was to the
legacy alias `ruff` instead of the current `ruff-check`.
Ref: https://github.com/astral-sh/ruff-pre-commit/pull/124
## Test Plan
Not applicable.
2025-11-26 16:57:18 -05:00
renovate[bot]
8327f262ff
Update dependency ruff to v0.14.6 ( #21603 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.14.5` -> `==0.14.6` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.14.6`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0146 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.14.5...0.14.6 )
Released on 2025-11-21.
##### Preview features
- \[`flake8-bandit`] Support new PySNMP API paths (`S508`, `S509`)
([#​21374](https://redirect.github.com/astral-sh/ruff/pull/21374 ))
##### Bug fixes
- Adjust own-line comment placement between branches
([#​21185](https://redirect.github.com/astral-sh/ruff/pull/21185 ))
- Avoid syntax error when formatting attribute expressions with outer
parentheses, parenthesized value, and trailing comment on value
([#​20418](https://redirect.github.com/astral-sh/ruff/pull/20418 ))
- Fix panic when formatting comments in unary expressions
([#​21501](https://redirect.github.com/astral-sh/ruff/pull/21501 ))
- Respect `fmt: skip` for compound statements on a single line
([#​20633](https://redirect.github.com/astral-sh/ruff/pull/20633 ))
- \[`refurb`] Fix `FURB103` autofix
([#​21454](https://redirect.github.com/astral-sh/ruff/pull/21454 ))
- \[`ruff`] Fix false positive for complex conversion specifiers in
`logging-eager-conversion` (`RUF065`)
([#​21464](https://redirect.github.com/astral-sh/ruff/pull/21464 ))
##### Rule changes
- \[`ruff`] Avoid false positive on `ClassVar` reassignment (`RUF012`)
([#​21478](https://redirect.github.com/astral-sh/ruff/pull/21478 ))
##### CLI
- Render hyperlinks for lint errors
([#​21514](https://redirect.github.com/astral-sh/ruff/pull/21514 ))
- Add a `ruff analyze` option to skip over imports in `TYPE_CHECKING`
blocks
([#​21472](https://redirect.github.com/astral-sh/ruff/pull/21472 ))
##### Documentation
- Limit `eglot-format` hook to eglot-managed Python buffers
([#​21459](https://redirect.github.com/astral-sh/ruff/pull/21459 ))
- Mention `force-exclude` in "Configuration > Python file discovery"
([#​21500](https://redirect.github.com/astral-sh/ruff/pull/21500 ))
##### Contributors
- [@​ntBre](https://redirect.github.com/ntBre )
- [@​dylwil3](https://redirect.github.com/dylwil3 )
- [@​gauthsvenkat](https://redirect.github.com/gauthsvenkat )
- [@​MichaReiser](https://redirect.github.com/MichaReiser )
- [@​thamer](https://redirect.github.com/thamer )
- [@​Ruchir28](https://redirect.github.com/Ruchir28 )
- [@​thejcannon](https://redirect.github.com/thejcannon )
- [@​danparizher](https://redirect.github.com/danparizher )
- [@​chirizxc](https://redirect.github.com/chirizxc )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNi4xIiwidXBkYXRlZEluVmVyIjoiNDIuMTYuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-24 10:47:43 +05:30
Brent Westbrook
59c6cb521d
Bump 0.14.6 ( #21558 )
2025-11-21 09:00:56 -05:00
Josh Cannon
ac2d07e83c
Mention `force-exclude` in "Configuration > Python file discovery" ( #21500 )
2025-11-17 17:15:07 +01:00
Thamer Mahmoud
c16ef709f6
Limit `eglot-format` hook to eglot-managed Python buffers ( #21459 )
...
Running `eglot-format` in buffers not managed by Eglot causes a
`jsonrpc-error` in Emacs 30. It may also display a
`documentFormattingProvider` warning when the server does not support
formatting. Add checks for both.
2025-11-17 13:52:31 +00:00
renovate[bot]
1436e688cc
Update dependency ruff to v0.14.5 ( #21489 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.14.4` -> `==0.14.5` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.14.5`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0145 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.14.4...0.14.5 )
Released on 2025-11-13.
##### Preview features
- \[`flake8-simplify`] Apply `SIM113` when index variable is of type
`int`
([#​21395](https://redirect.github.com/astral-sh/ruff/pull/21395 ))
- \[`pydoclint`] Fix false positive when Sphinx directives follow a
"Raises" section (`DOC502`)
([#​20535](https://redirect.github.com/astral-sh/ruff/pull/20535 ))
- \[`pydoclint`] Support NumPy-style comma-separated parameters
(`DOC102`)
([#​20972](https://redirect.github.com/astral-sh/ruff/pull/20972 ))
- \[`refurb`] Auto-fix annotated assignments (`FURB101`)
([#​21278](https://redirect.github.com/astral-sh/ruff/pull/21278 ))
- \[`ruff`] Ignore `str()` when not used for simple conversion
(`RUF065`)
([#​21330](https://redirect.github.com/astral-sh/ruff/pull/21330 ))
##### Bug fixes
- Fix syntax error false positive on alternative `match` patterns
([#​21362](https://redirect.github.com/astral-sh/ruff/pull/21362 ))
- \[`flake8-simplify`] Fix false positive for iterable initializers with
generator arguments (`SIM222`)
([#​21187](https://redirect.github.com/astral-sh/ruff/pull/21187 ))
- \[`pyupgrade`] Fix false positive on relative imports from local
`.builtins` module (`UP029`)
([#​21309](https://redirect.github.com/astral-sh/ruff/pull/21309 ))
- \[`pyupgrade`] Consistently set the deprecated tag (`UP035`)
([#​21396](https://redirect.github.com/astral-sh/ruff/pull/21396 ))
##### Rule changes
- \[`refurb`] Detect empty f-strings (`FURB105`)
([#​21348](https://redirect.github.com/astral-sh/ruff/pull/21348 ))
##### CLI
- Add option to provide a reason to `--add-noqa`
([#​21294](https://redirect.github.com/astral-sh/ruff/pull/21294 ))
- Add upstream linter URL to `ruff linter --output-format=json`
([#​21316](https://redirect.github.com/astral-sh/ruff/pull/21316 ))
- Add color to `--help`
([#​21337](https://redirect.github.com/astral-sh/ruff/pull/21337 ))
##### Documentation
- Add a new "Opening a PR" section to the contribution guide
([#​21298](https://redirect.github.com/astral-sh/ruff/pull/21298 ))
- Added the PyScripter IDE to the list of "Who is using Ruff?"
([#​21402](https://redirect.github.com/astral-sh/ruff/pull/21402 ))
- Update PyCharm setup instructions
([#​21409](https://redirect.github.com/astral-sh/ruff/pull/21409 ))
- \[`flake8-annotations`] Add link to `allow-star-arg-any` option
(`ANN401`)
([#​21326](https://redirect.github.com/astral-sh/ruff/pull/21326 ))
##### Other changes
- \[`configuration`] Improve error message when `line-length` exceeds
`u16::MAX`
([#​21329](https://redirect.github.com/astral-sh/ruff/pull/21329 ))
##### Contributors
- [@​njhearp](https://redirect.github.com/njhearp )
- [@​11happy](https://redirect.github.com/11happy )
- [@​hugovk](https://redirect.github.com/hugovk )
- [@​Gankra](https://redirect.github.com/Gankra )
- [@​ntBre](https://redirect.github.com/ntBre )
- [@​pyscripter](https://redirect.github.com/pyscripter )
- [@​danparizher](https://redirect.github.com/danparizher )
- [@​MichaReiser](https://redirect.github.com/MichaReiser )
- [@​henryiii](https://redirect.github.com/henryiii )
-
[@​charliecloudberry](https://redirect.github.com/charliecloudberry )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-17 10:53:23 +05:30
Brent Westbrook
87dafb8787
Bump 0.14.5 ( #21435 )
2025-11-13 14:37:31 -05:00
charliecloudberry
d49c326309
Update PyCharm setup instructions ( #21409 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2025-11-13 18:54:08 +01:00
Micha Reiser
7b237d316f
Add option to provide a reason to `--add-noqa` ( #21294 )
...
Co-authored-by: Claude <noreply@anthropic.com>
2025-11-11 14:03:46 +01:00
renovate[bot]
dd751e8d07
Update dependency ruff to v0.14.4 ( #21353 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-10 01:35:42 +00:00
Dylan
c7ff9826d6
Bump 0.14.4 ( #21306 )
2025-11-06 15:47:29 -06:00
Loïc Riegel
c6573b16ac
docs: revise Ruff setup instructions for Zed editor ( #20935 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2025-11-06 01:11:29 +00:00
renovate[bot]
666dd5fef1
Update dependency ruff to v0.14.3 ( #21239 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-03 03:13:38 +00:00
Amethyst Reese
8737a2d5f5
Bump v0.14.3 ( #21152 )
...
- **Upgrade to rooster==0.1.1**
- **Changelog for v0.14.3**
- **Bump v0.14.3**
2025-10-30 17:06:29 -07:00
renovate[bot]
d846a0319a
Update dependency mdformat-mkdocs to v4.4.2 ( #21088 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-27 07:47:46 +01:00
Brent Westbrook
83a3bc4ee9
Bump 0.14.2 ( #21051 )
2025-10-23 15:17:22 -04:00
Dylan
2bffef5966
Bump 0.14.1 ( #20925 )
2025-10-16 12:44:13 -05:00
Justin Su
fe4e3e2e75
Update setup instructions for Zed 0.208.0+ ( #20902 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2025-10-16 07:39:48 +00:00
Amethyst Reese
beea8cdfec
Bump 0.14.0 ( #20751 )
2025-10-07 11:05:47 -07:00
renovate[bot]
c895b29f23
Update dependency ruff to v0.13.3 ( #20707 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-06 08:26:22 +02:00
Dylan
188c0dce29
Bump 0.13.3 ( #20685 )
2025-10-02 14:14:05 -05:00
Brent Westbrook
2b1d3c60fa
Display diffs for `ruff format --check` and add support for different output formats ( #20443 )
...
## Summary
This PR uses the new `Diagnostic` type for rendering formatter
diagnostics. This allows the formatter to inherit all of the output
formats already implemented in the linter and ty. For example, here's
the new `full` output format, with the formatting diff displayed using
the same infrastructure as the linter:
<img width="592" height="364" alt="image"
src="https://github.com/user-attachments/assets/6d09817d-3f27-4960-aa8b-41ba47fb4dc0 "
/>
<details><summary>Resolved TODOs</summary>
<p>
~~There are several limitiations/todos here still, especially around the
`OutputFormat` type~~:
- [x] A few literal `todo!`s for the remaining `OutputFormat`s without
matching `DiagnosticFormat`s
- [x] The default output format is `full` instead of something more
concise like the current output
- [x] Some of the output formats (namely JSON) have information that
doesn't make much sense for these diagnostics
The first of these is definitely resolved, and I think the other two are
as well, based on discussion on the design document. In brief, we're
okay inheriting the default `OutputFormat` and can separate the global
option into `lint.output-format` and `format.output-format` in the
future, if needed; and we're okay including redundant information in the
non-human-readable output formats.
My last major concern is with the performance of the new code, as
discussed in the `Benchmarks` section below.
A smaller question is whether we should use `Diagnostic`s for formatting
errors too. I think the answer to this is yes, in line with changes
we're making in the linter too. I still need to implement that here.
</p>
</details>
<details><summary>Benchmarks</summary>
<p>
The values in the table are from a large benchmark on the CPython 3.10
code
base, which involves checking 2011 files, 1872 of which need to be
reformatted.
`stable` corresponds to the same code used on `main`, while
`preview-full` and
`preview-concise` use the new `Diagnostic` code gated behind `--preview`
for the
`full` and `concise` output formats, respectively. `stable-diff` uses
the
`--diff` to compare the two diff rendering approaches. See the full
hyperfine
command below for more details. For a sense of scale, the `stable`
output format
produces 1873 lines on stdout, compared to 855,278 for `preview-full`
and
857,798 for `stable-diff`.
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|:------------------|--------------:|---------:|---------:|-------------:|
| `stable` | 201.2 ± 6.8 | 192.9 | 220.6 | 1.00 |
| `preview-full` | 9113.2 ± 31.2 | 9076.1 | 9152.0 | 45.29 ± 1.54 |
| `preview-concise` | 214.2 ± 1.4 | 212.0 | 217.6 | 1.06 ± 0.04 |
| `stable-diff` | 3308.6 ± 20.2 | 3278.6 | 3341.8 | 16.44 ± 0.56 |
In summary, the `preview-concise` diagnostics are ~6% slower than the
stable
output format, increasing the average runtime from 201.2 ms to 214.2 ms.
The
`full` preview diagnostics are much more expensive, taking over 9113.2
ms to
complete, which is ~3x more expensive even than the stable diffs
produced by the
`--diff` flag.
My main takeaways here are:
1. Rendering `Edit`s is much more expensive than rendering the diffs
from `--diff`
2. Constructing `Edit`s actually isn't too bad
### Constructing `Edit`s
I also took a closer look at `Edit` construction by modifying the code
and
repeating the `preview-concise` benchmark and found that the main issue
is
constructing a `SourceFile` for use in the `Edit` rendering. Commenting
out the
`Edit` construction itself has basically no effect:
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|:----------|------------:|---------:|---------:|------------:|
| `stable` | 197.5 ± 1.6 | 195.0 | 200.3 | 1.00 |
| `no-edit` | 208.9 ± 2.2 | 204.8 | 212.2 | 1.06 ± 0.01 |
However, also omitting the source text from the `SourceFile`
construction
resolves the slowdown compared to `stable`. So it seems that copying the
full
source text into a `SourceFile` is the main cause of the slowdown for
non-`full`
diagnostics.
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|:-----------------|------------:|---------:|---------:|------------:|
| `stable` | 202.4 ± 2.9 | 197.6 | 207.9 | 1.00 |
| `no-source-text` | 202.7 ± 3.3 | 196.3 | 209.1 | 1.00 ± 0.02 |
### Rendering diffs
The main difference between `stable-diff` and `preview-full` seems to be
the diffing strategy we use from `similar`. Both versions use the same
algorithm, but in the existing
[`CodeDiff`](https://github.com/astral-sh/ruff/blob/main/crates/ruff_linter/src/source_kind.rs#L259 )
rendering for the `--diff` flag, we only do line-level diffing, whereas
for `Diagnostic`s we use `TextDiff::iter_inline_changes` to highlight
word-level changes too. Skipping the word diff for `Diagnostic`s closes
most of the gap:
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|:---|---:|---:|---:|---:|
| `stable-diff` | 3.323 ± 0.015 | 3.297 | 3.341 | 1.00 |
| `preview-full` | 3.654 ± 0.019 | 3.618 | 3.682 | 1.10 ± 0.01 |
(In some repeated runs, I've seen as small as a ~5% difference, down
from 10% in the table)
This doesn't actually change any of our snapshots, but it would
obviously change the rendered result in a terminal since we wouldn't
highlight the specific words that changed within a line.
Another much smaller change that we can try is removing the deadline
from the `iter_inline_changes` call. It looks like there's a fair amount
of overhead from the default 500 ms deadline for computing these, and
using `iter_inline_changes(op, None)` (`None` for the optional deadline
argument) improves the runtime quite a bit:
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|:---|---:|---:|---:|---:|
| `stable-diff` | 3.322 ± 0.013 | 3.298 | 3.341 | 1.00 |
| `preview-full` | 5.296 ± 0.030 | 5.251 | 5.366 | 1.59 ± 0.01 |
<hr>
<details><summary>hyperfine command</summary>
```shell
cargo build --release --bin ruff && hyperfine --ignore-failure --warmup 10 --export-markdown /tmp/table.md \
-n stable -n preview-full -n preview-concise -n stable-diff \
"./target/release/ruff format --check ./crates/ruff_linter/resources/test/cpython/ --no-cache" \
"./target/release/ruff format --check ./crates/ruff_linter/resources/test/cpython/ --no-cache --preview --output-format=full" \
"./target/release/ruff format --check ./crates/ruff_linter/resources/test/cpython/ --no-cache --preview --output-format=concise" \
"./target/release/ruff format --check ./crates/ruff_linter/resources/test/cpython/ --no-cache --diff"
```
</details>
</p>
</details>
## Test Plan
Some new CLI tests and manual testing
2025-09-30 12:00:51 -04:00
renovate[bot]
e5faf6c268
Update dependency ruff to v0.13.2 ( #20622 )
...
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842 ).
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.13.1` -> `==0.13.2` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.13.2`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0132 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.13.1...0.13.2 )
Released on 2025-09-25.
##### Preview features
- \[`flake8-async`] Implement `blocking-path-method` (`ASYNC240`)
([#​20264](https://redirect.github.com/astral-sh/ruff/pull/20264 ))
- \[`flake8-bugbear`] Implement `map-without-explicit-strict` (`B912`)
([#​20429](https://redirect.github.com/astral-sh/ruff/pull/20429 ))
- \[`flake8-bultins`] Detect class-scope builtin shadowing in
decorators, default args, and attribute initializers (`A003`)
([#​20178](https://redirect.github.com/astral-sh/ruff/pull/20178 ))
- \[`ruff`] Implement `logging-eager-conversion` (`RUF065`)
([#​19942](https://redirect.github.com/astral-sh/ruff/pull/19942 ))
- Include `.pyw` files by default when linting and formatting
([#​20458](https://redirect.github.com/astral-sh/ruff/pull/20458 ))
##### Bug fixes
- Deduplicate input paths
([#​20105](https://redirect.github.com/astral-sh/ruff/pull/20105 ))
- \[`flake8-comprehensions`] Preserve trailing commas for single-element
lists (`C409`)
([#​19571](https://redirect.github.com/astral-sh/ruff/pull/19571 ))
- \[`flake8-pyi`] Avoid syntax error from conflict with `PIE790`
(`PYI021`)
([#​20010](https://redirect.github.com/astral-sh/ruff/pull/20010 ))
- \[`flake8-simplify`] Correct fix for positive `maxsplit` without
separator (`SIM905`)
([#​20056](https://redirect.github.com/astral-sh/ruff/pull/20056 ))
- \[`pyupgrade`] Fix `UP008` not to apply when `__class__` is a local
variable
([#​20497](https://redirect.github.com/astral-sh/ruff/pull/20497 ))
- \[`ruff`] Fix `B004` to skip invalid `hasattr`/`getattr` calls
([#​20486](https://redirect.github.com/astral-sh/ruff/pull/20486 ))
- \[`ruff`] Replace `-nan` with `nan` when using the value to construct
a `Decimal` (`FURB164` )
([#​20391](https://redirect.github.com/astral-sh/ruff/pull/20391 ))
##### Documentation
- Add 'Finding ways to help' to CONTRIBUTING.md
([#​20567](https://redirect.github.com/astral-sh/ruff/pull/20567 ))
- Update import path to `ruff-wasm-web`
([#​20539](https://redirect.github.com/astral-sh/ruff/pull/20539 ))
- \[`flake8-bandit`] Clarify the supported hashing functions (`S324`)
([#​20534](https://redirect.github.com/astral-sh/ruff/pull/20534 ))
##### Other changes
- \[`playground`] Allow hover quick fixes to appear for overlapping
diagnostics
([#​20527](https://redirect.github.com/astral-sh/ruff/pull/20527 ))
- \[`playground`] Fix non‑BMP code point handling in quick fixes and
markers
([#​20526](https://redirect.github.com/astral-sh/ruff/pull/20526 ))
##### Contributors
- [@​BurntSushi](https://redirect.github.com/BurntSushi )
- [@​mtshiba](https://redirect.github.com/mtshiba )
- [@​second-ed](https://redirect.github.com/second-ed )
- [@​danparizher](https://redirect.github.com/danparizher )
- [@​ShikChen](https://redirect.github.com/ShikChen )
- [@​PieterCK](https://redirect.github.com/PieterCK )
- [@​GDYendell](https://redirect.github.com/GDYendell )
- [@​RazerM](https://redirect.github.com/RazerM )
- [@​TaKO8Ki](https://redirect.github.com/TaKO8Ki )
- [@​amyreese](https://redirect.github.com/amyreese )
- [@​ntbre](https://redirect.github.com/ntBre )
- [@​MichaReiser](https://redirect.github.com/MichaReiser )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-29 08:59:50 +02:00
renovate[bot]
65e805de62
Update dependency PyYAML to v6.0.3 ( #20621 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-29 08:55:39 +02:00
Brent Westbrook
b0bdf0334e
Bump 0.13.2 ( #20576 )
2025-09-25 10:37:46 -04:00
renovate[bot]
d12324f06e
Update dependency ruff to v0.13.1 ( #20498 )
2025-09-22 09:02:05 +02:00
Dylan
7b40428b6a
Bump 0.13.1 ( #20473 )
2025-09-18 19:25:17 +00:00
renovate[bot]
326c878adb
Update dependency ruff to v0.13.0 ( #20396 )
2025-09-14 21:44:23 -04:00
Brent Westbrook
a1fdd66f10
Bump 0.13.0 ( #20336 )
2025-09-10 12:11:22 -04:00
Loïc Riegel
7a75702237
Ignore deprecated rules unless selected by exact code ( #20167 )
...
<!--
Thank you for contributing to Ruff/ty! To help us out with reviewing,
please consider the following:
- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title? (Please prefix
with `[ty]` for ty pull
requests.)
- Does this pull request include references to any relevant issues?
-->
## Summary
Closes #18349
After this change:
- All deprecated rules are deselected by default
- They are only selected if the user specifically selects them by code,
e.g. `--select UP038`
- Thus, `--select ALL --select UP --select UP0` won't select the
deprecated rule UP038
- Documented the change in version policy. From now on, deprecating a
rule should increase the minor version
## Test Plan
Integration tests in "integration_tests.rs"
Also tested with a temporary test package:
```
~> ../../ruff/target/debug/ruff.exe check --select UP038
warning: Rule `UP038` is deprecated and will be removed in a future release.
warning: Detected debug build without --no-cache.
UP038 Use `X | Y` in `isinstance` call instead of `(X, Y)`
--> main.py:2:11
|
1 | def main():
2 | print(isinstance(25, (str, int)))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
help: Convert to `X | Y`
Found 1 error.
No fixes available (1 hidden fix can be enabled with the `--unsafe-fixes` option).
~> ../../ruff/target/debug/ruff.exe check --select UP03
warning: Detected debug build without --no-cache.
All checks passed!
~> ../../ruff/target/debug/ruff.exe check --select UP0
warning: Detected debug build without --no-cache.
All checks passed!
~> ../../ruff/target/debug/ruff.exe check --select UP
warning: Detected debug build without --no-cache.
All checks passed!
~> ../../ruff/target/debug/ruff.exe check --select ALL
# warnings and errors, but because of other errors, UP038 was deselected
```
2025-09-10 09:00:27 -04:00
Dylan
512395f4e6
Stabilize new strategy for classifying imports as first party ( #20268 )
...
This stabilizes the behavior introduced in #16565 which (roughly) tries
to match an import like `import a.b.c` to an actual directory path
`a/b/c` in order to label it as first-party, rather than simply looking
for a directory `a`.
Mainly this affects the sorting of imports in the presence of namespace
packages, but a few other rules are affected as well.
2025-09-10 09:00:27 -04:00
Zanie Blue
9cdac2d6fb
Add support for using uv as an alternative formatter backend ( #19665 )
...
This adds a new `backend: internal | uv` option to the LSP
`FormatOptions` allowing users to perform document and range formatting
operations though uv. The idea here is to prototype a solution for users
to transition to a `uv format` command without encountering version
mismatches (and consequently, formatting differences) between the LSP's
version of `ruff` and uv's version of `ruff`.
The primarily alternative to this would be to use uv to discover the
`ruff` version used to start the LSP in the first place. However, this
would increase the scope of a minimal `uv format` command beyond "run a
formatter", and raise larger questions about how uv should be used to
coordinate toolchain discovery. I think those are good things to
explore, but I'm hesitant to let them block a `uv format`
implementation. Another downside of using uv to discover `ruff`, is that
it needs to be implemented _outside_ the LSP; e.g., we'd need to change
the instructions on how to run the LSP and implement it in each editor
integration, like the VS Code plugin.
---------
Co-authored-by: Dhruv Manilawala <dhruvmanila@gmail.com>
2025-09-09 20:39:53 +05:30
renovate[bot]
f893b19930
Update dependency ruff to v0.12.12 ( #20293 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.12.11` -> `==0.12.12` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.12.12`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#01212 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.12.11...0.12.12 )
##### Preview features
- Show fixes by default
([#​19919](https://redirect.github.com/astral-sh/ruff/pull/19919 ))
- \[`airflow`] Convert `DatasetOrTimeSchedule(datasets=...)` to
`AssetOrTimeSchedule(assets=...)` (`AIR311`)
([#​20202](https://redirect.github.com/astral-sh/ruff/pull/20202 ))
- \[`airflow`] Improve the `AIR002` error message
([#​20173](https://redirect.github.com/astral-sh/ruff/pull/20173 ))
- \[`airflow`] Move `airflow.operators.postgres_operator.Mapping` from
`AIR302` to `AIR301`
([#​20172](https://redirect.github.com/astral-sh/ruff/pull/20172 ))
- \[`flake8-async`] Implement `blocking-input` rule (`ASYNC250`)
([#​20122](https://redirect.github.com/astral-sh/ruff/pull/20122 ))
- \[`flake8-use-pathlib`] Make `PTH119` and `PTH120` fixes unsafe
because they can change behavior
([#​20118](https://redirect.github.com/astral-sh/ruff/pull/20118 ))
- \[`pylint`] Add U+061C to `PLE2502`
([#​20106](https://redirect.github.com/astral-sh/ruff/pull/20106 ))
- \[`ruff`] Fix false negative for empty f-strings in `deque` calls
(`RUF037`)
([#​20109](https://redirect.github.com/astral-sh/ruff/pull/20109 ))
##### Bug fixes
- Less confidently mark f-strings as empty when inferring truthiness
([#​20152](https://redirect.github.com/astral-sh/ruff/pull/20152 ))
- \[`fastapi`] Fix false positive for paths with spaces around
parameters (`FAST003`)
([#​20077](https://redirect.github.com/astral-sh/ruff/pull/20077 ))
- \[`flake8-comprehensions`] Skip `C417` when lambda contains
`yield`/`yield from`
([#​20201](https://redirect.github.com/astral-sh/ruff/pull/20201 ))
- \[`perflint`] Handle tuples in dictionary comprehensions (`PERF403`)
([#​19934](https://redirect.github.com/astral-sh/ruff/pull/19934 ))
##### Rule changes
- \[`pycodestyle`] Preserve return type annotation for `ParamSpec`
(`E731`)
([#​20108](https://redirect.github.com/astral-sh/ruff/pull/20108 ))
##### Documentation
- Add fix safety sections to docs
([#​17490](https://redirect.github.com/astral-sh/ruff/pull/17490 ),[#​17499](https://redirect.github.com/astral-sh/ruff/pull/17499 ))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45MS4xIiwidXBkYXRlZEluVmVyIjoiNDEuOTEuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-08 11:03:19 +05:30
renovate[bot]
22ca5dd890
Update dependency mdformat-mkdocs to v4.4.1 ( #20299 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
|
[mdformat-mkdocs](https://redirect.github.com/kyleking/mdformat-mkdocs )
([changelog](https://redirect.github.com/kyleking/mdformat-mkdocs/releases ))
| `==4.3.0` -> `==4.4.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>kyleking/mdformat-mkdocs (mdformat-mkdocs)</summary>
###
[`v4.4.1`](https://redirect.github.com/KyleKing/mdformat-mkdocs/releases/tag/v4.4.1 )
[Compare
Source](https://redirect.github.com/kyleking/mdformat-mkdocs/compare/v4.4.0...v4.4.1 )
##### What's Changed
-
fix([#​56](https://redirect.github.com/kyleking/mdformat-mkdocs/issues/56 )):
narrowly scope escape\_deflist by
[@​KyleKing](https://redirect.github.com/KyleKing ) in
[KyleKing#57](https://redirect.github.com/KyleKing/mdformat-mkdocs/pull/57 )
**Full Changelog**:
<https://github.com/KyleKing/mdformat-mkdocs/compare/v4.4.0...v4.4.1 >
###
[`v4.4.0`](https://redirect.github.com/KyleKing/mdformat-mkdocs/releases/tag/v4.4.0 )
[Compare
Source](https://redirect.github.com/kyleking/mdformat-mkdocs/compare/v4.3.0...v4.4.0 )
##### What's Changed
-
fix([#​54](https://redirect.github.com/kyleking/mdformat-mkdocs/issues/54 )):
add 4-space indented deflists by
[@​KyleKing](https://redirect.github.com/KyleKing ) in
[KyleKing#55](https://redirect.github.com/KyleKing/mdformat-mkdocs/pull/55 )
**Full Changelog**:
<https://github.com/KyleKing/mdformat-mkdocs/compare/v4.3.0...v4.4.0 >
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45MS4xIiwidXBkYXRlZEluVmVyIjoiNDEuOTEuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-08 11:02:55 +05:30
Dylan
c6516e9b60
Bump 0.12.12 ( #20242 )
2025-09-04 11:35:56 -05:00
renovate[bot]
c71ce006c4
Update dependency ruff to v0.12.11 ( #20184 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff )
([source](https://redirect.github.com/astral-sh/ruff ),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md ))
| `==0.12.10` -> `==0.12.11` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.12.11`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#01211 )
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.12.10...0.12.11 )
##### Preview features
- \[`airflow`] Extend `AIR311` and `AIR312` rules
([#​20082](https://redirect.github.com/astral-sh/ruff/pull/20082 ))
- \[`airflow`] Replace wrong path `airflow.io.storage` with
`airflow.io.store` (`AIR311`)
([#​20081](https://redirect.github.com/astral-sh/ruff/pull/20081 ))
- \[`flake8-async`] Implement
`blocking-http-call-httpx-in-async-function` (`ASYNC212`)
([#​20091](https://redirect.github.com/astral-sh/ruff/pull/20091 ))
- \[`flake8-logging-format`] Add auto-fix for f-string logging calls
(`G004`)
([#​19303](https://redirect.github.com/astral-sh/ruff/pull/19303 ))
- \[`flake8-use-pathlib`] Add autofix for `PTH211`
([#​20009](https://redirect.github.com/astral-sh/ruff/pull/20009 ))
- \[`flake8-use-pathlib`] Make `PTH100` fix unsafe because it can change
behavior
([#​20100](https://redirect.github.com/astral-sh/ruff/pull/20100 ))
##### Bug fixes
- \[`pyflakes`, `pylint`] Fix false positives caused by `__class__` cell
handling (`F841`, `PLE0117`)
([#​20048](https://redirect.github.com/astral-sh/ruff/pull/20048 ))
- \[`pyflakes`] Fix `allowed-unused-imports` matching for top-level
modules (`F401`)
([#​20115](https://redirect.github.com/astral-sh/ruff/pull/20115 ))
- \[`ruff`] Fix false positive for t-strings in `default-factory-kwarg`
(`RUF026`)
([#​20032](https://redirect.github.com/astral-sh/ruff/pull/20032 ))
- \[`ruff`] Preserve relative whitespace in multi-line expressions
(`RUF033`)
([#​19647](https://redirect.github.com/astral-sh/ruff/pull/19647 ))
##### Rule changes
- \[`ruff`] Handle empty t-strings in
`unnecessary-empty-iterable-within-deque-call` (`RUF037`)
([#​20045](https://redirect.github.com/astral-sh/ruff/pull/20045 ))
##### Documentation
- Fix incorrect `D413` links in docstrings convention FAQ
([#​20089](https://redirect.github.com/astral-sh/ruff/pull/20089 ))
- \[`flake8-use-pathlib`] Update links to the table showing the
correspondence between `os` and `pathlib`
([#​20103](https://redirect.github.com/astral-sh/ruff/pull/20103 ))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/astral-sh/ruff ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45MS4xIiwidXBkYXRlZEluVmVyIjoiNDEuOTEuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-01 08:51:28 +02:00
Brent Westbrook
c2bc15bc15
Bump 0.12.11 ( #20136 )
2025-08-28 09:45:01 -04:00
Avasam
911d5cc973
Fix incorrect D413 links in docstrings convention FAQ ( #20089 )
...
## Summary
D413 in this section was incorrectly linking to D410.
I haven't checked if this issue happens anywhere else in the docs.
## Test Plan
Look at docs
2025-08-26 10:24:58 +05:30
renovate[bot]
862d2d0687
Update dependency ruff to v0.12.10 ( #20062 )
2025-08-24 22:19:44 -04:00
Dylan
c68ff8d90b
Bump 0.12.10 ( #20025 )
2025-08-21 13:09:31 -05:00