-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend RUF005
to recursive and literal-literal concatenations
#4557
Conversation
PR Check ResultsEcosystemℹ️ ecosystem check detected changes. (+10, -5, 0 error(s)) airflow (+9, -5)
+ airflow/providers/apache/beam/hooks/beam.py:262:30: RUF005 [*] Consider `[py_interpreter, *py_options, py_file]` instead of concatenation
- airflow/providers/apache/beam/hooks/beam.py:262:30: RUF005 [*] Consider `[py_interpreter, *py_options]` instead of concatenation
+ airflow/providers/apache/hive/hooks/hive.py:170:16: RUF005 [*] Consider `[hive_bin, *cmd_extra, *hive_params_list]` instead of concatenation
- airflow/providers/apache/hive/hooks/hive.py:170:16: RUF005 [*] Consider `[hive_bin, *cmd_extra]` instead of concatenation
+ airflow/providers/apache/hive/operators/hive_stats.py:172:13: RUF005 [*] Consider `(self.ds, self.dttm, self.table, part_json, r[0][0], r[0][1], r[1])` instead of concatenation
+ airflow/utils/python_virtualenv.py:43:11: RUF005 [*] Consider `[f"{tmp_dir}/bin/pip", "install", *pip_install_options, "-r"]` instead of concatenation
- airflow/utils/python_virtualenv.py:43:11: RUF005 [*] Consider `[f"{tmp_dir}/bin/pip", "install", *pip_install_options]` instead of concatenation
+ tests/providers/amazon/aws/hooks/test_eks.py:1170:17: RUF005 Consider `[POD_EXECUTION_ROLE_ARN, (ClusterAttributes.CLUSTER_NAME, cluster_name), (FargateProfileAttributes.FARGATE_PROFILE_NAME, fargate_profile_name), (FargateProfileAttributes.SELECTORS, selectors)]` instead of concatenation
- tests/providers/amazon/aws/hooks/test_eks.py:754:17: RUF005 Consider `[*NodegroupInputs.REQUIRED, (ClusterAttributes.CLUSTER_NAME, generated_test_data.existing_cluster_name), (NodegroupAttributes.NODEGROUP_NAME, nodegroup_name)]` instead of concatenation
+ tests/providers/apache/hive/operators/test_hive_stats.py:155:13: RUF005 [*] Consider `(hive_stats_collection_operator.ds, hive_stats_collection_operator.dttm, hive_stats_collection_operator.table, mock_json_dumps.return_value, r[0][0], r[0][1], r[1])` instead of concatenation
+ tests/providers/apache/hive/operators/test_hive_stats.py:203:13: RUF005 [*] Consider `(hive_stats_collection_operator.ds, hive_stats_collection_operator.dttm, hive_stats_collection_operator.table, mock_json_dumps.return_value, r[0][0], r[0][1], r[1])` instead of concatenation
+ tests/providers/apache/hive/operators/test_hive_stats.py:251:13: RUF005 [*] Consider `(hive_stats_collection_operator.ds, hive_stats_collection_operator.dttm, hive_stats_collection_operator.table, mock_json_dumps.return_value, r[0][0], r[0][1], r[1])` instead of concatenation
+ tests/utils/test_python_virtualenv.py:64:13: RUF005 [*] Consider `["/VENV/bin/pip", "install", *pip_install_options, "apache-beam[gcp]"]` instead of concatenation
- tests/utils/test_python_virtualenv.py:64:13: RUF005 [*] Consider `["/VENV/bin/pip", "install", *pip_install_options]` instead of concatenation scikit-build (+1, -0)
+ tests/test_issue342_cmake_osx_args_in_setup.py:178:44: RUF005 [*] Consider `["build", *cli_setup_args, "--", *cli_cmake_args]` instead of concatenation
BenchmarkLinux
Windows
|
crates/ruff/src/rules/ruff/rules/collection_literal_concatenation.rs
Outdated
Show resolved
Hide resolved
crates/ruff/src/rules/ruff/rules/collection_literal_concatenation.rs
Outdated
Show resolved
Hide resolved
else if splat_element.is_list_expr() || splat_element.is_tuple_expr() { | ||
new_elts = other_elements.clone(); | ||
|
||
let mut elts = match splat_element { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How would this deal with (1,) + [2]
or [1] + (2,)
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Running ruff on a file with:
a = (1,) + [2]
b = (1, 2, 3) + (4,)
c = (7, 8, 9) + b
The current version outputs a warning only for the last line, whereas the PR in its current state outputs a warning for all three lines. While a warning on the first line is clearly undesired (that's a typing error), should the one on the second line be kept ?
Do you mind adding some information to the PR summary around what needed to change, and why? |
To be honest I'm not sure I went about it the right way, so if you think that there is a better way to solve the issue I don't mind redoing it another way or trying to tackle a different issue. On another note, I have a question about the formatting of the test fixture. The following test always gets formatted by black during the pre-commit verify: foo + [ # This will be preserved, but doesn't prevent the fix
] Should I remove this test (and maybe include a replacement one), or if it better to use |
crates/ruff/src/rules/ruff/rules/collection_literal_concatenation.rs
Outdated
Show resolved
Hide resolved
…ion.rs Co-authored-by: Micha Reiser <micha@reiser.io>
Could you check with |
Thank you for the suggestion, I've done that and it got rid of the unwanted warnings. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated with the changes from main and a cargo test
cargo insta review
, otherwise i think it's ready
I'll take a look at this tonight and (hopefully) merge. |
RUF005
to recursive and literal-literal concatenations
[![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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624) #### New Contributors - [@​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) - [@​density](https://togithub.com/density) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517) - [@​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) - [@​153957](https://togithub.com/153957) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559) - [@​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>
[![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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624) #### New Contributors - [@​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) - [@​density](https://togithub.com/density) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517) - [@​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) - [@​153957](https://togithub.com/153957) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559) - [@​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>
[![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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​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 [@​MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/charliermarsh/ruff/pull/4624](https://togithub.com/charliermarsh/ruff/pull/4624) #### New Contributors - [@​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) - [@​density](https://togithub.com/density) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4517](https://togithub.com/charliermarsh/ruff/pull/4517) - [@​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) - [@​153957](https://togithub.com/153957) made their first contribution in [https://github.com/charliermarsh/ruff/pull/4559](https://togithub.com/charliermarsh/ruff/pull/4559) - [@​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>
This attempts to fix #3496.
It introduces the following changes:
a = [1] + [2]
). (I'm not sure if this behavior is desired, it's not directly related to the issue).