Release Notes
Preview features
- Fix fstring formatting removing overlong implicit concatenated string in expression part (#14811)
- [
airflow
] Add fix to remove deprecated keyword arguments (AIR302
) (#14887)
- [
airflow
]: Extend rule to include deprecated names for Airflow 3.0 (AIR302
) (#14765 and #14804)
- [
flake8-bugbear
] Improve error messages for except*
(B025
, B029
, B030
, B904
) (#14815)
- [
flake8-bugbear
] itertools.batched()
without explicit strict
(B911
) (#14408)
- [
flake8-use-pathlib
] Dotless suffix passed to Path.with_suffix()
(PTH210
) (#14779)
- [
pylint
] Include parentheses and multiple comparators in check for boolean-chained-comparison
(PLR1716
) (#14781)
- [
ruff
] Do not simplify round()
calls (RUF046
) (#14832)
- [
ruff
] Don't emit used-dummy-variable
on function parameters (RUF052
) (#14818)
- [
ruff
] Implement if-key-in-dict-del
(RUF051
) (#14553)
- [
ruff
] Mark autofix for RUF052
as always unsafe (#14824)
- [
ruff
] Teach autofix for used-dummy-variable
about TypeVars etc. (RUF052
) (#14819)
Rule changes
- [
flake8-bugbear
] Offer unsafe autofix for no-explicit-stacklevel
(B028
) (#14829)
- [
flake8-pyi
] Skip all type definitions in string-or-bytes-too-long
(PYI053
) (#14797)
- [
pyupgrade
] Do not report when a UTF-8 comment is followed by a non-UTF-8 one (UP009
) (#14728)
- [
pyupgrade
] Mark fixes for convert-typed-dict-functional-to-class
and convert-named-tuple-functional-to-class
as unsafe if they will remove comments (UP013
, UP014
) (#14842)
Bug fixes
- Raise syntax error for mixing
except
and except*
(#14895)
- [
flake8-bugbear
] Fix B028
to allow stacklevel
to be explicitly assigned as a positional argument (#14868)
- [
flake8-bugbear
] Skip B028
if warnings.warn
is called with *args
or **kwargs
(#14870)
- [
flake8-comprehensions
] Skip iterables with named expressions in unnecessary-map
(C417
) (#14827)
- [
flake8-pyi
] Also remove self
and cls
's annotation (PYI034
) (#14801)
- [
flake8-pytest-style
] Fix pytest-parametrize-names-wrong-type
(PT006
) to edit both argnames
and argvalues
if both of them are single-element tuples/lists (#14699)
- [
perflint
] Improve autofix for PERF401
(#14369)
- [
pylint
] Fix PLW1508
false positive for default string created via a mult operation (#14841)
Contributors
Install ruff 0.8.3
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/ruff/releases/download/0.8.3/ruff-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy ByPass -c "irm https://github.com/astral-sh/ruff/releases/download/0.8.3/ruff-installer.ps1 | iex"
Download ruff 0.8.3