Skip to content

[flake8-bugbear] Add pytest.raises(Exception) support to B017#4052

Merged
charliermarsh merged 5 commits intoastral-sh:mainfrom
alanhdu:pytest-b017
Apr 21, 2023
Merged

[flake8-bugbear] Add pytest.raises(Exception) support to B017#4052
charliermarsh merged 5 commits intoastral-sh:mainfrom
alanhdu:pytest-b017

Conversation

@alanhdu
Copy link
Copy Markdown
Contributor

@alanhdu alanhdu commented Apr 20, 2023

pytest.raises(Exception) has the same problem as self.assertRaises(Exception), and so we should also raise a lint error when people use it. This matches the upstream flake8-bugbear behavior (see PyCQA/flake8-bugbear#169).

This makes with pytest.raises(Exception) a lint failure, although it leaves pytest.raises(Exception, match="<REGEX>") alone (since that corresponds to the assertRaisesRegex.

/// the code being tested is never executed due to a typo.
///
/// Either assert for a more specific exception (builtin or custom), use
/// `assertRaisesRegex` or the context manager form of `assertRaises`.
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This felt misleading, since the context manager form of assertRaises actually gives a lint error!

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 20, 2023

PR Check Results

Ecosystem

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

airflow (+20, -0)

+ tests/jobs/test_scheduler_job.py:1696:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/hooks/test_base_aws.py:961:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/hooks/test_base_aws.py:966:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/hooks/test_ecs.py:146:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/hooks/test_glue_catalog.py:118:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/log/test_s3_task_handler.py:107:13: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/operators/test_athena.py:123:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/operators/test_athena.py:148:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/operators/test_athena.py:172:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/amazon/aws/operators/test_athena.py:195:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/apache/beam/hooks/test_beam.py:372:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/cloud/hooks/test_dataflow.py:1901:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/cloud/hooks/test_dataproc.py:1031:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/common/hooks/test_base_google.py:251:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/common/hooks/test_base_google.py:277:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/common/hooks/test_base_google.py:327:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/google/common/hooks/test_base_google.py:348:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/microsoft/azure/hooks/test_azure_synapse.py:174:13: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/mysql/transfers/test_s3_to_mysql.py:89:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/providers/ssh/hooks/test_ssh.py:943:9: B017 `pytest.raises(Exception)` should be considered evil

bokeh (+2, -0)

+ tests/unit/bokeh/io/test_state.py:86:9: B017 `pytest.raises(Exception)` should be considered evil
+ tests/unit/bokeh/io/test_state.py:88:9: B017 `pytest.raises(Exception)` should be considered evil

Benchmark

Linux

group                                      main                                   pr
-----                                      ----                                   --
linter/all-rules/large/dataset.py          1.00     15.1±0.02ms     2.7 MB/sec    1.01     15.2±0.03ms     2.7 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.00      3.8±0.00ms     4.3 MB/sec    1.00      3.9±0.01ms     4.3 MB/sec
linter/all-rules/numpy/globals.py          1.00    419.5±1.57µs     7.0 MB/sec    1.00    420.0±1.25µs     7.0 MB/sec
linter/all-rules/pydantic/types.py         1.00      6.5±0.01ms     3.9 MB/sec    1.00      6.5±0.01ms     3.9 MB/sec
linter/default-rules/large/dataset.py      1.00      7.8±0.01ms     5.2 MB/sec    1.01      7.8±0.01ms     5.2 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.00   1743.0±4.62µs     9.6 MB/sec    1.00   1746.7±2.00µs     9.5 MB/sec
linter/default-rules/numpy/globals.py      1.00    182.6±0.29µs    16.2 MB/sec    1.01    184.3±0.39µs    16.0 MB/sec
linter/default-rules/pydantic/types.py     1.00      3.6±0.01ms     7.1 MB/sec    1.00      3.6±0.00ms     7.1 MB/sec
parser/large/dataset.py                    1.00      6.3±0.00ms     6.5 MB/sec    1.00      6.3±0.00ms     6.5 MB/sec
parser/numpy/ctypeslib.py                  1.00   1243.5±1.05µs    13.4 MB/sec    1.00   1239.4±0.88µs    13.4 MB/sec
parser/numpy/globals.py                    1.00    125.3±0.33µs    23.5 MB/sec    1.01    126.5±0.28µs    23.3 MB/sec
parser/pydantic/types.py                   1.00      2.7±0.00ms     9.4 MB/sec    1.00      2.7±0.00ms     9.4 MB/sec

Windows

group                                      main                                   pr
-----                                      ----                                   --
linter/all-rules/large/dataset.py          1.00     19.1±0.53ms     2.1 MB/sec    1.03     19.6±0.56ms     2.1 MB/sec
linter/all-rules/numpy/ctypeslib.py        1.00      5.1±0.22ms     3.3 MB/sec    1.01      5.1±0.20ms     3.3 MB/sec
linter/all-rules/numpy/globals.py          1.03   610.0±23.18µs     4.8 MB/sec    1.00   593.5±20.07µs     5.0 MB/sec
linter/all-rules/pydantic/types.py         1.03      8.5±0.34ms     3.0 MB/sec    1.00      8.3±0.34ms     3.1 MB/sec
linter/default-rules/large/dataset.py      1.00     10.1±0.33ms     4.0 MB/sec    1.00     10.2±0.52ms     4.0 MB/sec
linter/default-rules/numpy/ctypeslib.py    1.02      2.3±0.09ms     7.3 MB/sec    1.00      2.2±0.25ms     7.5 MB/sec
linter/default-rules/numpy/globals.py      1.03    228.7±9.12µs    12.9 MB/sec    1.00   223.0±11.30µs    13.2 MB/sec
linter/default-rules/pydantic/types.py     1.03      4.5±0.19ms     5.7 MB/sec    1.00      4.4±0.13ms     5.8 MB/sec
parser/large/dataset.py                    1.06      8.1±0.27ms     5.0 MB/sec    1.00      7.6±0.17ms     5.3 MB/sec
parser/numpy/ctypeslib.py                  1.00  1476.5±59.89µs    11.3 MB/sec    1.00  1478.4±32.23µs    11.3 MB/sec
parser/numpy/globals.py                    1.00    150.0±5.20µs    19.7 MB/sec    1.01    151.3±4.36µs    19.5 MB/sec
parser/pydantic/types.py                   1.00      3.3±0.13ms     7.7 MB/sec    1.01      3.4±0.12ms     7.6 MB/sec

@charliermarsh charliermarsh added the rule Implementing or modifying a lint rule label Apr 21, 2023
@charliermarsh charliermarsh changed the title Add pytest.raises(Exception) support to B017 [flake8-bugbear] Add pytest.raises(Exception) support to B017 Apr 21, 2023
@charliermarsh charliermarsh enabled auto-merge (squash) April 21, 2023 03:37
@charliermarsh
Copy link
Copy Markdown
Member

Thank you!

@charliermarsh charliermarsh merged commit 82abbc7 into astral-sh:main Apr 21, 2023
@alanhdu alanhdu deleted the pytest-b017 branch April 21, 2023 14:47
renovate bot referenced this pull request in ixm-one/pytest-cmake-presets Apr 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) | `^0.0.262` ->
`^0.0.263` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/compatibility-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/confidence-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

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

#### What's Changed

##### Rules

- \[`flake8-bugbear`] Add `pytest.raises(Exception)` support to B017 by
[@&#8203;alanhdu](https://togithub.com/alanhdu) in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- \[`flake8-import-conventions`] Implement new rule `ICN003` to ban
`from ... import ...` for selected modules by
[@&#8203;edgarrmondragon](https://togithub.com/edgarrmondragon) in
[https://github.com/charliermarsh/ruff/pull/4040](https://togithub.com/charliermarsh/ruff/pull/4040)
- \[`pylint`] Implement PLE0302 `unexpected-special-method-signature` by
[@&#8203;mccullocht](https://togithub.com/mccullocht) in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)
- \[`pep8-naming`] Ignore `N815` for `TypedDict` fields by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4066](https://togithub.com/charliermarsh/ruff/pull/4066)

##### Bug Fixes

- Avoid `PYI015` for valid default value without annotation by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4043](https://togithub.com/charliermarsh/ruff/pull/4043)
- Avoid infinite-propagation of inline comments when force-splitting
imports by [@&#8203;charliermarsh](https://togithub.com/charliermarsh)
in
[https://github.com/charliermarsh/ruff/pull/4074](https://togithub.com/charliermarsh/ruff/pull/4074)
- Fix SIM222 and SIM223 false positives and auto-fix by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4063](https://togithub.com/charliermarsh/ruff/pull/4063)
- Unify positional and keyword arguments when checking for missing
arguments in docstring by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4067](https://togithub.com/charliermarsh/ruff/pull/4067)
- Avoid `RUF008` if field annotation is immutable by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4039](https://togithub.com/charliermarsh/ruff/pull/4039)
- Increment priority should be (branch-local, global) by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4070](https://togithub.com/charliermarsh/ruff/pull/4070)
- Ignore `ClassVar` annotation for `RUF008`, `RUF009` by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4081](https://togithub.com/charliermarsh/ruff/pull/4081)
- Support --fix in watch mode by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4035](https://togithub.com/charliermarsh/ruff/pull/4035)

#### New Contributors

- [@&#8203;alanhdu](https://togithub.com/alanhdu) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- [@&#8203;pronoym99](https://togithub.com/pronoym99) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4055](https://togithub.com/charliermarsh/ruff/pull/4055)
- [@&#8203;Secrus](https://togithub.com/Secrus) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4085](https://togithub.com/charliermarsh/ruff/pull/4085)
- [@&#8203;madkinsz](https://togithub.com/madkinsz) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4084](https://togithub.com/charliermarsh/ruff/pull/4084)
- [@&#8203;mccullocht](https://togithub.com/mccullocht) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)

**Full Changelog**:
astral-sh/ruff@v0.0.262...v0.0.263

</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:eyJjcmVhdGVkSW5WZXIiOiIzNS41OC4yIiwidXBkYXRlZEluVmVyIjoiMzUuNTguMiJ9-->

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/flux-local Apr 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://togithub.com/charliermarsh/ruff) | `==0.0.262` ->
`==0.0.263` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/compatibility-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/confidence-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

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

#### What's Changed

##### Rules

- \[`flake8-bugbear`] Add `pytest.raises(Exception)` support to B017 by
[@&#8203;alanhdu](https://togithub.com/alanhdu) in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- \[`flake8-import-conventions`] Implement new rule `ICN003` to ban
`from ... import ...` for selected modules by
[@&#8203;edgarrmondragon](https://togithub.com/edgarrmondragon) in
[https://github.com/charliermarsh/ruff/pull/4040](https://togithub.com/charliermarsh/ruff/pull/4040)
- \[`pylint`] Implement PLE0302 `unexpected-special-method-signature` by
[@&#8203;mccullocht](https://togithub.com/mccullocht) in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)
- \[`pep8-naming`] Ignore `N815` for `TypedDict` fields by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4066](https://togithub.com/charliermarsh/ruff/pull/4066)

##### Bug Fixes

- Avoid `PYI015` for valid default value without annotation by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4043](https://togithub.com/charliermarsh/ruff/pull/4043)
- Avoid infinite-propagation of inline comments when force-splitting
imports by [@&#8203;charliermarsh](https://togithub.com/charliermarsh)
in
[https://github.com/charliermarsh/ruff/pull/4074](https://togithub.com/charliermarsh/ruff/pull/4074)
- Fix SIM222 and SIM223 false positives and auto-fix by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4063](https://togithub.com/charliermarsh/ruff/pull/4063)
- Unify positional and keyword arguments when checking for missing
arguments in docstring by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4067](https://togithub.com/charliermarsh/ruff/pull/4067)
- Avoid `RUF008` if field annotation is immutable by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4039](https://togithub.com/charliermarsh/ruff/pull/4039)
- Increment priority should be (branch-local, global) by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4070](https://togithub.com/charliermarsh/ruff/pull/4070)
- Ignore `ClassVar` annotation for `RUF008`, `RUF009` by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4081](https://togithub.com/charliermarsh/ruff/pull/4081)
- Support --fix in watch mode by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4035](https://togithub.com/charliermarsh/ruff/pull/4035)

#### New Contributors

- [@&#8203;alanhdu](https://togithub.com/alanhdu) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- [@&#8203;pronoym99](https://togithub.com/pronoym99) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4055](https://togithub.com/charliermarsh/ruff/pull/4055)
- [@&#8203;Secrus](https://togithub.com/Secrus) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4085](https://togithub.com/charliermarsh/ruff/pull/4085)
- [@&#8203;madkinsz](https://togithub.com/madkinsz) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4084](https://togithub.com/charliermarsh/ruff/pull/4084)
- [@&#8203;mccullocht](https://togithub.com/mccullocht) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)

**Full Changelog**:
astral-sh/ruff@v0.0.262...v0.0.263

</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:eyJjcmVhdGVkSW5WZXIiOiIzNS41OC4yIiwidXBkYXRlZEluVmVyIjoiMzUuNTguMiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in allenporter/pyrainbird Apr 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://togithub.com/charliermarsh/ruff) | `==0.0.262` ->
`==0.0.263` |
[![age](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/compatibility-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/ruff/0.0.263/confidence-slim/0.0.262)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

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

##### What's Changed

##### Rules

- \[`flake8-bugbear`] Add `pytest.raises(Exception)` support to B017 by
[@&#8203;alanhdu](https://togithub.com/alanhdu) in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- \[`flake8-import-conventions`] Implement new rule `ICN003` to ban
`from ... import ...` for selected modules by
[@&#8203;edgarrmondragon](https://togithub.com/edgarrmondragon) in
[https://github.com/charliermarsh/ruff/pull/4040](https://togithub.com/charliermarsh/ruff/pull/4040)
- \[`pylint`] Implement PLE0302 `unexpected-special-method-signature` by
[@&#8203;mccullocht](https://togithub.com/mccullocht) in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)
- \[`pep8-naming`] Ignore `N815` for `TypedDict` fields by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4066](https://togithub.com/charliermarsh/ruff/pull/4066)

##### Bug Fixes

- Avoid `PYI015` for valid default value without annotation by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4043](https://togithub.com/charliermarsh/ruff/pull/4043)
- Avoid infinite-propagation of inline comments when force-splitting
imports by [@&#8203;charliermarsh](https://togithub.com/charliermarsh)
in
[https://github.com/charliermarsh/ruff/pull/4074](https://togithub.com/charliermarsh/ruff/pull/4074)
- Fix SIM222 and SIM223 false positives and auto-fix by
[@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in
[https://github.com/charliermarsh/ruff/pull/4063](https://togithub.com/charliermarsh/ruff/pull/4063)
- Unify positional and keyword arguments when checking for missing
arguments in docstring by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4067](https://togithub.com/charliermarsh/ruff/pull/4067)
- Avoid `RUF008` if field annotation is immutable by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4039](https://togithub.com/charliermarsh/ruff/pull/4039)
- Increment priority should be (branch-local, global) by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4070](https://togithub.com/charliermarsh/ruff/pull/4070)
- Ignore `ClassVar` annotation for `RUF008`, `RUF009` by
[@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in
[https://github.com/charliermarsh/ruff/pull/4081](https://togithub.com/charliermarsh/ruff/pull/4081)
- Support --fix in watch mode by
[@&#8203;evanrittenhouse](https://togithub.com/evanrittenhouse) in
[https://github.com/charliermarsh/ruff/pull/4035](https://togithub.com/charliermarsh/ruff/pull/4035)

##### New Contributors

- [@&#8203;alanhdu](https://togithub.com/alanhdu) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4052](https://togithub.com/charliermarsh/ruff/pull/4052)
- [@&#8203;pronoym99](https://togithub.com/pronoym99) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4055](https://togithub.com/charliermarsh/ruff/pull/4055)
- [@&#8203;Secrus](https://togithub.com/Secrus) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4085](https://togithub.com/charliermarsh/ruff/pull/4085)
- [@&#8203;madkinsz](https://togithub.com/madkinsz) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4084](https://togithub.com/charliermarsh/ruff/pull/4084)
- [@&#8203;mccullocht](https://togithub.com/mccullocht) made their first
contribution in
[https://github.com/charliermarsh/ruff/pull/4075](https://togithub.com/charliermarsh/ruff/pull/4075)

**Full Changelog**:
astral-sh/ruff@v0.0.262...v0.0.263

</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:eyJjcmVhdGVkSW5WZXIiOiIzNS41OC4yIiwidXBkYXRlZEluVmVyIjoiMzUuNTguMiJ9-->

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.

2 participants