Skip to content

[pylint] Add duplicate-value (W0130)#4515

Merged
charliermarsh merged 11 commits into
astral-sh:mainfrom
hoel-bagard:main
May 19, 2023
Merged

[pylint] Add duplicate-value (W0130)#4515
charliermarsh merged 11 commits into
astral-sh:mainfrom
hoel-bagard:main

Conversation

@hoel-bagard
Copy link
Copy Markdown
Contributor

This is part of #970.

if let Expr::Constant(ast::ExprConstant { value, .. }) = elt {
let comparable_value: ComparableExpr = elt.into();

if seen_values.contains(&comparable_value) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: seen_values.insert will return a boolean that indicates whether the item already exists in the HashSet. So you can both check for duplicates and update the set in a single operation.

Comment thread crates/ruff/src/rules/pylint/rules/duplicate_values.rs
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 19, 2023

PR Check Results

Ecosystem

ℹ️ ecosystem check detected changes. (+0, -0, 1 error(s))

bokeh (error) https://github.com/bokeh/bokeh ref branch-3.2 select ALL ignore exclude

error: TOML parse error at line 169, column 12
    |
169 | [tool.ruff.pyupgrade]
    |            ^^^^^^^^^
unknown field `pyupgrade`, expected one of `allowed-confusables`, `builtins`, `cache-dir`, `dummy-variable-rgx`, `exclude`, `extend`, `extend-exclude`, `extend-include`, `extend-ignore`, `extend-select`, `extend-fixable`, `extend-unfixable`, `external`, `fix`, `fix-only`, `fixable`, `format`, `force-exclude`, `ignore`, `ignore-init-module-imports`, `include`, `line-length`, `required-version`, `respect-gitignore`, `select`, `show-source`, `show-fixes`, `src`, `namespace-packages`, `target-version`, `task-tags`, `typing-modules`, `unfixable`, `flake8-annotations`, `flake8-bandit`, `flake8-bugbear`, `flake8-builtins`, `flake8-comprehensions`, `flake8-errmsg`, `flake8-quotes`, `flake8-self`, `flake8-tidy-imports`, `flake8-type-checking`, `flake8-gettext`, `flake8-implicit-str-concat`, `flake8-import-conventions`, `flake8-pytest-style`, `flake8-unused-arguments`, `isort`, `mccabe`, `pep8-naming`, `pycodestyle`, `pydocstyle`, `pylint`, `per-file-ignores`


Benchmark

Linux

group                                      main                                   pr
-----                                      ----                                   --
linter/all-rules/large/dataset.py          1.01     15.2±0.04ms     2.7 MB/sec    1.00     15.0±0.03ms     2.7 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.01      3.7±0.01ms     4.5 MB/sec    1.00      3.7±0.01ms     4.6 MB/sec
linter/all-rules/numpy/globals.py          1.00    376.7±1.61µs     7.8 MB/sec    1.00    375.1±1.35µs     7.9 MB/sec
linter/all-rules/pydantic/types.py         1.01      6.3±0.02ms     4.1 MB/sec    1.00      6.2±0.01ms     4.1 MB/sec
linter/default-rules/large/dataset.py      1.02      7.6±0.02ms     5.4 MB/sec    1.00      7.4±0.01ms     5.5 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.02  1568.4±11.51µs    10.6 MB/sec    1.00   1542.3±3.96µs    10.8 MB/sec
linter/default-rules/numpy/globals.py      1.01    167.6±0.37µs    17.6 MB/sec    1.00    165.9±0.99µs    17.8 MB/sec
linter/default-rules/pydantic/types.py     1.02      3.4±0.01ms     7.6 MB/sec    1.00      3.3±0.01ms     7.7 MB/sec
parser/large/dataset.py                    1.01      6.0±0.01ms     6.7 MB/sec    1.00      6.0±0.01ms     6.8 MB/sec
parser/numpy/ctypeslib.py                  1.00   1178.9±6.82µs    14.1 MB/sec    1.00  1173.4±22.42µs    14.2 MB/sec
parser/numpy/globals.py                    1.00    122.0±2.12µs    24.2 MB/sec    1.00    122.3±0.43µs    24.1 MB/sec
parser/pydantic/types.py                   1.00      2.5±0.00ms    10.0 MB/sec    1.00      2.5±0.00ms    10.0 MB/sec

Windows

group                                      main                                   pr
-----                                      ----                                   --
linter/all-rules/large/dataset.py          1.00     16.8±0.08ms     2.4 MB/sec    1.00     16.7±0.11ms     2.4 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.00      4.3±0.03ms     3.8 MB/sec    1.00      4.3±0.04ms     3.8 MB/sec
linter/all-rules/numpy/globals.py          1.00    438.9±4.84µs     6.7 MB/sec    1.00    440.5±7.72µs     6.7 MB/sec
linter/all-rules/pydantic/types.py         1.00      7.1±0.03ms     3.6 MB/sec    1.00      7.1±0.04ms     3.6 MB/sec
linter/default-rules/large/dataset.py      1.00      8.5±0.03ms     4.8 MB/sec    1.00      8.5±0.03ms     4.8 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.00  1749.0±17.55µs     9.5 MB/sec    1.00   1754.8±8.51µs     9.5 MB/sec
linter/default-rules/numpy/globals.py      1.00    189.6±1.39µs    15.6 MB/sec    1.01    190.7±2.73µs    15.5 MB/sec
linter/default-rules/pydantic/types.py     1.00      3.8±0.01ms     6.7 MB/sec    1.00      3.8±0.02ms     6.7 MB/sec
parser/large/dataset.py                    1.00      6.9±0.02ms     5.9 MB/sec    1.02      7.0±0.02ms     5.8 MB/sec
parser/numpy/ctypeslib.py                  1.00   1312.2±9.30µs    12.7 MB/sec    1.01   1324.1±7.61µs    12.6 MB/sec
parser/numpy/globals.py                    1.00    136.9±1.34µs    21.5 MB/sec    1.01    138.3±1.87µs    21.3 MB/sec
parser/pydantic/types.py                   1.00      2.9±0.02ms     8.8 MB/sec    1.01      2.9±0.01ms     8.7 MB/sec

Comment thread crates/ruff/src/rules/pylint/rules/duplicate_values.rs Outdated
@charliermarsh charliermarsh changed the title [pylint] Add duplicate-value / W0130 rule [pylint] Add duplicate-value (W0130) May 19, 2023
@charliermarsh charliermarsh added the rule Implementing or modifying a lint rule label May 19, 2023
@charliermarsh charliermarsh enabled auto-merge (squash) May 19, 2023 14:57
@charliermarsh charliermarsh merged commit 7ebe372 into astral-sh:main May 19, 2023
renovate Bot referenced this pull request in ixm-one/pytest-cmake-presets May 25, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ruff](https://togithub.com/charliermarsh/ruff)
([changelog](https://togithub.com/charliermarsh/ruff/releases)) |
`^0.0.269` -> `^0.0.270` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/compatibility-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/confidence-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>charliermarsh/ruff</summary>

###
[`v0.0.270`](https://togithub.com/charliermarsh/ruff/releases/tag/v0.0.270)

[Compare
Source](https://togithub.com/charliermarsh/ruff/compare/v0.0.269...v0.0.270)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### Rules

- \[`flake8-bandit`] Implement `paramiko-call` (`S601`) by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4500](https://togithub.com/charliermarsh/ruff/pull/4500)
- \[`flake8-pyi`] Add autofix for PYI009 by
[@&#8203;qdegraaf](https://togithub.com/qdegraaf) in
[https://github.com/charliermarsh/ruff/pull/4583](https://togithub.com/charliermarsh/ruff/pull/4583)
- \[`flake8-pyi`] Implement `PYI013` by
[@&#8203;density](https://togithub.com/density) in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- \[`pylint`] Add `duplicate-value` (`W0130`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4515](https://togithub.com/charliermarsh/ruff/pull/4515)
- \[`pylint`] Add `named_expr_without_context` (`W0131`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4531](https://togithub.com/charliermarsh/ruff/pull/4531)
- \[`ruff`] Extend `RUF005` to recursive and literal-literal
concatenations by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4557](https://togithub.com/charliermarsh/ruff/pull/4557)
- \[`ruff`] Make ambiguous-unicode detection sensitive to 'word' context
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4552](https://togithub.com/charliermarsh/ruff/pull/4552)
- \[`ruff`] Name ambiguous characters by
[@&#8203;covracer](https://togithub.com/covracer) in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

##### Settings

- Implement `--extend-fixable` option by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4297](https://togithub.com/charliermarsh/ruff/pull/4297)
- Support new `extend-per-file-ignores` setting by
[@&#8203;aacunningham](https://togithub.com/aacunningham) in
[https://github.com/charliermarsh/ruff/pull/4265](https://togithub.com/charliermarsh/ruff/pull/4265)

##### Bug Fixes

- Fix RUF010 auto-fix with parenthesis by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4524](https://togithub.com/charliermarsh/ruff/pull/4524)
- Parenthesize more sub-expressions in f-string conversion by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4535](https://togithub.com/charliermarsh/ruff/pull/4535)
- Fix false-positive for TRY302 if exception cause is given by
[@&#8203;153957](https://togithub.com/153957) in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- Fix `# isort: split` comment detection in nested blocks by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4584](https://togithub.com/charliermarsh/ruff/pull/4584)
- Avoid some false positives in dunder variable assigments by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4508](https://togithub.com/charliermarsh/ruff/pull/4508)
- Fix UP032 auto-fix with integers by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4525](https://togithub.com/charliermarsh/ruff/pull/4525)
- Improve reference resolution for deferred-annotations-within-classes
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4509](https://togithub.com/charliermarsh/ruff/pull/4509)
- Improve handling of `__qualname__`, `__module__`, and `__class__` by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4512](https://togithub.com/charliermarsh/ruff/pull/4512)
- Include empty success test in JUnit output by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4537](https://togithub.com/charliermarsh/ruff/pull/4537)
- Fix SIM110 and SIM111 ranges by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4545](https://togithub.com/charliermarsh/ruff/pull/4545)
- Ignore `#region` code folding marks in eradicate rules by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4546](https://togithub.com/charliermarsh/ruff/pull/4546)
- Avoid infinite loop for required imports with isort: off by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4581](https://togithub.com/charliermarsh/ruff/pull/4581)
- Make B007 fix relevance stricter by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4607](https://togithub.com/charliermarsh/ruff/pull/4607)
- Introduce `tab-size` to correcly calculate the line length with
tabulations by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4167](https://togithub.com/charliermarsh/ruff/pull/4167)
- Visit `TypeVar` and `NewType` name arguments by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4627](https://togithub.com/charliermarsh/ruff/pull/4627)
- Improve `Message` sorting performance by
[@&#8203;MichaReiser](https://togithub.com/MichaReiser) in
[https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624)

#### New Contributors

- [@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) made their
first contribution in
[https://github.com/charliermarsh/ruff/pull/4516](https://togithub.com/charliermarsh/ruff/pull/4516)
- [@&#8203;density](https://togithub.com/density) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- [@&#8203;Mr-Pepe](https://togithub.com/Mr-Pepe) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4540](https://togithub.com/charliermarsh/ruff/pull/4540)
- [@&#8203;153957](https://togithub.com/153957) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- [@&#8203;covracer](https://togithub.com/covracer) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

**Full Changelog**:
astral-sh/ruff@v0.0.269...v0.0.270

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, 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://app.renovatebot.com/dashboard#github/ixm-one/pytest-cmake-presets).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45OC40IiwidXBkYXRlZEluVmVyIjoiMzUuOTguNCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Signed-off-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate Bot referenced this pull request in allenporter/pyrainbird May 26, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ruff](https://togithub.com/charliermarsh/ruff)
([changelog](https://togithub.com/charliermarsh/ruff/releases)) |
`==0.0.269` -> `==0.0.270` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/compatibility-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/confidence-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>charliermarsh/ruff</summary>

###
[`v0.0.270`](https://togithub.com/charliermarsh/ruff/releases/tag/v0.0.270)

[Compare
Source](https://togithub.com/charliermarsh/ruff/compare/v0.0.269...v0.0.270)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### Rules

- \[`flake8-bandit`] Implement `paramiko-call` (`S601`) by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4500](https://togithub.com/charliermarsh/ruff/pull/4500)
- \[`flake8-pyi`] Add autofix for PYI009 by
[@&#8203;qdegraaf](https://togithub.com/qdegraaf) in
[https://github.com/charliermarsh/ruff/pull/4583](https://togithub.com/charliermarsh/ruff/pull/4583)
- \[`flake8-pyi`] Implement `PYI013` by
[@&#8203;density](https://togithub.com/density) in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- \[`pylint`] Add `duplicate-value` (`W0130`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4515](https://togithub.com/charliermarsh/ruff/pull/4515)
- \[`pylint`] Add `named_expr_without_context` (`W0131`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4531](https://togithub.com/charliermarsh/ruff/pull/4531)
- \[`ruff`] Extend `RUF005` to recursive and literal-literal
concatenations by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4557](https://togithub.com/charliermarsh/ruff/pull/4557)
- \[`ruff`] Make ambiguous-unicode detection sensitive to 'word' context
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4552](https://togithub.com/charliermarsh/ruff/pull/4552)
- \[`ruff`] Name ambiguous characters by
[@&#8203;covracer](https://togithub.com/covracer) in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

##### Settings

- Implement `--extend-fixable` option by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4297](https://togithub.com/charliermarsh/ruff/pull/4297)
- Support new `extend-per-file-ignores` setting by
[@&#8203;aacunningham](https://togithub.com/aacunningham) in
[https://github.com/charliermarsh/ruff/pull/4265](https://togithub.com/charliermarsh/ruff/pull/4265)

##### Bug Fixes

- Fix RUF010 auto-fix with parenthesis by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4524](https://togithub.com/charliermarsh/ruff/pull/4524)
- Parenthesize more sub-expressions in f-string conversion by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4535](https://togithub.com/charliermarsh/ruff/pull/4535)
- Fix false-positive for TRY302 if exception cause is given by
[@&#8203;153957](https://togithub.com/153957) in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- Fix `# isort: split` comment detection in nested blocks by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4584](https://togithub.com/charliermarsh/ruff/pull/4584)
- Avoid some false positives in dunder variable assigments by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4508](https://togithub.com/charliermarsh/ruff/pull/4508)
- Fix UP032 auto-fix with integers by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4525](https://togithub.com/charliermarsh/ruff/pull/4525)
- Improve reference resolution for deferred-annotations-within-classes
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4509](https://togithub.com/charliermarsh/ruff/pull/4509)
- Improve handling of `__qualname__`, `__module__`, and `__class__` by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4512](https://togithub.com/charliermarsh/ruff/pull/4512)
- Include empty success test in JUnit output by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4537](https://togithub.com/charliermarsh/ruff/pull/4537)
- Fix SIM110 and SIM111 ranges by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4545](https://togithub.com/charliermarsh/ruff/pull/4545)
- Ignore `#region` code folding marks in eradicate rules by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4546](https://togithub.com/charliermarsh/ruff/pull/4546)
- Avoid infinite loop for required imports with isort: off by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4581](https://togithub.com/charliermarsh/ruff/pull/4581)
- Make B007 fix relevance stricter by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4607](https://togithub.com/charliermarsh/ruff/pull/4607)
- Introduce `tab-size` to correcly calculate the line length with
tabulations by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4167](https://togithub.com/charliermarsh/ruff/pull/4167)
- Visit `TypeVar` and `NewType` name arguments by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4627](https://togithub.com/charliermarsh/ruff/pull/4627)
- Improve `Message` sorting performance by
[@&#8203;MichaReiser](https://togithub.com/MichaReiser) in
[https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624)

#### New Contributors

- [@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) made their
first contribution in
[https://github.com/charliermarsh/ruff/pull/4516](https://togithub.com/charliermarsh/ruff/pull/4516)
- [@&#8203;density](https://togithub.com/density) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- [@&#8203;Mr-Pepe](https://togithub.com/Mr-Pepe) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4540](https://togithub.com/charliermarsh/ruff/pull/4540)
- [@&#8203;153957](https://togithub.com/153957) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- [@&#8203;covracer](https://togithub.com/covracer) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

**Full Changelog**:
astral-sh/ruff@v0.0.269...v0.0.270

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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://app.renovatebot.com/dashboard#github/allenporter/pyrainbird).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuNCIsInVwZGF0ZWRJblZlciI6IjM1LjEwMi40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate Bot referenced this pull request in allenporter/flux-local May 28, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ruff](https://togithub.com/charliermarsh/ruff)
([changelog](https://togithub.com/charliermarsh/ruff/releases)) |
`==0.0.269` -> `==0.0.270` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/compatibility-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.270/confidence-slim/0.0.269)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>charliermarsh/ruff</summary>

###
[`v0.0.270`](https://togithub.com/charliermarsh/ruff/releases/tag/v0.0.270)

[Compare
Source](https://togithub.com/charliermarsh/ruff/compare/v0.0.269...v0.0.270)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### Rules

- \[`flake8-bandit`] Implement `paramiko-call` (`S601`) by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4500](https://togithub.com/charliermarsh/ruff/pull/4500)
- \[`flake8-pyi`] Add autofix for PYI009 by
[@&#8203;qdegraaf](https://togithub.com/qdegraaf) in
[https://github.com/charliermarsh/ruff/pull/4583](https://togithub.com/charliermarsh/ruff/pull/4583)
- \[`flake8-pyi`] Implement `PYI013` by
[@&#8203;density](https://togithub.com/density) in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- \[`pylint`] Add `duplicate-value` (`W0130`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4515](https://togithub.com/charliermarsh/ruff/pull/4515)
- \[`pylint`] Add `named_expr_without_context` (`W0131`) by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4531](https://togithub.com/charliermarsh/ruff/pull/4531)
- \[`ruff`] Extend `RUF005` to recursive and literal-literal
concatenations by
[@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) in
[https://github.com/charliermarsh/ruff/pull/4557](https://togithub.com/charliermarsh/ruff/pull/4557)
- \[`ruff`] Make ambiguous-unicode detection sensitive to 'word' context
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4552](https://togithub.com/charliermarsh/ruff/pull/4552)
- \[`ruff`] Name ambiguous characters by
[@&#8203;covracer](https://togithub.com/covracer) in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

##### Settings

- Implement `--extend-fixable` option by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4297](https://togithub.com/charliermarsh/ruff/pull/4297)
- Support new `extend-per-file-ignores` setting by
[@&#8203;aacunningham](https://togithub.com/aacunningham) in
[https://github.com/charliermarsh/ruff/pull/4265](https://togithub.com/charliermarsh/ruff/pull/4265)

##### Bug Fixes

- Fix RUF010 auto-fix with parenthesis by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4524](https://togithub.com/charliermarsh/ruff/pull/4524)
- Parenthesize more sub-expressions in f-string conversion by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4535](https://togithub.com/charliermarsh/ruff/pull/4535)
- Fix false-positive for TRY302 if exception cause is given by
[@&#8203;153957](https://togithub.com/153957) in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- Fix `# isort: split` comment detection in nested blocks by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4584](https://togithub.com/charliermarsh/ruff/pull/4584)
- Avoid some false positives in dunder variable assigments by
[@&#8203;scop](https://togithub.com/scop) in
[https://github.com/charliermarsh/ruff/pull/4508](https://togithub.com/charliermarsh/ruff/pull/4508)
- Fix UP032 auto-fix with integers by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4525](https://togithub.com/charliermarsh/ruff/pull/4525)
- Improve reference resolution for deferred-annotations-within-classes
by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4509](https://togithub.com/charliermarsh/ruff/pull/4509)
- Improve handling of `__qualname__`, `__module__`, and `__class__` by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4512](https://togithub.com/charliermarsh/ruff/pull/4512)
- Include empty success test in JUnit output by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4537](https://togithub.com/charliermarsh/ruff/pull/4537)
- Fix SIM110 and SIM111 ranges by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4545](https://togithub.com/charliermarsh/ruff/pull/4545)
- Ignore `#region` code folding marks in eradicate rules by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4546](https://togithub.com/charliermarsh/ruff/pull/4546)
- Avoid infinite loop for required imports with isort: off by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4581](https://togithub.com/charliermarsh/ruff/pull/4581)
- Make B007 fix relevance stricter by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4607](https://togithub.com/charliermarsh/ruff/pull/4607)
- Introduce `tab-size` to correcly calculate the line length with
tabulations by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4167](https://togithub.com/charliermarsh/ruff/pull/4167)
- Visit `TypeVar` and `NewType` name arguments by
[@&#8203;charliermarsh](https://togithub.com/charliermarsh) in
[https://github.com/charliermarsh/ruff/pull/4627](https://togithub.com/charliermarsh/ruff/pull/4627)
- Improve `Message` sorting performance by
[@&#8203;MichaReiser](https://togithub.com/MichaReiser) in
[https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624)

#### New Contributors

- [@&#8203;hoel-bagard](https://togithub.com/hoel-bagard) made their
first contribution in
[https://github.com/charliermarsh/ruff/pull/4516](https://togithub.com/charliermarsh/ruff/pull/4516)
- [@&#8203;density](https://togithub.com/density) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517)
- [@&#8203;Mr-Pepe](https://togithub.com/Mr-Pepe) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4540](https://togithub.com/charliermarsh/ruff/pull/4540)
- [@&#8203;153957](https://togithub.com/153957) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559)
- [@&#8203;covracer](https://togithub.com/covracer) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4448](https://togithub.com/charliermarsh/ruff/pull/4448)

**Full Changelog**:
astral-sh/ruff@v0.0.269...v0.0.270

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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://app.renovatebot.com/dashboard#github/allenporter/flux-local).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rule Implementing or modifying a lint rule

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants