chore(deps): update dependency lint/ruff to v0.0.291
Metadata
Current evaluation
Merged in #408 via commit 1b56612, updating lint/ruff from 0.0.280 to 0.0.291.
Resolution: closed resolved
Reason: PR #408 was merged as commit 1b56612, changing the pinned Ruff dependency from version 0.0.280 to 0.0.291.
Evaluated by: mr-cal-bot
No scores available.
Issue body
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [lint/ruff](https://docs.astral.sh/ruff) ([source](https://togithub.com/astral-sh/ruff), [changelog](https://togithub.com/astral-sh/ruff/releases)) | `==0.0.280` -> `==0.0.291` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) |
---
### Release Notes
<details>
<summary>astral-sh/ruff (lint/ruff)</summary>
### [`v0.0.291`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.291)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.290...v0.0.291)
<!-- Release notes generated using configuration in .github/release.yml at v0.0.291 -->
##### What's Changed
##### Deprecations
**The `format` command-line argument and configuration option has been renamed to `output-format`.** While Ruff will continue to respect `format` when passed as a command-line argument or configuration option, this backwards-compatible support will be dropped in a future release. See: [https://github.com/astral-sh/ruff/pull/7514](https://togithub.com/astral-sh/ruff/pull/7514).
##### Rules
- \[`flake8-bandit`] Implement `S201`: `flask-debug-true` by [@​mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7503](https://togithub.com/astral-sh/ruff/pull/7503)
- \[`flake8-bandit`] Implement `S507`: `ssh_no_host_key_verification` by [@​mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7528](https://togithub.com/astral-sh/ruff/pull/7528)
- \[`flake8-logging`] Implement `LOG002`: `invalid-get-logger-argument` by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7399](https://togithub.com/astral-sh/ruff/pull/7399)
- \[`flake8-logging`] Implement `LOG007`: `exception-without-exc-info` by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7410](https://togithub.com/astral-sh/ruff/pull/7410)
- \[`refurb`] Implement `FURB140`: `reimplemented-starmap` by [@​SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) in [https://github.com/astral-sh/ruff/pull/7253](https://togithub.com/astral-sh/ruff/pull/7253)
- \[`refurb`] Implement `FURB148`: `unnecessary-enumerate` by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7454](https://togithub.com/astral-sh/ruff/pull/7454)
- \[`ruff`] Detect `asyncio.get_running_loop` calls in RUF006 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7562](https://togithub.com/astral-sh/ruff/pull/7562)
##### Settings
- Show `--no-X` variants in CLI help by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7504](https://togithub.com/astral-sh/ruff/pull/7504)
- Rename `format` option to `output-format` by [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/7514](https://togithub.com/astral-sh/ruff/pull/7514)
- Enable tab completion for `ruff rule` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7560](https://togithub.com/astral-sh/ruff/pull/7560)
##### Bug Fixes
- Add padding to prevent some autofix errors by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7461](https://togithub.com/astral-sh/ruff/pull/7461)
- Remove parentheses when rewriting assert calls to statements by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7464](https://togithub.com/astral-sh/ruff/pull/7464)
- Avoid flagging starred elements in C402 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7466](https://togithub.com/astral-sh/ruff/pull/7466)
- Extend `bad-dunder-method-name` to permit `attrs` dunders by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7472](https://togithub.com/astral-sh/ruff/pull/7472)
- Avoid N802 violations for [@​overload](https://togithub.com/overload) methods by [@​JonathanPlasse](https://togithub.com/JonathanPlasse) in [https://github.com/astral-sh/ruff/pull/7498](https://togithub.com/astral-sh/ruff/pull/7498)
- Avoid flagging starred expressions in UP007 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7505](https://togithub.com/astral-sh/ruff/pull/7505)
- Ensure that LOG007 only triggers on `.exception()` calls by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7524](https://togithub.com/astral-sh/ruff/pull/7524)
- Use strict sorted and union for NoQA mapping insertion by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7531](https://togithub.com/astral-sh/ruff/pull/7531)
- Avoid inserting imports directly after continuation by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7553](https://togithub.com/astral-sh/ruff/pull/7553)
- Add padding in `PERF102` fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7554](https://togithub.com/astral-sh/ruff/pull/7554)
- Avoid invalid fix for parenthesized values in F601 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7559](https://togithub.com/astral-sh/ruff/pull/7559)
- Treat `os.error` as an `OSError` alias by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7582](https://togithub.com/astral-sh/ruff/pull/7582)
- Extend `bad-dunder-method-name` to permit `__html__` by [@​jaap3](https://togithub.com/jaap3) in [https://github.com/astral-sh/ruff/pull/7492](https://togithub.com/astral-sh/ruff/pull/7492)
- Fix stylist indentation with a formfeed by [@​konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7489](https://togithub.com/astral-sh/ruff/pull/7489)
##### New Contributors
- [@​MicaelJarniac](https://togithub.com/MicaelJarniac) made their first contribution in [https://github.com/astral-sh/ruff/pull/5498](https://togithub.com/astral-sh/ruff/pull/5498)
- [@​maheshsaripalli9](https://togithub.com/maheshsaripalli9) made their first contribution in [https://github.com/astral-sh/ruff/pull/7552](https://togithub.com/astral-sh/ruff/pull/7552)
- [@​T-256](https://togithub.com/T-256) made their first contribution in [https://github.com/astral-sh/ruff/pull/7585](https://togithub.com/astral-sh/ruff/pull/7585)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.290...v0.0.291
### [`v0.0.290`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.290)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.289...v0.0.290)
<!-- Release notes generated using configuration in .github/release.yml at v0.0.290 -->
#### What's Changed
##### Rules
- Update `deprecated-import` lists based on recent `typing-extensions` release by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7356](https://togithub.com/astral-sh/ruff/pull/7356)
- Add support for bounds, constraints, and explicit variance on generic type variables to `UP040` by [@​nathanwhit](https://togithub.com/nathanwhit) in [https://github.com/astral-sh/ruff/pull/6749](https://togithub.com/astral-sh/ruff/pull/6749)
##### Settings
- Show rule codes in shell tab completion by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7375](https://togithub.com/astral-sh/ruff/pull/7375)
##### Bug Fixes
- Parenthesize single-generator arguments when adding reverse keyword by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7365](https://togithub.com/astral-sh/ruff/pull/7365)
- Invert reverse argument regardless of whether it's a boolean by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7372](https://togithub.com/astral-sh/ruff/pull/7372)
- Extend `C416` to catch tuple unpacking by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7363](https://togithub.com/astral-sh/ruff/pull/7363)
- Allow `NURSERY` rule selctor in JSON Schema by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7374](https://togithub.com/astral-sh/ruff/pull/7374)
- Avoid flagging single-quoted docstrings with continuations for multi-line rules by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7392](https://togithub.com/astral-sh/ruff/pull/7392)
- Treat whitespace-only line as blank for `D411` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7351](https://togithub.com/astral-sh/ruff/pull/7351)
##### Preview
[*What's this section?*](https://beta.ruff.rs/docs/preview/)
- \[`flake8-logging`] New rule `undocumented-warn` (`LOG009`) by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7249](https://togithub.com/astral-sh/ruff/pull/7249)
- \[`flake8-logging`] New rule `direct-logger-instantiation` (`LOG001`) by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7397](https://togithub.com/astral-sh/ruff/pull/7397)
- \[`flake8-logging`] New plugin `flake8_logging` (`LOG`) by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7249](https://togithub.com/astral-sh/ruff/pull/7249)
- \[`perflint`] Add `manual-dict-comprehsion` (`PERF403`) by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/6132](https://togithub.com/astral-sh/ruff/pull/6132)
- \[`pylint`] New rule `too-many-public-methods` (`PLR0904`) by [@​jelly](https://togithub.com/jelly) in [https://github.com/astral-sh/ruff/pull/6179](https://togithub.com/astral-sh/ruff/pull/6179)
- \[`refurb`] New rule `no-slice-copy` (`FURB145`) by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7007](https://togithub.com/astral-sh/ruff/pull/7007)
- Add warnings for nursery and preview rule selection by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7210](https://togithub.com/astral-sh/ruff/pull/7210)
- Remove the `PREVIEW` rule selector by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7389](https://togithub.com/astral-sh/ruff/pull/7389)
- [`pre-commit` support](https://togithub.com/astral-sh/ruff-pre-commit#using-ruffs-formatter-unstable) for the [alpha formatter](https://togithub.com/astral-sh/ruff/discussions/7310) by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff-pre-commit/pull/50](https://togithub.com/astral-sh/ruff-pre-commit/pull/50)
#### New Contributors
- [@​nathanwhit](https://togithub.com/nathanwhit) made their first contribution in [https://github.com/astral-sh/ruff/pull/6749](https://togithub.com/astral-sh/ruff/pull/6749)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.289...v0.0.290
### [`v0.0.289`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.289)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.288...v0.0.289)
<!-- Release notes generated using configuration in .github/release.yml at v0.0.289 -->
#### What's Changed
##### Bug Fixes
- Invert condition for < and <= in outdated version block by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7284](https://togithub.com/astral-sh/ruff/pull/7284)
- Ignore `@override` method when enforcing `bad-dunder-name` rule by [@​brendonh8](https://togithub.com/brendonh8) in [https://github.com/astral-sh/ruff/pull/7224](https://togithub.com/astral-sh/ruff/pull/7224)
- Add `NotebookIndex` to the cache by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/6863](https://togithub.com/astral-sh/ruff/pull/6863)
##### Preview
This release includes a new preview mode which can be used to opt-in to unstable rules and features.
- Update rule selection to respect preview mode by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7195](https://togithub.com/astral-sh/ruff/pull/7195)
- Display the `--preview` option in the CLI help menu by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7274](https://togithub.com/astral-sh/ruff/pull/7274)
See the [documentation](https://beta.ruff.rs/docs/preview/) and [versioning discussion](https://togithub.com/astral-sh/ruff/discussions/6998) for more details.
#### New Contributors
- [@​brendonh8](https://togithub.com/brendonh8) made their first contribution in [https://github.com/astral-sh/ruff/pull/7224](https://togithub.com/astral-sh/ruff/pull/7224)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.288...v0.0.289
### [`v0.0.288`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.288)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.287...v0.0.288)
#### What's Changed
##### Breaking Changes
- Remove emoji identifier support by [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/7212](https://togithub.com/astral-sh/ruff/pull/7212)
- Location agnostic GitLab fingerprints by [@​gregersn](https://togithub.com/gregersn) in [https://github.com/astral-sh/ruff/pull/7203](https://togithub.com/astral-sh/ruff/pull/7203)
##### Rules
- \[`ruff`]
- `RUF001`: Remove autofix for ambiguous unicode rule by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7168](https://togithub.com/astral-sh/ruff/pull/7168)
##### Settings
- \[`flake8-self`]
- `SLF001`: Add `extend-ignore-names` option by [@​jaap3](https://togithub.com/jaap3) in [https://github.com/astral-sh/ruff/pull/7194](https://togithub.com/astral-sh/ruff/pull/7194)
##### Bug Fixes
- \[`flake8-bugbear`]
- `B006`: Add newline if fix is at end-of-file by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7090](https://togithub.com/astral-sh/ruff/pull/7090)
- `B006`: Fix function docstring followed by whitespace but no newline by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7160](https://togithub.com/astral-sh/ruff/pull/7160)
- `B009`: Parenthesize expressions when converting to attribute access by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7091](https://togithub.com/astral-sh/ruff/pull/7091)
- `B009`, `B010`: Fix `getattr` calls on `int` literals by [@​density](https://togithub.com/density) in [https://github.com/astral-sh/ruff/pull/7057](https://togithub.com/astral-sh/ruff/pull/7057)
- `B013`: Supported starred exceptions in length-one tuple detection by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7080](https://togithub.com/astral-sh/ruff/pull/7080)
- `B013`: Insert required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7148](https://togithub.com/astral-sh/ruff/pull/7148)
- \[`flake8-comprehensions`]
- `C402`: Add required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7152](https://togithub.com/astral-sh/ruff/pull/7152)
- `C404` Add required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7185](https://togithub.com/astral-sh/ruff/pull/7185)
- `C416` Add required space to fix by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7204](https://togithub.com/astral-sh/ruff/pull/7204)
- `C417`: Support length-2 lists in dictionary comprehension rewrites by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7081](https://togithub.com/astral-sh/ruff/pull/7081)
- `C417`: Parenthesize targets if necessary by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7189](https://togithub.com/astral-sh/ruff/pull/7189)
- \[`flake8-return`]
- `RET504`: Add space after return when inlining number by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7116](https://togithub.com/astral-sh/ruff/pull/7116)
- \[`flake8-simplify`]
- `SIM105`: Avoid attempting to fix violations with multi-statement lines by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7191](https://togithub.com/astral-sh/ruff/pull/7191)
- `SIM105` Avoid inserting an extra newline for fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7221](https://togithub.com/astral-sh/ruff/pull/7221)
- `SIM118`: Add required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7150](https://togithub.com/astral-sh/ruff/pull/7150)
- `SIM118`: delete `.keys()` rather than replace expression by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7223](https://togithub.com/astral-sh/ruff/pull/7223)
- `SIM210`: Retain parentheses when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7118](https://togithub.com/astral-sh/ruff/pull/7118)
- `SIM222`: Add parentheses when simplifying conditions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7117](https://togithub.com/astral-sh/ruff/pull/7117)
- `SIM300`: Add required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7167](https://togithub.com/astral-sh/ruff/pull/7167)
- \[`flake8-pytest-style`]
- `PT018`: Split within `not`, rather than outside of `not` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7151](https://togithub.com/astral-sh/ruff/pull/7151)
- \[`flynt`]
- `FLY002`: Add required space for fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7222](https://togithub.com/astral-sh/ruff/pull/7222)
- \[`numpy`]
- `NPY001`: Avoid attempting to fix with overridden builtins by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7187](https://togithub.com/astral-sh/ruff/pull/7187)
- `NPY003`: Use symbol import for replacement by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7083](https://togithub.com/astral-sh/ruff/pull/7083)
- \[`pandas-vet`]
- `PD002`: Handle parenthesized calls by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7111](https://togithub.com/astral-sh/ruff/pull/7111)
- \[`pep8-naming`]
- `N806`: Avoid triggering on `TypeAlias` assignments by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7119](https://togithub.com/astral-sh/ruff/pull/7119)
- \[`pydocstyle`]
- `D204`: Fix when there's a semicolon after a docstring by [@​konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7174](https://togithub.com/astral-sh/ruff/pull/7174)
- `D213`, `D400`: Ignore single quote docstrings with newline escape by [@​konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7173](https://togithub.com/astral-sh/ruff/pull/7173)
- `D417`: Fix error with function docstrings with dashed lines by [@​eronnen](https://togithub.com/eronnen) in [https://github.com/astral-sh/ruff/pull/7251](https://togithub.com/astral-sh/ruff/pull/7251)
- \[`pyflakes`]
- `F401`: Avoid panic with noqa import name by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7260](https://togithub.com/astral-sh/ruff/pull/7260)
- `F841`: Expand fixes to handle parenthesized targets by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7110](https://togithub.com/astral-sh/ruff/pull/7110)
- \[`pylint`]
- `PLW3301`: Copy the starred argument as is for autofix by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7177](https://togithub.com/astral-sh/ruff/pull/7177)
- \[`pyupgrade`]
- `UP006` and `UP007`: Add required space to fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7202](https://togithub.com/astral-sh/ruff/pull/7202)
- `UP007`: Avoid attempting to fix invalid `Optional` annotations by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7079](https://togithub.com/astral-sh/ruff/pull/7079)
- `UP007`: Fix syntax error in autofix by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7137](https://togithub.com/astral-sh/ruff/pull/7137)
- `UP021`: Avoid adding duplicate `text` keyword to `subprocess.run` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7112](https://togithub.com/astral-sh/ruff/pull/7112)
- `UP022`: Avoid adding duplicate `capture_output` keyword to `subprocess.run` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7113](https://togithub.com/astral-sh/ruff/pull/7113)
- `UP028`: Support parenthesized expressions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7114](https://togithub.com/astral-sh/ruff/pull/7114)
- `UP022`: Avoid fixing when `capture_output` is provided by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7149](https://togithub.com/astral-sh/ruff/pull/7149)
- `UP024`: Add required space when fixing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7171](https://togithub.com/astral-sh/ruff/pull/7171)
- \[`ruff`]
- `RUF017`: Avoid duplicate fixes for multi-import imports by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7063](https://togithub.com/astral-sh/ruff/pull/7063)
- Fix named expression precedence in generator by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7170](https://togithub.com/astral-sh/ruff/pull/7170)
- Fix precedence of annotated assignments in generator by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7115](https://togithub.com/astral-sh/ruff/pull/7115)
- Update identifier Unicode character validation to match Python spec by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/7209](https://togithub.com/astral-sh/ruff/pull/7209)
##### Other Changes
- Added argfile test and documentation by [@​njgrisafi](https://togithub.com/njgrisafi) in [https://github.com/astral-sh/ruff/pull/7138](https://togithub.com/astral-sh/ruff/pull/7138)
#### New Contributors
- [@​oliviacrain](https://togithub.com/oliviacrain) made their first contribution in [https://github.com/astral-sh/ruff/pull/7093](https://togithub.com/astral-sh/ruff/pull/7093)
- [@​dalgarno](https://togithub.com/dalgarno) made their first contribution in [https://github.com/astral-sh/ruff/pull/7108](https://togithub.com/astral-sh/ruff/pull/7108)
- [@​manmartgarc](https://togithub.com/manmartgarc) made their first contribution in [https://github.com/astral-sh/ruff/pull/7179](https://togithub.com/astral-sh/ruff/pull/7179)
- [@​jaap3](https://togithub.com/jaap3) made their first contribution in [https://github.com/astral-sh/ruff/pull/7194](https://togithub.com/astral-sh/ruff/pull/7194)
- [@​gregersn](https://togithub.com/gregersn) made their first contribution in [https://github.com/astral-sh/ruff/pull/7203](https://togithub.com/astral-sh/ruff/pull/7203)
- [@​eronnen](https://togithub.com/eronnen) made their first contribution in [https://github.com/astral-sh/ruff/pull/7251](https://togithub.com/astral-sh/ruff/pull/7251)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.287...v0.0.288
### [`v0.0.287`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.287)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.286...v0.0.287)
<!-- Release notes generated using configuration in .github/release.yml at v0.0.287 -->
#### What's Changed
##### Rules
- \[refurb] Implement preview `repeated-append` rule (`FURB113`) by [@​SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) in [https://github.com/astral-sh/ruff/pull/6702](https://togithub.com/astral-sh/ruff/pull/6702)
- \[refurb] Implement preview `delete-full-slice` rule (`FURB131`) by [@​SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) in [https://github.com/astral-sh/ruff/pull/6897](https://togithub.com/astral-sh/ruff/pull/6897)
- \[refurb] Implement preview `check-and-remove-from-set` rule (`FURB132`) by [@​SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) in [https://github.com/astral-sh/ruff/pull/6904](https://togithub.com/astral-sh/ruff/pull/6904)
##### Bug Fixes
- Expand `PERF401` and `PERF402` with type checks by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/6994](https://togithub.com/astral-sh/ruff/pull/6994)
- Insert space to avoid syntax error in RSE fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6886](https://togithub.com/astral-sh/ruff/pull/6886)
- Avoid PEP 604 upgrades that lead to invalid syntax by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6888](https://togithub.com/astral-sh/ruff/pull/6888)
- Fix ranges for global usages by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6917](https://togithub.com/astral-sh/ruff/pull/6917)
- Avoid invalid fix for C417 with separate keys and values by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6954](https://togithub.com/astral-sh/ruff/pull/6954)
- Avoid panic when `typename` is provided as a keyword argument by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6955](https://togithub.com/astral-sh/ruff/pull/6955)
- Improve compatibility between multi-statement PYI rules by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7024](https://togithub.com/astral-sh/ruff/pull/7024)
- Fixed panic in `missing_copyright_notice` by [@​WindowGenerator](https://togithub.com/WindowGenerator) in [https://github.com/astral-sh/ruff/pull/7029](https://togithub.com/astral-sh/ruff/pull/7029)
- Avoid lexer infinite loop on invalid input by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/6937](https://togithub.com/astral-sh/ruff/pull/6937)
- Fix `WithItem` ranges for parenthesized, non-`as` items by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6782](https://togithub.com/astral-sh/ruff/pull/6782)
#### New Contributors
- [@​SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) made their first contribution in [https://github.com/astral-sh/ruff/pull/6702](https://togithub.com/astral-sh/ruff/pull/6702)
- [@​Anselmoo](https://togithub.com/Anselmoo) made their first contribution in [https://github.com/astral-sh/ruff/pull/6986](https://togithub.com/astral-sh/ruff/pull/6986)
- [@​njgrisafi](https://togithub.com/njgrisafi) made their first contribution in [https://github.com/astral-sh/ruff/pull/7032](https://togithub.com/astral-sh/ruff/pull/7032)
- [@​WindowGenerator](https://togithub.com/WindowGenerator) made their first contribution in [https://github.com/astral-sh/ruff/pull/7029](https://togithub.com/astral-sh/ruff/pull/7029)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.286...v0.0.287
### [`v0.0.286`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.286)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.285...v0.0.286)
<!-- Release notes generated using configuration in .github/release.yml at v0.0.286 -->
#### What's Changed
##### New Rules
- \[`flake8-bugbear`] Update `function-call-in-argument-default` (`B008`) to ignore arguments with immutable annotations by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6784](https://togithub.com/astral-sh/ruff/pull/6784)
- \[`flake8-bugbear`] Update `mutable-argument-default` (`B006`) to use `extend-immutable-calls` when determining if annotations are immutable by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6781](https://togithub.com/astral-sh/ruff/pull/6781)
- \[`flake8-pie`] Implement `unnecessary-range-start` (`PIE808`) by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6690](https://togithub.com/astral-sh/ruff/pull/6690)
- \[`flake8-pytest-style`] Add autofix for `PT014` by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6698](https://togithub.com/astral-sh/ruff/pull/6698)
- \[`pylint`] Implement `no-self-use` (`R6301`) by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6574](https://togithub.com/astral-sh/ruff/pull/6574)
- \[`pylint`] Extend `repeated-equality-comparison-target` to check for mixed orderings and Yoda conditions. by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/6691](https://togithub.com/astral-sh/ruff/pull/6691)
##### Settings
- Make isort's `detect-same-package` behavior configurable by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6833](https://togithub.com/astral-sh/ruff/pull/6833)
##### Bug Fixes
- Apply RUF017 when start is passed via position by [@​hauntsaninja](https://togithub.com/hauntsaninja) in [https://github.com/astral-sh/ruff/pull/6664](https://togithub.com/astral-sh/ruff/pull/6664)
- Use `typing_extensions.TypeAlias` for PYI026 fixes on pre-3.10 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6696](https://togithub.com/astral-sh/ruff/pull/6696)
- Ignore multi-comparisons in `repeated-equality-comparison-target` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6705](https://togithub.com/astral-sh/ruff/pull/6705)
- Accept empty inner calls in C414 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6725](https://togithub.com/astral-sh/ruff/pull/6725)
- Allow next in FBT exclusions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6729](https://togithub.com/astral-sh/ruff/pull/6729)
- Allow `ctypes.WinError()` in flake8-raise by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6731](https://togithub.com/astral-sh/ruff/pull/6731)
- Ignore star imports when importing symbols in fixes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6743](https://togithub.com/astral-sh/ruff/pull/6743)
- Support C419 autofixes for set comprehensions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6744](https://togithub.com/astral-sh/ruff/pull/6744)
- Avoid attempting to fix unconventional submodule imports by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6745](https://togithub.com/astral-sh/ruff/pull/6745)
- Don't trigger `eq-without-hash` when `__hash__` is explicitly set to `None` by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6739](https://togithub.com/astral-sh/ruff/pull/6739)
- Avoid E231 if comma is at end-of-line by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6747](https://togithub.com/astral-sh/ruff/pull/6747)
- Truncate some messages in diagnostics by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6748](https://togithub.com/astral-sh/ruff/pull/6748)
- Fix isolation groups for unused imports by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6774](https://togithub.com/astral-sh/ruff/pull/6774)
- Avoid fixing D200 for docstrings that end in escapes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6779](https://togithub.com/astral-sh/ruff/pull/6779)
- Parenthesize expressions prior to LibCST parsing by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6742](https://togithub.com/astral-sh/ruff/pull/6742)
- Fallback to end-of-file if ends in trailing continuation by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6789](https://togithub.com/astral-sh/ruff/pull/6789)
- Confine repeated-equality-comparison-target to names and attributes by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6802](https://togithub.com/astral-sh/ruff/pull/6802)
- Fix `native-literals` handling of int literal with attribute access by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6792](https://togithub.com/astral-sh/ruff/pull/6792)
- Fix `uncessary-coding-comment` fix when there's leading content by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6775](https://togithub.com/astral-sh/ruff/pull/6775)
- Avoid attempting to fix PT018 in multi-statement lines by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6829](https://togithub.com/astral-sh/ruff/pull/6829)
- Update ERA100 to apply to commented dictionary items with trailing comments by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6822](https://togithub.com/astral-sh/ruff/pull/6822)
- Avoid parsing other parts of a format specification if replacements are present by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6858](https://togithub.com/astral-sh/ruff/pull/6858)
- Avoid panic in unused arguments rule for parameter-free lambda by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6679](https://togithub.com/astral-sh/ruff/pull/6679)
- Avoid `C417` for `lambda` with default and variadic parameters by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/6752](https://togithub.com/astral-sh/ruff/pull/6752)
- Add `networkx` to conventional aliases by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6778](https://togithub.com/astral-sh/ruff/pull/6778)
- Skip serializing cell ID if it's None by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6851](https://togithub.com/astral-sh/ruff/pull/6851)
- fix is_raw_string for multiple prefixes by [@​davidszotten](https://togithub.com/davidszotten) in [https://github.com/astral-sh/ruff/pull/6865](https://togithub.com/astral-sh/ruff/pull/6865)
- Add jupyter notebook cell ids in 4.5+ if missing by [@​konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/6853](https://togithub.com/astral-sh/ruff/pull/6853)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.285...v0.0.286
### [`v0.0.285`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.285)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.284...v0.0.285)
#### What's Changed
##### New rules
- \[`flake8-pytest-style`] Implement `pytest-unittest-raises-assertion` (`PT027`) by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6554](https://togithub.com/astral-sh/ruff/pull/6554)
- \[`flake8-pytest-style`] Implement `pytest-duplicate-parametrize-test-cases` (`PT014`) by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6598](https://togithub.com/astral-sh/ruff/pull/6598)
- \[`flake8-tidy-imports`] Implement `banned-module-level-imports` (`TID253`) by [@​durumu](https://togithub.com/durumu) in [https://github.com/astral-sh/ruff/pull/6378](https://togithub.com/astral-sh/ruff/pull/6378)
- \[`pylint`] Implement `bad-dunder-name` (`W3201`) (in the Ruff nursery) by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6486](https://togithub.com/astral-sh/ruff/pull/6486)
- \[`pylint`] Implement `subprocess-run-check` (`W1510`) by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/6487](https://togithub.com/astral-sh/ruff/pull/6487)
- \[`ruff`] Implement `quadratic-list-summation` (`RUF017`) by [@​evanrittenhouse](https://togithub.com/evanrittenhouse) in [https://github.com/astral-sh/ruff/pull/6489](https://togithub.com/astral-sh/ruff/pull/6489)
##### Rule changes
- \[`flake8-bugbear`] Add autofix for `B006` by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/6131](https://togithub.com/astral-sh/ruff/pull/6131)
- \[`flake8-pyi`] Avoid applying `PYI055` to runtime-evaluated annotations by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6457](https://togithub.com/astral-sh/ruff/pull/6457)
- \[`flake8-self`] Allow `os._exit` accesses in `SLF001` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6490](https://togithub.com/astral-sh/ruff/pull/6490)
- \[`perflint`] Ignore `PERF203` if `try` contains loop control flow statements by [@​evanrittenhouse](https://togithub.com/evanrittenhouse) in [https://github.com/astral-sh/ruff/pull/6536](https://togithub.com/astral-sh/ruff/pull/6536)
- \[`pylint`] Check for invalid format type specifiers in nested replacements for `PLE1300` by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6616](https://togithub.com/astral-sh/ruff/pull/6616)
- \[`tryceratops`] Omit `NotImplementedError` from `TRY003` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6568](https://togithub.com/astral-sh/ruff/pull/6568)
##### Settings
- Respect `.ipynb` and `.pyi` sources when linting from stdin by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6628](https://togithub.com/astral-sh/ruff/pull/6628)
- Support glob patterns for `raises_require_match_for` and `raises_require_match_for` by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6635](https://togithub.com/astral-sh/ruff/pull/6635)
##### Bug Fixes
- Make `lambda-assignment` fix always-manual in class bodies by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6626](https://togithub.com/astral-sh/ruff/pull/6626)
- Fix counting of message arguments when msg is provided as a keyword by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6456](https://togithub.com/astral-sh/ruff/pull/6456)
- Add container types to `E721` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6469](https://togithub.com/astral-sh/ruff/pull/6469)
- Respect scoping rules when identifying builtins by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6468](https://togithub.com/astral-sh/ruff/pull/6468)
- Respect tab width in line-length heuristic by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6491](https://togithub.com/astral-sh/ruff/pull/6491)
- Respect dummy-variable-rgx for unused bound exceptions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6492](https://togithub.com/astral-sh/ruff/pull/6492)
- Fix detection of top-level imports with newlines in `E402` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6526](https://togithub.com/astral-sh/ruff/pull/6526)
- Allow if-expression with dual string arms in `invalid-envvar-value` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6538](https://togithub.com/astral-sh/ruff/pull/6538)
- Add deprecated unittest assertions to PT009 by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6572](https://togithub.com/astral-sh/ruff/pull/6572)
- Avoid unused argument rules when functions call `locals()` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6578](https://togithub.com/astral-sh/ruff/pull/6578)
- Allow top-level `await` in Jupyter notebooks by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6607](https://togithub.com/astral-sh/ruff/pull/6607)
- Don't detect `pandas#values` for stores, deletes, or class accesses by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6631](https://togithub.com/astral-sh/ruff/pull/6631)
- Avoid removing parentheses in `E712` fix by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6575](https://togithub.com/astral-sh/ruff/pull/6575)
- Skip whitespace between comments at start of file e.g. for `I002` by [@​durumu](https://togithub.com/durumu) in [https://github.com/astral-sh/ruff/pull/6523](https://togithub.com/astral-sh/ruff/pull/6523)
- Add support for nested replacements inside format specifications e.g. for `PLE1300` by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6616](https://togithub.com/astral-sh/ruff/pull/6616)
##### Playground
- Shared playground links now use short URLs by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6383](https://togithub.com/astral-sh/ruff/pull/6383)
- Fix possible JSON parse error on playground load by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6519](https://togithub.com/astral-sh/ruff/pull/6519)
- Fix unreachable panic in playground by [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/6623](https://togithub.com/astral-sh/ruff/pull/6623)
##### Performance
- Improve tokenizer performance for ASCII only identifiers by [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/6609](https://togithub.com/astral-sh/ruff/pull/6609)
#### New Contributors
- [@​magic-akari](https://togithub.com/magic-akari) made their first contribution in [https://github.com/astral-sh/ruff/pull/6472](https://togithub.com/astral-sh/ruff/pull/6472)
- [@​durumu](https://togithub.com/durumu) made their first contribution in [https://github.com/astral-sh/ruff/pull/6378](https://togithub.com/astral-sh/ruff/pull/6378)
- [@​jamesbraza](https://togithub.com/jamesbraza) made their first contribution in [https://github.com/astral-sh/ruff/pull/6520](https://togithub.com/astral-sh/ruff/pull/6520)
- [@​takumaw](https://togithub.com/takumaw) made their first contribution in [https://github.com/astral-sh/ruff/pull/6533](https://togithub.com/astral-sh/ruff/pull/6533)
- [@​noklam](https://togithub.com/noklam) made their first contribution in [https://github.com/astral-sh/ruff/pull/6573](https://togithub.com/astral-sh/ruff/pull/6573)
- [@​Teraskull](https://togithub.com/Teraskull) made their first contribution in [https://github.com/astral-sh/ruff/pull/6605](https://togithub.com/astral-sh/ruff/pull/6605)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.284...v0.0.285
### [`v0.0.284`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.284)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.283...v0.0.284)
#### What's Changed
This release fixes a few bugs. Notably, the previous release announced a breaking change where the default target
Python version changed from 3.10 to 3.8 but the change was not applied. Thanks to [@​rco-ableton](https://togithub.com/rco-ableton) for fixing this in
[https://github.com/astral-sh/ruff/pull/6444](https://togithub.com/astral-sh/ruff/pull/6444)
##### Bug Fixes
- Do not trigger `S108` if path is inside `tempfile.*` call by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/6416](https://togithub.com/astral-sh/ruff/pull/6416)
- Do not allow on zero tab width by [@​tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/6429](https://togithub.com/astral-sh/ruff/pull/6429)
- Fix false-positive in submodule resolution by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6435](https://togithub.com/astral-sh/ruff/pull/6435)
#### New Contributors
- [@​rco-ableton](https://togithub.com/rco-ableton) made their first contribution in [https://github.com/astral-sh/ruff/pull/6444](https://togithub.com/astral-sh/ruff/pull/6444)
**Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.283...v0.0.284
### [`v0.0.283`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.283)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.282...v0.0.283)
<!-- Release notes generated using configuration in .github/release.yml at main -->
#### What's Changed
##### Breaking Changes
- Assume Python 3.8 instead of 3.10 for target version by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6397](https://togithub.com/astral-sh/ruff/pull/6397)
##### Rules
- \[`flake8-pyi`] `PYI019`: Detects if a type variable is used instead of `Self` in return annotations by [@​qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/6204](https://togithub.com/astral-sh/ruff/pull/6204)
- \[`flake8-pyi`] `PYI051`: Detects unions of `Literal` types by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6215](https://togithub.com/astral-sh/ruff/pull/6215)
- \[`flake8-pyi`] `PYI055`: Detects unions of `type`s by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6316](https://togithub.com/astral-sh/ruff/pull/6316)
- \[`pylint`] `E1300`: Detects invalid string format characters by [@​silvanocerza](https://togithub.com/silvanocerza) in [https://github.com/astral-sh/ruff/pull/6171](https://togithub.com/astral-sh/ruff/pull/6171)
- \[`pyupgrade`] `UP040`: Upgrades type alias annotations to use PEP-695 syntax by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6289](https://togithub.com/astral-sh/ruff/pull/6289)
##### Rule Changes
- \[`flake8-boolean-trap`] `FBT003`: Add `is_` and `is_not` to excluded functions by [@​zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/6307](https://togithub.com/astral-sh/ruff/pull/6307)
- \[`flake8-logging-format`] Allow capitalized names for logger candidate heuristic match by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6356](https://togithub.com/astral-sh/ruff/pull/6356)
- \[`flake8-pyi`] Applicable rules are now checked non-stub code by [@​andersk](https://togithub.com/andersk) in [https://github.com/astral-sh/ruff/pull/6297](https://togithub.com/astral-sh/ruff/pull/6297)
- `PYI013`: [`ellipsis-in-non-empty-class-body`](https://beta.ruff.rs/docs/rules/ellipsis-in-non-empty-class-body)
- `PYI016`: [`duplicate-union-member`](https://beta.ruff.rs/docs/rules/duplicate-union-member)
- `PYI018`: [`unused-private-type-var`](https://beta.ruff.rs/docs/rules/unused-private-type-var)
- `PYI019`: [`custom-type-var-return-type`](https://beta.ruff.rs/docs/rules/custom-type-var-return-type)
- `PYI024`: [`collections-named-tuple`](https://beta.ruff.rs/docs/rules/collections-named-tuple)
- `PYI025`: [`unaliased-collections-abc-set-import`](https://beta.ruff.rs/docs/rules/unaliased-collections-abc-set-import)
- `PYI030`: [`unnecessary-literal-union`](https://beta.ruff.rs/docs/rules/unnecessary-literal-union)
- `PYI032`: [`any-eq-ne-annotation`](https://beta.ruff.rs/docs/rules/any-eq-ne-annotation)
- `PYI034`: [`non-self-return-type`](https://beta.ruff.rs/docs/rules/non-self-return-type)
- `PYI036`: [`bad-exit-annotation`](https://beta.ruff.rs/docs/rules/bad-exit-annotation)
- `PYI041`: [`redundant-numeric-union`](https://beta.ruff.rs/docs/rules/redundant-numeric-union)
- `PYI042`: [`snake-case-type-alias`](https://beta.ruff.rs/docs/rules/snake-case-type-alias)
- `PYI043`: [`t-suffixed-type-alias`](https://beta.ruff.rs/docs/rules/t-suffixed-type-alias)
- `PYI045`: [`iter-method-return-iterable`](https://beta.ruff.rs/docs/rules/iter-method-return-iterable)
- `PYI046`: [`unused-private-protocol`](https://beta.ruff.rs/docs/rules/unused-private-protocol)
- `PYI047`: [`unused-private-type-alias`](https://beta.ruff.rs/docs/rules/unused-private-type-alias)
- `PYI049`: [`unused-private-typed-dict`](https://beta.ruff.rs/docs/rules/unused-private-typed-dict)
- `PYI050`: [`no-return-argument-annotation-in-stub`](https://beta.ruff.rs/docs/rules/no-return-argument-annotation-in-stub) (Python ≥ 3.11)
- `PYI051`: [`redundant-literal-union`](https://beta.ruff.rs/docs/rules/redundant-literal-union)
- `PYI056`: [`unsupported-method-call-on-all`](https://beta.ruff.rs/docs/rules/unsupported-method-call-on-all)
- \[`flake8-pyi`] `PYI027` is being replaced by `PYI022` / `UP035` by [@​LaBatata101](https://togithub.com/LaBatata101) in [https://github.com/astral-sh/ruff/pull/6354](https://togithub.com/astral-sh/ruff/pull/6354)
- \[`pydocstyle`] `D103`: Don't require docstrings in `.pyi` files by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6239](https://togithub.com/astral-sh/ruff/pull/6239)
- \[`pydocstyle`] `D203`: Ignore same-line docstrings for lines-before and lines-after rules by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6344](https://togithub.com/astral-sh/ruff/pull/6344)
- \[`pylint`] `PLE0605`: Allow generic tuple and list calls in `__all__` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6247](https://togithub.com/astral-sh/ruff/pull/6247)
- \[`pylint`] `PLR0124`: Add detection of comparisons with built-in calls by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6324](https://togithub.com/astral-sh/ruff/pull/6324)
- \[`pyupgrade`] `UP032`: Add support for `await` expressions in f-strings by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6304](https://togithub.com/astral-sh/ruff/pull/6304)
- \[`pyupgrade`] `UP032`: Add support for implicitly concatenated strings by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6263](https://togithub.com/astral-sh/ruff/pull/6263)
- \[`pyupgrade`] `UP032`: Add support for repeated format fields by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6266](https://togithub.com/astral-sh/ruff/pull/6266)
- \[`ruff`] `RUF012`: Permit `ClassVar` and `Final` without subscript by [@​bluetech](https://togithub.com/bluetech) in [https://github.com/astral-sh/ruff/pull/6273](https://togithub.com/astral-sh/ruff/pull/6273)
##### Bug Fixes
- \[`flake8-bugbear`] `B006`: Respect `typing_extensions` imports of `Annotated` by [@​PIG208](https://togithub.com/PIG208) in [https://github.com/astral-sh/ruff/pull/6361](https://togithub.com/astral-sh/ruff/pull/6361)
- \[`flake8-pyi`] `PYI019`: Fix panic with positional-only arguments by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6350](https://togithub.com/astral-sh/ruff/pull/6350)
- \[`flake8-use-pathlib`] Avoid raising `PTH206` with `maxsplit` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6283](https://togithub.com/astral-sh/ruff/pull/6283)
- \[`flake8`] `F841`: Update autofix to not remove Jupyer magic expressions by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/6141](https://togithub.com/astral-sh/ruff/pull/6141)
- \[`pycodestyle`] `E721`: Include comparisons to builtin types by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6325](https://togithub.com/astral-sh/ruff/pull/6325)
- \[`pycodestyle`] `E721`: Match left-hand side `types()` call in `types-comparison` by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6326](https://togithub.com/astral-sh/ruff/pull/6326)
- \[`pyupgrade`] `UP031`: Avoid auto-fixing if there are comments within the right-hand side by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6364](https://togithub.com/astral-sh/ruff/pull/6364)
- \[`pyupgrade`] `UP032`: Avoid auto-fixing if comments are present around format call arguments by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6342](https://togithub.com/astral-sh/ruff/pull/6342)
- \[`pyupgrade`] `UP032`: Improve invalid expression check by [@​harupy](https://togithub.com/harupy) in [https://github.com/astral-sh/ruff/pull/6308](https://togithub.com/astral-sh/ruff/pull/6308)
- Avoid attempting to fix `.format(...)` calls with too-few-arguments by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6401](https://togithub.com/astral-sh/ruff/pull/6401)
- Fix bug where `.gitignore` files in parent directories were incorrectly used by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6368](https://togithub.com/astral-sh/ruff/pull/6368)
- Fix duplicate violations raised on nested bitwise or `Union` expressions by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6399](https://togithub.com/astral-sh/ruff/pull/6399)
##### Playground
- Add a simple tooltip to the sidebar by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6295](https://togithub.com/astral-sh/ruff/pull/6295)
- Add an icon for FIR by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6292](https://togithub.com/astral-sh/ruff/pull/6292)
- Increase icon opacity on-hover by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6291](https://togithub.com/astral-sh/ruff/pull/6291)
- Tweak background on theme button by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6290](https://togithub.com/astral-sh/ruff/pull/6290)
##### Other Changes
- Improve handling of violations around Jupyter magic expressions by [@​dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/5552](https://togithub.com/astral-sh/ruff/pull/5552)
- Reduce memory usage by boxing type params and arguments fields on the class definition node by [@​charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/6275](https://togithub.com/astral-sh/ruff/pull/6275)
- Upgrade Rust to 1.71 by [@
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - "every weekend" in timezone Etc/UTC.
🚦 **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 has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/canonical/craft-providers).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi45Ny4xIiwidXBkYXRlZEluVmVyIjoiMzYuOTcuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged in #408 via commit 1b56612, updating lint/ruff from 0.0.280 to 0.0.291. | |
| qwen/qwen3.6-35b-a3b | — | closed resolved | Merged Renovate PR updating the ruff linter dependency from v0.0.280 to v0.0.291. |
Update history
| Date | Change |
|---|---|
| created |
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #179 chore(deps): update dependency lint/ruff to v0.0.290 | craft-cli | merged | Merged PR #179 updated lint/ruff from 0.0.285 to 0.0.290 via commit 53bc983. | |
| #375 chore(deps): update dependency lint/ruff to v0.0.280 | craft-providers | merged | Merged PR #375, updating lint/ruff from 0.0.277 to 0.0.280 in commit b03d6d3. | |
| #123 chore(deps): update dependency lint/ruff to v0.0.285 | starbase | merged | Merged PR #123 in commit 25c3c1d, updating lint/ruff from 0.0.284 to 0.0.285. | |
| #91 chore(deps): update dependency lint/ruff to v0.0.272 | starbase | merged | Merged PR #91, updating lint/ruff from 0.0.269 to 0.0.272; merged into main as commit f40aae9. | |
| #150 chore(deps): update dependency lint/ruff to v0.1.9 | craft-store | merged | Merged PR #150 in commit f98e23f, updating lint/ruff from 0.1.7 to 0.1.9. | |
| #486 chore(deps): update dependency lint/ruff to v0.1.7 | craft-providers | merged | Merged into main via commit 24db9cc, updating lint/ruff from v0.1.1 to v0.1.7. | |
| #138 chore(deps): update dependency lint/ruff to v0.1.0 | starbase | merged | Merged PR #138 updated lint/ruff from 0.0.291 to 0.1.0 in commit a8e334e. | |
| #570 chore(deps): update dependency lint/ruff to v0.4.5 | craft-providers | merged | Merged PR #570 as commit d81d5fb, updating lint/ruff from 0.4.3 to 0.4.5. | |
| #190 chore(deps): update dependency lint/ruff to v0.1.0 | craft-cli | merged | Renovate updated lint/ruff from 0.0.290 to 0.1.0; PR #190 was merged as commit b75689c. | |
| #181 chore(deps): update dependency lint/ruff to v0.2.0 | starbase | merged | Merged PR #181, updating lint/ruff from 0.1.14 to 0.2.0; landed as commit 5a0b0ea. |