Sourced from ruff's releases.
v0.3.0
This release introduces the new Ruff formatter 2024.2 style and adds a new lint rule to detect invalid formatter suppression comments.
Changes
Preview features
- [
flake8-bandit
] Remove suspicious-lxml-import (S410
) (#10154)- [
pycodestyle
] Allowos.environ
modifications between imports (E402
) (#10066)- [
pycodestyle
] Don't warn about a single whitespace character before a comma in a tuple (E203
) (#10094)Rule changes
- [
eradicate
] Detect commented outcase
statements (ERA001
) (#10055)- [
eradicate
] Detect single-line code fortry:
,except:
, etc. (ERA001
) (#10057)- [
flake8-boolean-trap
] Allow boolean positionals in__post_init__
(#10027)- [
flake8-copyright
] Allow © in copyright notices (#10065)- [
isort
]: Use one blank line after imports in typing stub files (#9971)- [
pylint
] New Ruledict-iter-missing-items
(PLE1141
) (#9845)- [
pylint
] Ignoresys.version
andsys.platform
(PLR1714
) (#10054)- [
pyupgrade
] Detect literals with unary operators (UP018
) (#10060)- [
ruff
] Expand rule forlist(iterable).pop(0)
idiom (RUF015
) (#10148)Formatter
This release introduces the Ruff 2024.2 style, stabilizing the following changes:
- Prefer splitting the assignment's value over the target or type annotation (#8943)
- Remove blank lines before class docstrings (#9154)
- Wrap multiple context managers in
with
parentheses when targeting Python 3.9 or newer (#9222)- Add a blank line after nested classes with a dummy body (
...
) in typing stub files (#9155)- Reduce vertical spacing for classes and functions with a dummy (
...
) body (#7440, #9240)- Add a blank line after the module docstring (#8283)
- Parenthesize long type hints in assignments (#9210)
- Preserve indent for single multiline-string call-expressions (#9673)
- Normalize hex escape and unicode escape sequences (#9280)
- Format module docstrings (#9725)
CLI
- Explicitly disallow
extend
as part of a--config
flag (#10135)- Remove
build
from the default exclusion list (#10093)- Deprecate
ruff <path>
,ruff --explain
,ruff --clean
, andruff --generate-shell-completion
in favor ofruff check <path>
,ruff rule
,ruff clean
, andruff generate-shell-completion
(#10169)- Remove the deprecated CLI option
--format
fromruff rule
andruff linter
(#10170)Bug fixes
... (truncated)
Sourced from ruff's changelog.
0.3.0
This release introduces the new Ruff formatter 2024.2 style and adds a new lint rule to detect invalid formatter suppression comments.
Preview features
- [
flake8-bandit
] Remove suspicious-lxml-import (S410
) (#10154)- [
pycodestyle
] Allowos.environ
modifications between imports (E402
) (#10066)- [
pycodestyle
] Don't warn about a single whitespace character before a comma in a tuple (E203
) (#10094)Rule changes
- [
eradicate
] Detect commented outcase
statements (ERA001
) (#10055)- [
eradicate
] Detect single-line code fortry:
,except:
, etc. (ERA001
) (#10057)- [
flake8-boolean-trap
] Allow boolean positionals in__post_init__
(#10027)- [
flake8-copyright
] Allow © in copyright notices (#10065)- [
isort
]: Use one blank line after imports in typing stub files (#9971)- [
pylint
] New Ruledict-iter-missing-items
(PLE1141
) (#9845)- [
pylint
] Ignoresys.version
andsys.platform
(PLR1714
) (#10054)- [
pyupgrade
] Detect literals with unary operators (UP018
) (#10060)- [
ruff
] Expand rule forlist(iterable).pop(0)
idiom (RUF015
) (#10148)Formatter
This release introduces the Ruff 2024.2 style, stabilizing the following changes:
- Prefer splitting the assignment's value over the target or type annotation (#8943)
- Remove blank lines before class docstrings (#9154)
- Wrap multiple context managers in
with
parentheses when targeting Python 3.9 or newer (#9222)- Add a blank line after nested classes with a dummy body (
...
) in typing stub files (#9155)- Reduce vertical spacing for classes and functions with a dummy (
...
) body (#7440, #9240)- Add a blank line after the module docstring (#8283)
- Parenthesize long type hints in assignments (#9210)
- Preserve indent for single multiline-string call-expressions (#9673)
- Normalize hex escape and unicode escape sequences (#9280)
- Format module docstrings (#9725)
CLI
- Explicitly disallow
extend
as part of a--config
flag (#10135)- Remove
build
from the default exclusion list (#10093)- Deprecate
ruff <path>
,ruff --explain
,ruff --clean
, andruff --generate-shell-completion
in favor ofruff check <path>
,ruff rule
,ruff clean
, andruff generate-shell-completion
(#10169)- Remove the deprecated CLI option
--format
fromruff rule
andruff linter
(#10170)Bug fixes
... (truncated)
b53118e
Bump version to v0.3.0 (#10151)52f4c1e
Remove deprecated CLI option --format
(#10170)eceffe7
Deprecate ruff \<path>
ruff --explain
,
ruff --clean
and `ruff --generate...c73c497
[pydocstyle
] Trim whitespace when removing blank lines
after section (`D413...c9c98c4
Fix mkdocs local link (#10167)72ccb34
Fix ecosystem check for indico (#10164)dcc92f5
Update black tests (#10166)a6f32dd
Ruff 2024.2 style (#9639)0293908
Implement RUF028 to detect useless formatter suppression comments (#9899)36bc725
[flake8-bugbear
] Avoid adding default initializers to stubs
(B006
) (#10152)