Skip to content
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

Fix uncessary-coding-comment fix when there's leading content #6775

Merged
merged 8 commits into from
Aug 23, 2023

Conversation

zanieb
Copy link
Member

@zanieb zanieb commented Aug 22, 2023

Closes #6756

Including whitespace, code, and continuations.

@github-actions
Copy link
Contributor

github-actions bot commented Aug 22, 2023

PR Check Results

Ecosystem

✅ ecosystem check detected no changes.

Benchmark

Linux

group                                      main                                   pr
-----                                      ----                                   --
formatter/large/dataset.py                 1.03      4.0±0.18ms    10.1 MB/sec    1.00      3.9±0.05ms    10.4 MB/sec
formatter/numpy/ctypeslib.py               1.00   821.9±31.04µs    20.3 MB/sec    1.00   824.6±14.86µs    20.2 MB/sec
formatter/numpy/globals.py                 1.05     85.8±1.85µs    34.4 MB/sec    1.00     81.7±2.80µs    36.1 MB/sec
formatter/pydantic/types.py                1.00  1591.7±49.23µs    16.0 MB/sec    1.00  1590.1±43.83µs    16.0 MB/sec
linter/all-rules/large/dataset.py          1.05     12.1±0.17ms     3.4 MB/sec    1.00     11.5±0.34ms     3.5 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.02      3.2±0.03ms     5.2 MB/sec    1.00      3.1±0.09ms     5.3 MB/sec
linter/all-rules/numpy/globals.py          1.05    457.8±4.09µs     6.4 MB/sec    1.00   438.1±14.17µs     6.7 MB/sec
linter/all-rules/pydantic/types.py         1.06      6.4±0.07ms     4.0 MB/sec    1.00      6.1±0.21ms     4.2 MB/sec
linter/default-rules/large/dataset.py      1.00      6.3±0.12ms     6.5 MB/sec    1.02      6.4±0.13ms     6.4 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.00  1356.7±32.98µs    12.3 MB/sec    1.01  1372.3±33.24µs    12.1 MB/sec
linter/default-rules/numpy/globals.py      1.00    159.9±4.07µs    18.4 MB/sec    1.04    166.2±2.02µs    17.7 MB/sec
linter/default-rules/pydantic/types.py     1.00      2.8±0.06ms     9.2 MB/sec    1.04      2.9±0.03ms     8.8 MB/sec

Windows

group                                      main                                   pr
-----                                      ----                                   --
formatter/large/dataset.py                 1.14      3.0±0.02ms    13.5 MB/sec    1.00      2.7±0.06ms    15.3 MB/sec
formatter/numpy/ctypeslib.py               1.11    577.9±5.41µs    28.8 MB/sec    1.00   522.6±13.40µs    31.9 MB/sec
formatter/numpy/globals.py                 1.07     59.0±0.80µs    50.0 MB/sec    1.00     55.1±2.00µs    53.6 MB/sec
formatter/pydantic/types.py                1.11  1210.6±15.96µs    21.1 MB/sec    1.00  1094.8±26.23µs    23.3 MB/sec
linter/all-rules/large/dataset.py          1.00      9.1±0.08ms     4.5 MB/sec    1.02      9.3±0.09ms     4.4 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.00      2.6±0.02ms     6.5 MB/sec    1.03      2.6±0.03ms     6.3 MB/sec
linter/all-rules/numpy/globals.py          1.00    265.7±4.20µs    11.1 MB/sec    1.03    273.0±5.54µs    10.8 MB/sec
linter/all-rules/pydantic/types.py         1.00      4.8±0.05ms     5.3 MB/sec    1.03      4.9±0.08ms     5.2 MB/sec
linter/default-rules/large/dataset.py      1.00      5.1±0.05ms     8.0 MB/sec    1.03      5.2±0.04ms     7.8 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.00   1063.4±9.53µs    15.7 MB/sec    1.02  1087.7±21.93µs    15.3 MB/sec
linter/default-rules/numpy/globals.py      1.00    107.8±1.93µs    27.4 MB/sec    1.02    109.6±1.98µs    26.9 MB/sec
linter/default-rules/pydantic/types.py     1.00      2.3±0.02ms    11.2 MB/sec    1.03      2.3±0.03ms    10.9 MB/sec

@zanieb zanieb force-pushed the fix/unecessary-coding-comment-fix-space branch from 7c85269 to 6f863fc Compare August 22, 2023 18:28
@zanieb zanieb force-pushed the fix/unecessary-coding-comment-fix-space branch from 6f863fc to c9621ea Compare August 22, 2023 18:28
@zanieb zanieb added bug Something isn't working fuzzer Surfaced via fuzzing. labels Aug 22, 2023
@zanieb zanieb changed the title Fix uncessary-coding-comment fix when there is same-line leading whitespace Fix uncessary-coding-comment fix when there leading content Aug 22, 2023
@zanieb zanieb changed the title Fix uncessary-coding-comment fix when there leading content Fix uncessary-coding-comment fix when there's leading content Aug 22, 2023
Copy link
Member

@charliermarsh charliermarsh left a comment

Choose a reason for hiding this comment

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

I think another valid solution here would be: if the comment isn't at the beginning of the line, delete just the comment (not the locator.full_line_end of the comment). Possibly a bit simpler since you wouldn't need to expand the line for the regex, wouldn't need to special-case continuations, etc. But defer to you as the author.

@zanieb
Copy link
Member Author

zanieb commented Aug 22, 2023

Hm that seems kind of nice but in the end we probably don't want to retain that extra content. Are there other rules that would cover the removing the remaining whitespace and newlines? I'm tempted to just move on until we see another edge-case in the future.

wouldn't need to expand the line for the regex

I still think we should be doing this anyway as the regex is designed to match a full line.

@charliermarsh
Copy link
Member

charliermarsh commented Aug 22, 2023

I worry that the regex will open the door to other problems though. How does the regex fare with an example like this?

"""
# coding=utf8""" # empty comment

(I hadn't considered this before, this is a new observation.)

@zanieb
Copy link
Member Author

zanieb commented Aug 22, 2023

:sigh: yeah that is broken too. We could address that in the current implementation by making the end of the regex more strict or by applying the regex twice (once to the comment itself and once to the line), but you've convinced me to reconsider the approach.

I'm not sure about just narrowing the match though. Per the PEP

There must not be any Python statement on the line that contains the encoding declaration.

we should probably just ignore cases entirely if the line doesn't match the regex. It feels incorrect to delete a comment when it's not a valid coding comment in the first place.

@charliermarsh
Copy link
Member

What about something like:

  • If there is any non-whitespace content between the start of the line and the comment, don't flag it.
  • If there is whitespace at the start of the line, only remove the comment range (not the entire line) or expand to include the continuation in the deletion.
  • Otherwise, remove the entire line.

@zanieb
Copy link
Member Author

zanieb commented Aug 23, 2023

I think applying the regex twice is the simplest way to ensure we're doing the right thing here without rewriting this whole thing to use a tokenizer? I could do that here but I'm leaning towards opening that as a follow-up issue for a contributor and merging this fix.

@zanieb
Copy link
Member Author

zanieb commented Aug 23, 2023

Thanks for the example — I thought you were suggesting using the tokenizer but that's nice and simple.

I think the only thing that differs now is

If there is whitespace at the start of the line, only remove the comment range (not the entire line) or expand to include the continuation in the deletion.

Comments following continuations are not valid coding definitions as far as I can tell, we probably shouldn't flag them at all. I think it's kind of academic at this point though.

Copy link
Member

@charliermarsh charliermarsh left a comment

Choose a reason for hiding this comment

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

This looks great!

@zanieb zanieb merged commit 0688883 into main Aug 23, 2023
@zanieb zanieb deleted the fix/unecessary-coding-comment-fix-space branch August 23, 2023 17:00
renovate bot referenced this pull request in ixm-one/pytest-cmake-presets Aug 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://beta.ruff.rs/docs)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/releases)) | `^0.0.285`
-> `^0.0.286` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>astral-sh/ruff (ruff)</summary>

###
[`v0.0.286`](https://github.com/astral-sh/ruff/releases/tag/v0.0.286)

[Compare
Source](https://github.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
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6784](https://github.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 [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6781](https://github.com/astral-sh/ruff/pull/6781)
- \[`flake8-pie`] Implement `unnecessary-range-start` (`PIE808`) by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6690](https://github.com/astral-sh/ruff/pull/6690)
- \[`flake8-pytest-style`] Add autofix for `PT014` by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6698](https://github.com/astral-sh/ruff/pull/6698)
- \[`pylint`] Implement `no-self-use` (`R6301`) by
[@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6574](https://github.com/astral-sh/ruff/pull/6574)
- \[`pylint`] Extend `repeated-equality-comparison-target` to check for
mixed orderings and Yoda conditions. by
[@&#8203;tjkuson](https://github.com/tjkuson) in
[https://github.com/astral-sh/ruff/pull/6691](https://github.com/astral-sh/ruff/pull/6691)

##### Settings

- Make isort's `detect-same-package` behavior configurable by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6833](https://github.com/astral-sh/ruff/pull/6833)

##### Bug Fixes

- Apply RUF017 when start is passed via position by
[@&#8203;hauntsaninja](https://github.com/hauntsaninja) in
[https://github.com/astral-sh/ruff/pull/6664](https://github.com/astral-sh/ruff/pull/6664)
- Use `typing_extensions.TypeAlias` for PYI026 fixes on pre-3.10 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6696](https://github.com/astral-sh/ruff/pull/6696)
- Ignore multi-comparisons in `repeated-equality-comparison-target` by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6705](https://github.com/astral-sh/ruff/pull/6705)
- Accept empty inner calls in C414 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6725](https://github.com/astral-sh/ruff/pull/6725)
- Allow next in FBT exclusions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6729](https://github.com/astral-sh/ruff/pull/6729)
- Allow `ctypes.WinError()` in flake8-raise by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6731](https://github.com/astral-sh/ruff/pull/6731)
- Ignore star imports when importing symbols in fixes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6743](https://github.com/astral-sh/ruff/pull/6743)
- Support C419 autofixes for set comprehensions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6744](https://github.com/astral-sh/ruff/pull/6744)
- Avoid attempting to fix unconventional submodule imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6745](https://github.com/astral-sh/ruff/pull/6745)
- Don't trigger `eq-without-hash` when `__hash__` is explicitly set to
`None` by [@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6739](https://github.com/astral-sh/ruff/pull/6739)
- Avoid E231 if comma is at end-of-line by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6747](https://github.com/astral-sh/ruff/pull/6747)
- Truncate some messages in diagnostics by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6748](https://github.com/astral-sh/ruff/pull/6748)
- Fix isolation groups for unused imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6774](https://github.com/astral-sh/ruff/pull/6774)
- Avoid fixing D200 for docstrings that end in escapes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6779](https://github.com/astral-sh/ruff/pull/6779)
- Parenthesize expressions prior to LibCST parsing by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6742](https://github.com/astral-sh/ruff/pull/6742)
- Fallback to end-of-file if ends in trailing continuation by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6789](https://github.com/astral-sh/ruff/pull/6789)
- Confine repeated-equality-comparison-target to names and attributes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6802](https://github.com/astral-sh/ruff/pull/6802)
- Fix `native-literals` handling of int literal with attribute access by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6792](https://github.com/astral-sh/ruff/pull/6792)
- Fix `uncessary-coding-comment` fix when there's leading content by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6775](https://github.com/astral-sh/ruff/pull/6775)
- Avoid attempting to fix PT018 in multi-statement lines by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6829](https://github.com/astral-sh/ruff/pull/6829)
- Update ERA100 to apply to commented dictionary items with trailing
comments by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6822](https://github.com/astral-sh/ruff/pull/6822)
- Avoid parsing other parts of a format specification if replacements
are present by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6858](https://github.com/astral-sh/ruff/pull/6858)
- Avoid panic in unused arguments rule for parameter-free lambda by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6679](https://github.com/astral-sh/ruff/pull/6679)
- Avoid `C417` for `lambda` with default and variadic parameters by
[@&#8203;dhruvmanila](https://github.com/dhruvmanila) in
[https://github.com/astral-sh/ruff/pull/6752](https://github.com/astral-sh/ruff/pull/6752)
- Add `networkx` to conventional aliases by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6778](https://github.com/astral-sh/ruff/pull/6778)
- Skip serializing cell ID if it's None by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6851](https://github.com/astral-sh/ruff/pull/6851)
- fix is_raw_string for multiple prefixes by
[@&#8203;davidszotten](https://github.com/davidszotten) in
[https://github.com/astral-sh/ruff/pull/6865](https://github.com/astral-sh/ruff/pull/6865)
- Add jupyter notebook cell ids in 4.5+ if missing by
[@&#8203;konstin](https://github.com/konstin) in
[https://github.com/astral-sh/ruff/pull/6853](https://github.com/astral-sh/ruff/pull/6853)

**Full Changelog**:
astral-sh/ruff@v0.0.285...v0.0.286

</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://developer.mend.io/github/ixm-one/pytest-cmake-presets).

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

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
jankatins referenced this pull request in jankatins/pr-workflow-example Aug 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://beta.ruff.rs/docs)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/releases)) | `0.0.285`
-> `0.0.286` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>astral-sh/ruff (ruff)</summary>

###
[`v0.0.286`](https://github.com/astral-sh/ruff/releases/tag/v0.0.286)

[Compare
Source](https://github.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
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6784](https://github.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 [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6781](https://github.com/astral-sh/ruff/pull/6781)
- \[`flake8-pie`] Implement `unnecessary-range-start` (`PIE808`) by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6690](https://github.com/astral-sh/ruff/pull/6690)
- \[`flake8-pytest-style`] Add autofix for `PT014` by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6698](https://github.com/astral-sh/ruff/pull/6698)
- \[`pylint`] Implement `no-self-use` (`R6301`) by
[@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6574](https://github.com/astral-sh/ruff/pull/6574)
- \[`pylint`] Extend `repeated-equality-comparison-target` to check for
mixed orderings and Yoda conditions. by
[@&#8203;tjkuson](https://github.com/tjkuson) in
[https://github.com/astral-sh/ruff/pull/6691](https://github.com/astral-sh/ruff/pull/6691)

##### Settings

- Make isort's `detect-same-package` behavior configurable by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6833](https://github.com/astral-sh/ruff/pull/6833)

##### Bug Fixes

- Apply RUF017 when start is passed via position by
[@&#8203;hauntsaninja](https://github.com/hauntsaninja) in
[https://github.com/astral-sh/ruff/pull/6664](https://github.com/astral-sh/ruff/pull/6664)
- Use `typing_extensions.TypeAlias` for PYI026 fixes on pre-3.10 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6696](https://github.com/astral-sh/ruff/pull/6696)
- Ignore multi-comparisons in `repeated-equality-comparison-target` by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6705](https://github.com/astral-sh/ruff/pull/6705)
- Accept empty inner calls in C414 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6725](https://github.com/astral-sh/ruff/pull/6725)
- Allow next in FBT exclusions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6729](https://github.com/astral-sh/ruff/pull/6729)
- Allow `ctypes.WinError()` in flake8-raise by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6731](https://github.com/astral-sh/ruff/pull/6731)
- Ignore star imports when importing symbols in fixes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6743](https://github.com/astral-sh/ruff/pull/6743)
- Support C419 autofixes for set comprehensions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6744](https://github.com/astral-sh/ruff/pull/6744)
- Avoid attempting to fix unconventional submodule imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6745](https://github.com/astral-sh/ruff/pull/6745)
- Don't trigger `eq-without-hash` when `__hash__` is explicitly set to
`None` by [@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6739](https://github.com/astral-sh/ruff/pull/6739)
- Avoid E231 if comma is at end-of-line by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6747](https://github.com/astral-sh/ruff/pull/6747)
- Truncate some messages in diagnostics by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6748](https://github.com/astral-sh/ruff/pull/6748)
- Fix isolation groups for unused imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6774](https://github.com/astral-sh/ruff/pull/6774)
- Avoid fixing D200 for docstrings that end in escapes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6779](https://github.com/astral-sh/ruff/pull/6779)
- Parenthesize expressions prior to LibCST parsing by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6742](https://github.com/astral-sh/ruff/pull/6742)
- Fallback to end-of-file if ends in trailing continuation by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6789](https://github.com/astral-sh/ruff/pull/6789)
- Confine repeated-equality-comparison-target to names and attributes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6802](https://github.com/astral-sh/ruff/pull/6802)
- Fix `native-literals` handling of int literal with attribute access by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6792](https://github.com/astral-sh/ruff/pull/6792)
- Fix `uncessary-coding-comment` fix when there's leading content by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6775](https://github.com/astral-sh/ruff/pull/6775)
- Avoid attempting to fix PT018 in multi-statement lines by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6829](https://github.com/astral-sh/ruff/pull/6829)
- Update ERA100 to apply to commented dictionary items with trailing
comments by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6822](https://github.com/astral-sh/ruff/pull/6822)
- Avoid parsing other parts of a format specification if replacements
are present by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6858](https://github.com/astral-sh/ruff/pull/6858)
- Avoid panic in unused arguments rule for parameter-free lambda by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6679](https://github.com/astral-sh/ruff/pull/6679)
- Avoid `C417` for `lambda` with default and variadic parameters by
[@&#8203;dhruvmanila](https://github.com/dhruvmanila) in
[https://github.com/astral-sh/ruff/pull/6752](https://github.com/astral-sh/ruff/pull/6752)
- Add `networkx` to conventional aliases by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6778](https://github.com/astral-sh/ruff/pull/6778)
- Skip serializing cell ID if it's None by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6851](https://github.com/astral-sh/ruff/pull/6851)
- fix is_raw_string for multiple prefixes by
[@&#8203;davidszotten](https://github.com/davidszotten) in
[https://github.com/astral-sh/ruff/pull/6865](https://github.com/astral-sh/ruff/pull/6865)
- Add jupyter notebook cell ids in 4.5+ if missing by
[@&#8203;konstin](https://github.com/konstin) in
[https://github.com/astral-sh/ruff/pull/6853](https://github.com/astral-sh/ruff/pull/6853)

**Full Changelog**:
astral-sh/ruff@v0.0.285...v0.0.286

</details>

---

### Configuration

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

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/jankatins/pr-workflow-example).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40MC4zIiwidXBkYXRlZEluVmVyIjoiMzYuNTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
renovate bot referenced this pull request in allenporter/flux-local Aug 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://beta.ruff.rs/docs)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/releases)) | `==0.0.285`
-> `==0.0.286` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>astral-sh/ruff (ruff)</summary>

###
[`v0.0.286`](https://github.com/astral-sh/ruff/releases/tag/v0.0.286)

[Compare
Source](https://github.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
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6784](https://github.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 [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6781](https://github.com/astral-sh/ruff/pull/6781)
- \[`flake8-pie`] Implement `unnecessary-range-start` (`PIE808`) by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6690](https://github.com/astral-sh/ruff/pull/6690)
- \[`flake8-pytest-style`] Add autofix for `PT014` by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6698](https://github.com/astral-sh/ruff/pull/6698)
- \[`pylint`] Implement `no-self-use` (`R6301`) by
[@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6574](https://github.com/astral-sh/ruff/pull/6574)
- \[`pylint`] Extend `repeated-equality-comparison-target` to check for
mixed orderings and Yoda conditions. by
[@&#8203;tjkuson](https://github.com/tjkuson) in
[https://github.com/astral-sh/ruff/pull/6691](https://github.com/astral-sh/ruff/pull/6691)

##### Settings

- Make isort's `detect-same-package` behavior configurable by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6833](https://github.com/astral-sh/ruff/pull/6833)

##### Bug Fixes

- Apply RUF017 when start is passed via position by
[@&#8203;hauntsaninja](https://github.com/hauntsaninja) in
[https://github.com/astral-sh/ruff/pull/6664](https://github.com/astral-sh/ruff/pull/6664)
- Use `typing_extensions.TypeAlias` for PYI026 fixes on pre-3.10 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6696](https://github.com/astral-sh/ruff/pull/6696)
- Ignore multi-comparisons in `repeated-equality-comparison-target` by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6705](https://github.com/astral-sh/ruff/pull/6705)
- Accept empty inner calls in C414 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6725](https://github.com/astral-sh/ruff/pull/6725)
- Allow next in FBT exclusions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6729](https://github.com/astral-sh/ruff/pull/6729)
- Allow `ctypes.WinError()` in flake8-raise by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6731](https://github.com/astral-sh/ruff/pull/6731)
- Ignore star imports when importing symbols in fixes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6743](https://github.com/astral-sh/ruff/pull/6743)
- Support C419 autofixes for set comprehensions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6744](https://github.com/astral-sh/ruff/pull/6744)
- Avoid attempting to fix unconventional submodule imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6745](https://github.com/astral-sh/ruff/pull/6745)
- Don't trigger `eq-without-hash` when `__hash__` is explicitly set to
`None` by [@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6739](https://github.com/astral-sh/ruff/pull/6739)
- Avoid E231 if comma is at end-of-line by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6747](https://github.com/astral-sh/ruff/pull/6747)
- Truncate some messages in diagnostics by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6748](https://github.com/astral-sh/ruff/pull/6748)
- Fix isolation groups for unused imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6774](https://github.com/astral-sh/ruff/pull/6774)
- Avoid fixing D200 for docstrings that end in escapes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6779](https://github.com/astral-sh/ruff/pull/6779)
- Parenthesize expressions prior to LibCST parsing by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6742](https://github.com/astral-sh/ruff/pull/6742)
- Fallback to end-of-file if ends in trailing continuation by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6789](https://github.com/astral-sh/ruff/pull/6789)
- Confine repeated-equality-comparison-target to names and attributes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6802](https://github.com/astral-sh/ruff/pull/6802)
- Fix `native-literals` handling of int literal with attribute access by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6792](https://github.com/astral-sh/ruff/pull/6792)
- Fix `uncessary-coding-comment` fix when there's leading content by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6775](https://github.com/astral-sh/ruff/pull/6775)
- Avoid attempting to fix PT018 in multi-statement lines by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6829](https://github.com/astral-sh/ruff/pull/6829)
- Update ERA100 to apply to commented dictionary items with trailing
comments by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6822](https://github.com/astral-sh/ruff/pull/6822)
- Avoid parsing other parts of a format specification if replacements
are present by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6858](https://github.com/astral-sh/ruff/pull/6858)
- Avoid panic in unused arguments rule for parameter-free lambda by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6679](https://github.com/astral-sh/ruff/pull/6679)
- Avoid `C417` for `lambda` with default and variadic parameters by
[@&#8203;dhruvmanila](https://github.com/dhruvmanila) in
[https://github.com/astral-sh/ruff/pull/6752](https://github.com/astral-sh/ruff/pull/6752)
- Add `networkx` to conventional aliases by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6778](https://github.com/astral-sh/ruff/pull/6778)
- Skip serializing cell ID if it's None by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6851](https://github.com/astral-sh/ruff/pull/6851)
- fix is_raw_string for multiple prefixes by
[@&#8203;davidszotten](https://github.com/davidszotten) in
[https://github.com/astral-sh/ruff/pull/6865](https://github.com/astral-sh/ruff/pull/6865)
- Add jupyter notebook cell ids in 4.5+ if missing by
[@&#8203;konstin](https://github.com/konstin) in
[https://github.com/astral-sh/ruff/pull/6853](https://github.com/astral-sh/ruff/pull/6853)

**Full Changelog**:
astral-sh/ruff@v0.0.285...v0.0.286

</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://developer.mend.io/github/allenporter/flux-local).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in allenporter/pyrainbird Aug 27, 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://beta.ruff.rs/docs)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/releases)) | `==0.0.285`
-> `==0.0.286` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.0.285/0.0.286?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>astral-sh/ruff (ruff)</summary>

###
[`v0.0.286`](https://github.com/astral-sh/ruff/releases/tag/v0.0.286)

[Compare
Source](https://github.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
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6784](https://github.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 [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6781](https://github.com/astral-sh/ruff/pull/6781)
- \[`flake8-pie`] Implement `unnecessary-range-start` (`PIE808`) by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6690](https://github.com/astral-sh/ruff/pull/6690)
- \[`flake8-pytest-style`] Add autofix for `PT014` by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6698](https://github.com/astral-sh/ruff/pull/6698)
- \[`pylint`] Implement `no-self-use` (`R6301`) by
[@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6574](https://github.com/astral-sh/ruff/pull/6574)
- \[`pylint`] Extend `repeated-equality-comparison-target` to check for
mixed orderings and Yoda conditions. by
[@&#8203;tjkuson](https://github.com/tjkuson) in
[https://github.com/astral-sh/ruff/pull/6691](https://github.com/astral-sh/ruff/pull/6691)

##### Settings

- Make isort's `detect-same-package` behavior configurable by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6833](https://github.com/astral-sh/ruff/pull/6833)

##### Bug Fixes

- Apply RUF017 when start is passed via position by
[@&#8203;hauntsaninja](https://github.com/hauntsaninja) in
[https://github.com/astral-sh/ruff/pull/6664](https://github.com/astral-sh/ruff/pull/6664)
- Use `typing_extensions.TypeAlias` for PYI026 fixes on pre-3.10 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6696](https://github.com/astral-sh/ruff/pull/6696)
- Ignore multi-comparisons in `repeated-equality-comparison-target` by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6705](https://github.com/astral-sh/ruff/pull/6705)
- Accept empty inner calls in C414 by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6725](https://github.com/astral-sh/ruff/pull/6725)
- Allow next in FBT exclusions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6729](https://github.com/astral-sh/ruff/pull/6729)
- Allow `ctypes.WinError()` in flake8-raise by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6731](https://github.com/astral-sh/ruff/pull/6731)
- Ignore star imports when importing symbols in fixes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6743](https://github.com/astral-sh/ruff/pull/6743)
- Support C419 autofixes for set comprehensions by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6744](https://github.com/astral-sh/ruff/pull/6744)
- Avoid attempting to fix unconventional submodule imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6745](https://github.com/astral-sh/ruff/pull/6745)
- Don't trigger `eq-without-hash` when `__hash__` is explicitly set to
`None` by [@&#8203;LaBatata101](https://github.com/LaBatata101) in
[https://github.com/astral-sh/ruff/pull/6739](https://github.com/astral-sh/ruff/pull/6739)
- Avoid E231 if comma is at end-of-line by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6747](https://github.com/astral-sh/ruff/pull/6747)
- Truncate some messages in diagnostics by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6748](https://github.com/astral-sh/ruff/pull/6748)
- Fix isolation groups for unused imports by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6774](https://github.com/astral-sh/ruff/pull/6774)
- Avoid fixing D200 for docstrings that end in escapes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6779](https://github.com/astral-sh/ruff/pull/6779)
- Parenthesize expressions prior to LibCST parsing by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6742](https://github.com/astral-sh/ruff/pull/6742)
- Fallback to end-of-file if ends in trailing continuation by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6789](https://github.com/astral-sh/ruff/pull/6789)
- Confine repeated-equality-comparison-target to names and attributes by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6802](https://github.com/astral-sh/ruff/pull/6802)
- Fix `native-literals` handling of int literal with attribute access by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6792](https://github.com/astral-sh/ruff/pull/6792)
- Fix `uncessary-coding-comment` fix when there's leading content by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6775](https://github.com/astral-sh/ruff/pull/6775)
- Avoid attempting to fix PT018 in multi-statement lines by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6829](https://github.com/astral-sh/ruff/pull/6829)
- Update ERA100 to apply to commented dictionary items with trailing
comments by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6822](https://github.com/astral-sh/ruff/pull/6822)
- Avoid parsing other parts of a format specification if replacements
are present by [@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6858](https://github.com/astral-sh/ruff/pull/6858)
- Avoid panic in unused arguments rule for parameter-free lambda by
[@&#8203;charliermarsh](https://github.com/charliermarsh) in
[https://github.com/astral-sh/ruff/pull/6679](https://github.com/astral-sh/ruff/pull/6679)
- Avoid `C417` for `lambda` with default and variadic parameters by
[@&#8203;dhruvmanila](https://github.com/dhruvmanila) in
[https://github.com/astral-sh/ruff/pull/6752](https://github.com/astral-sh/ruff/pull/6752)
- Add `networkx` to conventional aliases by
[@&#8203;zanieb](https://github.com/zanieb) in
[https://github.com/astral-sh/ruff/pull/6778](https://github.com/astral-sh/ruff/pull/6778)
- Skip serializing cell ID if it's None by
[@&#8203;harupy](https://github.com/harupy) in
[https://github.com/astral-sh/ruff/pull/6851](https://github.com/astral-sh/ruff/pull/6851)
- fix is_raw_string for multiple prefixes by
[@&#8203;davidszotten](https://github.com/davidszotten) in
[https://github.com/astral-sh/ruff/pull/6865](https://github.com/astral-sh/ruff/pull/6865)
- Add jupyter notebook cell ids in 4.5+ if missing by
[@&#8203;konstin](https://github.com/konstin) in
[https://github.com/astral-sh/ruff/pull/6853](https://github.com/astral-sh/ruff/pull/6853)

**Full Changelog**:
astral-sh/ruff@v0.0.285...v0.0.286

</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://developer.mend.io/github/allenporter/pyrainbird).

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

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
bug Something isn't working fuzzer Surfaced via fuzzing.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rule UP009 causes to show autofix error
2 participants