Sourced from ruff's releases.
0.6.4
Release Notes
Preview features
- [
flake8-builtins
] Use dynamic builtins list based on Python version (#13172)- [
pydoclint
] Permit yieldingNone
inDOC402
andDOC403
(#13148)- [
pylint
] Update diagnostic message forPLW3201
(#13194)- [
ruff
] Implementpost-init-default
(RUF033
) (#13192)- [
ruff
] Implement useless if-else (RUF034
) (#13218)Rule changes
- [
flake8-pyi
] Respectpep8_naming.classmethod-decorators
settings when determining if a method is a classmethod incustom-type-var-return-type
(PYI019
) (#13162)- [
flake8-pyi
] Teach various rules that annotations might be stringized (#12951)- [
pylint
] Avoidno-self-use
forattrs
-style validators (#13166)- [
pylint
] Recurse into subscript subexpressions when searching for list/dict lookups (PLR1733
,PLR1736
) (#13186)- [
pyupgrade
] Detectaiofiles.open
calls inUP015
(#13173)- [
pyupgrade
] Marksys.version_info[0] < 3
and similar comparisons as outdated (UP036
) (#13175)CLI
- Enrich messages of SARIF results (#13180)
- Handle singular case for incompatible rules warning in
ruff format
output (#13212)Bug fixes
- [
pydocstyle
] Improve heuristics for detecting Google-style docstrings (#13142)- [
refurb
] Treatsep
arguments with effects as unsafe removals (FURB105
) (#13165)Contributors
@AlexWaygood
@Jinior
@MichaReiser
@RubenVanEldik
@RussellLuo
@Slyces
@carljm
@charliermarsh
@chriskrycho
@dhruvmanila
@dylwil3
@github-actions
@iamlucasvieira
@jamesbraza
@renovate
@tjkuson
@zhoufanjin
Install ruff 0.6.4
... (truncated)
Sourced from ruff's changelog.
0.6.4
Preview features
- [
flake8-builtins
] Use dynamic builtins list based on Python version (#13172)- [
pydoclint
] Permit yieldingNone
inDOC402
andDOC403
(#13148)- [
pylint
] Update diagnostic message forPLW3201
(#13194)- [
ruff
] Implementpost-init-default
(RUF033
) (#13192)- [
ruff
] Implement useless if-else (RUF034
) (#13218)Rule changes
- [
flake8-pyi
] Respectpep8_naming.classmethod-decorators
settings when determining if a method is a classmethod incustom-type-var-return-type
(PYI019
) (#13162)- [
flake8-pyi
] Teach various rules that annotations might be stringized (#12951)- [
pylint
] Avoidno-self-use
forattrs
-style validators (#13166)- [
pylint
] Recurse into subscript subexpressions when searching for list/dict lookups (PLR1733
,PLR1736
) (#13186)- [
pyupgrade
] Detectaiofiles.open
calls inUP015
(#13173)- [
pyupgrade
] Marksys.version_info[0] < 3
and similar comparisons as outdated (UP036
) (#13175)CLI
- Enrich messages of SARIF results (#13180)
- Handle singular case for incompatible rules warning in
ruff format
output (#13212)Bug fixes
- [
pydocstyle
] Improve heuristics for detecting Google-style docstrings (#13142)- [
refurb
] Treatsep
arguments with effects as unsafe removals (FURB105
) (#13165)0.6.3
Preview features
- [
flake8-simplify
] Extendopen-file-with-context-handler
to work withdbm.sqlite3
(SIM115
) (#13104)- [
pycodestyle
] DisableE741
in stub files (.pyi
) (#13119)- [
pydoclint
] AvoidDOC201
on explicit returns in functions that only returnNone
(#13064)Rule changes
- [
flake8-async
] Disable check forasyncio
before Python 3.11 (ASYNC109
) (#13023)Bug fixes
- [
FastAPI
] Avoid introducing invalid syntax in fix forfast-api-non-annotated-dependency
(FAST002
) (#13133)- [
flake8-implicit-str-concat
] Normalize octals before merging concatenated strings insingle-line-implicit-string-concatenation
(ISC001
) (#13118)- [
flake8-pytest-style
] Improve help message forpytest-incorrect-mark-parentheses-style
(PT023
) (#13092)- [
pylint
] Avoid autofix for calls that aren'tmin
ormax
as starred expression (PLW3301
) (#13089)- [
ruff
] Adddatetime.time
,datetime.tzinfo
, anddatetime.timezone
as immutable function calls (RUF009
) (#13109)- [
ruff
] Extend comment deletion forRUF100
to include trailing text fromnoqa
directives while preserving any following comments on the same line, if any (#13105)- Fix dark theme on initial page load for the Ruff playground (#13077)
... (truncated)
65cc6ec
Bump version to 0.6.4 (#13253)66fe226
[red-knot] fix lookup of nonlocal names in deferred annotations (#13236)e965f9c
[red-knot] Infer Unknown
for the loop var in async
for
loops (#13243)0512428
[red-knot] Emit a diagnostic if the value of a starred expression or a
`yield...46a4573
[red-knot] Add type inference for basic for
loops (#13195)5728909
Make mypy pass on black in knot_benchmark
(#13235)9d1bd7a
[pylint] removed dunder methods in Python 3 (PLW3201) (#13194)e37bde4
[ruff] implement useless if-else (RUF034) (#13218)862bd0c
[red-knot] Add debug assert to check for duplicate definitions (#13214)e1e9143
[red-knot] Handle multiple comprehension targets (#13213)