psf/black (lint/black)
### [`v24.4.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#2440)
[Compare Source](https://togithub.com/psf/black/compare/24.3.0...24.4.0)
##### Stable style
- Fix unwanted crashes caused by AST equivalency check ([#4290](https://togithub.com/psf/black/issues/4290))
##### Preview style
- `if` guards in `case` blocks are now wrapped in parentheses when the line is too long.
([#4269](https://togithub.com/psf/black/issues/4269))
- Stop moving multiline strings to a new line unless inside brackets ([#4289](https://togithub.com/psf/black/issues/4289))
##### Integrations
- Add a new option `use_pyproject` to the GitHub Action `psf/black`. This will read the
Black version from `pyproject.toml`. ([#4294](https://togithub.com/psf/black/issues/4294))
astral-sh/ruff (lint/ruff)
### [`v0.3.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#037)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.6...v0.3.7)
##### Preview features
- \[`flake8-bugbear`] Implement `loop-iterator-mutation` (`B909`) ([#9578](https://togithub.com/astral-sh/ruff/pull/9578))
- \[`pylint`] Implement rule to prefer augmented assignment (`PLR6104`) ([#9932](https://togithub.com/astral-sh/ruff/pull/9932))
##### Bug fixes
- Avoid TOCTOU errors in cache initialization ([#10884](https://togithub.com/astral-sh/ruff/pull/10884))
- \[`pylint`] Recode `nan-comparison` rule to `W0177` ([#10894](https://togithub.com/astral-sh/ruff/pull/10894))
- \[`pylint`] Reverse min-max logic in `if-stmt-min-max` ([#10890](https://togithub.com/astral-sh/ruff/pull/10890))
### [`v0.3.6`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#036)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.5...v0.3.6)
##### Preview features
- \[`pylint`] Implement `bad-staticmethod-argument` (`PLW0211`) ([#10781](https://togithub.com/astral-sh/ruff/pull/10781))
- \[`pylint`] Implement `if-stmt-min-max` (`PLR1730`, `PLR1731`) ([#10002](https://togithub.com/astral-sh/ruff/pull/10002))
- \[`pyupgrade`] Replace `str,Enum` multiple inheritance with `StrEnum` `UP042` ([#10713](https://togithub.com/astral-sh/ruff/pull/10713))
- \[`refurb`] Implement `if-expr-instead-of-or-operator` (`FURB110`) ([#10687](https://togithub.com/astral-sh/ruff/pull/10687))
- \[`refurb`] Implement `int-on-sliced-str` (`FURB166`) ([#10650](https://togithub.com/astral-sh/ruff/pull/10650))
- \[`refurb`] Implement `write-whole-file` (`FURB103`) ([#10802](https://togithub.com/astral-sh/ruff/pull/10802))
- \[`refurb`] Support `itemgetter` in `reimplemented-operator` (`FURB118`) ([#10526](https://togithub.com/astral-sh/ruff/pull/10526))
- \[`flake8_comprehensions`] Add `sum`/`min`/`max` to unnecessary comprehension check (`C419`) ([#10759](https://togithub.com/astral-sh/ruff/pull/10759))
##### Rule changes
- \[`pydocstyle`] Require capitalizing docstrings where the first sentence is a single word (`D403`) ([#10776](https://togithub.com/astral-sh/ruff/pull/10776))
- \[`pycodestyle`] Ignore annotated lambdas in class scopes (`E731`) ([#10720](https://togithub.com/astral-sh/ruff/pull/10720))
- \[`flake8-pyi`] Various improvements to PYI034 ([#10807](https://togithub.com/astral-sh/ruff/pull/10807))
- \[`flake8-slots`] Flag subclasses of call-based `typing.NamedTuple`s as well as subclasses of `collections.namedtuple()` (`SLOT002`) ([#10808](https://togithub.com/astral-sh/ruff/pull/10808))
- \[`pyflakes`] Allow forward references in class bases in stub files (`F821`) ([#10779](https://togithub.com/astral-sh/ruff/pull/10779))
- \[`pygrep-hooks`] Improve `blanket-noqa` error message (`PGH004`) ([#10851](https://togithub.com/astral-sh/ruff/pull/10851))
##### CLI
- Support `FORCE_COLOR` env var ([#10839](https://togithub.com/astral-sh/ruff/pull/10839))
##### Configuration
- Support negated patterns in `[extend-]per-file-ignores` ([#10852](https://togithub.com/astral-sh/ruff/pull/10852))
##### Bug fixes
- \[`flake8-import-conventions`] Accept non-aliased (but correct) import in `unconventional-import-alias` (`ICN001`) ([#10729](https://togithub.com/astral-sh/ruff/pull/10729))
- \[`flake8-quotes`] Add semantic model flag when inside f-string replacement field ([#10766](https://togithub.com/astral-sh/ruff/pull/10766))
- \[`pep8-naming`] Recursively resolve `TypeDicts` for N815 violations ([#10719](https://togithub.com/astral-sh/ruff/pull/10719))
- \[`flake8-quotes`] Respect `Q00*` ignores in `flake8-quotes` rules ([#10728](https://togithub.com/astral-sh/ruff/pull/10728))
- \[`flake8-simplify`] Show negated condition in `needless-bool` diagnostics (`SIM103`) ([#10854](https://togithub.com/astral-sh/ruff/pull/10854))
- \[`ruff`] Use within-scope shadowed bindings in `asyncio-dangling-task` (`RUF006`) ([#10793](https://togithub.com/astral-sh/ruff/pull/10793))
- \[`flake8-pytest-style`] Fix single-tuple conversion in `pytest-parametrize-values-wrong-type` (`PT007`) ([#10862](https://togithub.com/astral-sh/ruff/pull/10862))
- \[`flake8-return`] Ignore assignments to annotated variables in `unnecessary-assign` (`RET504`) ([#10741](https://togithub.com/astral-sh/ruff/pull/10741))
- \[`refurb`] Do not allow any keyword arguments for `read-whole-file` in `rb` mode (`FURB101`) ([#10803](https://togithub.com/astral-sh/ruff/pull/10803))
- \[`pylint`] Don't recommend decorating staticmethods with `@singledispatch` (`PLE1519`, `PLE1520`) ([#10637](https://togithub.com/astral-sh/ruff/pull/10637))
- \[`pydocstyle`] Use section name range for all section-related docstring diagnostics ([#10740](https://togithub.com/astral-sh/ruff/pull/10740))
- Respect `# noqa` directives on `__all__` openers ([#10798](https://togithub.com/astral-sh/ruff/pull/10798))
RobertCraigie/pyright-python (types/pyright)
### [`v1.1.358`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.357...v1.1.358)
[Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.357...v1.1.358)
Configuration
📅 Schedule: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
==24.3.0
->==24.4.0
==0.3.5
->==0.3.7
==1.1.357
->==1.1.358
Release Notes
psf/black (lint/black)
### [`v24.4.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#2440) [Compare Source](https://togithub.com/psf/black/compare/24.3.0...24.4.0) ##### Stable style - Fix unwanted crashes caused by AST equivalency check ([#4290](https://togithub.com/psf/black/issues/4290)) ##### Preview style - `if` guards in `case` blocks are now wrapped in parentheses when the line is too long. ([#4269](https://togithub.com/psf/black/issues/4269)) - Stop moving multiline strings to a new line unless inside brackets ([#4289](https://togithub.com/psf/black/issues/4289)) ##### Integrations - Add a new option `use_pyproject` to the GitHub Action `psf/black`. This will read the Black version from `pyproject.toml`. ([#4294](https://togithub.com/psf/black/issues/4294))astral-sh/ruff (lint/ruff)
### [`v0.3.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#037) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.6...v0.3.7) ##### Preview features - \[`flake8-bugbear`] Implement `loop-iterator-mutation` (`B909`) ([#9578](https://togithub.com/astral-sh/ruff/pull/9578)) - \[`pylint`] Implement rule to prefer augmented assignment (`PLR6104`) ([#9932](https://togithub.com/astral-sh/ruff/pull/9932)) ##### Bug fixes - Avoid TOCTOU errors in cache initialization ([#10884](https://togithub.com/astral-sh/ruff/pull/10884)) - \[`pylint`] Recode `nan-comparison` rule to `W0177` ([#10894](https://togithub.com/astral-sh/ruff/pull/10894)) - \[`pylint`] Reverse min-max logic in `if-stmt-min-max` ([#10890](https://togithub.com/astral-sh/ruff/pull/10890)) ### [`v0.3.6`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#036) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.5...v0.3.6) ##### Preview features - \[`pylint`] Implement `bad-staticmethod-argument` (`PLW0211`) ([#10781](https://togithub.com/astral-sh/ruff/pull/10781)) - \[`pylint`] Implement `if-stmt-min-max` (`PLR1730`, `PLR1731`) ([#10002](https://togithub.com/astral-sh/ruff/pull/10002)) - \[`pyupgrade`] Replace `str,Enum` multiple inheritance with `StrEnum` `UP042` ([#10713](https://togithub.com/astral-sh/ruff/pull/10713)) - \[`refurb`] Implement `if-expr-instead-of-or-operator` (`FURB110`) ([#10687](https://togithub.com/astral-sh/ruff/pull/10687)) - \[`refurb`] Implement `int-on-sliced-str` (`FURB166`) ([#10650](https://togithub.com/astral-sh/ruff/pull/10650)) - \[`refurb`] Implement `write-whole-file` (`FURB103`) ([#10802](https://togithub.com/astral-sh/ruff/pull/10802)) - \[`refurb`] Support `itemgetter` in `reimplemented-operator` (`FURB118`) ([#10526](https://togithub.com/astral-sh/ruff/pull/10526)) - \[`flake8_comprehensions`] Add `sum`/`min`/`max` to unnecessary comprehension check (`C419`) ([#10759](https://togithub.com/astral-sh/ruff/pull/10759)) ##### Rule changes - \[`pydocstyle`] Require capitalizing docstrings where the first sentence is a single word (`D403`) ([#10776](https://togithub.com/astral-sh/ruff/pull/10776)) - \[`pycodestyle`] Ignore annotated lambdas in class scopes (`E731`) ([#10720](https://togithub.com/astral-sh/ruff/pull/10720)) - \[`flake8-pyi`] Various improvements to PYI034 ([#10807](https://togithub.com/astral-sh/ruff/pull/10807)) - \[`flake8-slots`] Flag subclasses of call-based `typing.NamedTuple`s as well as subclasses of `collections.namedtuple()` (`SLOT002`) ([#10808](https://togithub.com/astral-sh/ruff/pull/10808)) - \[`pyflakes`] Allow forward references in class bases in stub files (`F821`) ([#10779](https://togithub.com/astral-sh/ruff/pull/10779)) - \[`pygrep-hooks`] Improve `blanket-noqa` error message (`PGH004`) ([#10851](https://togithub.com/astral-sh/ruff/pull/10851)) ##### CLI - Support `FORCE_COLOR` env var ([#10839](https://togithub.com/astral-sh/ruff/pull/10839)) ##### Configuration - Support negated patterns in `[extend-]per-file-ignores` ([#10852](https://togithub.com/astral-sh/ruff/pull/10852)) ##### Bug fixes - \[`flake8-import-conventions`] Accept non-aliased (but correct) import in `unconventional-import-alias` (`ICN001`) ([#10729](https://togithub.com/astral-sh/ruff/pull/10729)) - \[`flake8-quotes`] Add semantic model flag when inside f-string replacement field ([#10766](https://togithub.com/astral-sh/ruff/pull/10766)) - \[`pep8-naming`] Recursively resolve `TypeDicts` for N815 violations ([#10719](https://togithub.com/astral-sh/ruff/pull/10719)) - \[`flake8-quotes`] Respect `Q00*` ignores in `flake8-quotes` rules ([#10728](https://togithub.com/astral-sh/ruff/pull/10728)) - \[`flake8-simplify`] Show negated condition in `needless-bool` diagnostics (`SIM103`) ([#10854](https://togithub.com/astral-sh/ruff/pull/10854)) - \[`ruff`] Use within-scope shadowed bindings in `asyncio-dangling-task` (`RUF006`) ([#10793](https://togithub.com/astral-sh/ruff/pull/10793)) - \[`flake8-pytest-style`] Fix single-tuple conversion in `pytest-parametrize-values-wrong-type` (`PT007`) ([#10862](https://togithub.com/astral-sh/ruff/pull/10862)) - \[`flake8-return`] Ignore assignments to annotated variables in `unnecessary-assign` (`RET504`) ([#10741](https://togithub.com/astral-sh/ruff/pull/10741)) - \[`refurb`] Do not allow any keyword arguments for `read-whole-file` in `rb` mode (`FURB101`) ([#10803](https://togithub.com/astral-sh/ruff/pull/10803)) - \[`pylint`] Don't recommend decorating staticmethods with `@singledispatch` (`PLE1519`, `PLE1520`) ([#10637](https://togithub.com/astral-sh/ruff/pull/10637)) - \[`pydocstyle`] Use section name range for all section-related docstring diagnostics ([#10740](https://togithub.com/astral-sh/ruff/pull/10740)) - Respect `# noqa` directives on `__all__` openers ([#10798](https://togithub.com/astral-sh/ruff/pull/10798))RobertCraigie/pyright-python (types/pyright)
### [`v1.1.358`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.357...v1.1.358) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.357...v1.1.358)Configuration
📅 Schedule: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.