What's Changed
Rules
- [
pyupgrade
] Avoid rewriting any PEP 604 runtime annotations by @charliermarsh in #3217 - [
pycodestyle
] Missing whitespace after keyword by @carlosmiei in #3225 - [
pycodestyle
] trailing-whitespace, blank-line-contains-whitespace (W291, W293) by @mknaw in #3122 - [
flake8-pyi
]: PYI009, PYI010, PYI021 by @sbdchd in #3230 - [
flake8-pyi
]: PYI011, PYI014 by @sbdchd in #3238 - [
flake8-django
] DJ003, DJ006, DJ007 by @lkh42t in #3236 - [
pylint
] Implement pylint'selse-if-used
rule (PLR5501
) by @chanman3388 in #3231 - [
pylint
] W0603: global-statement by @igozali in #3227 - [
flake8-pie
] Unnecessary list comprehension, with autofix (PIE802) by @matthewlloyd in #3149
Settings
- Allow ruff.toml file to be dot-prefixed (as .ruff.toml) by @charliermarsh in #3221
- [
pydocstyle
]: Implementignore-decorators
by @edgarrmondragon in #3229
Bug Fixes
- Avoid suggesting 'is' for constant literals by @charliermarsh in #3146
- Omit non-.py[i] files from module naming rules by @charliermarsh in #3153
- Bind star patterns in match statements by @charliermarsh in #3169
- Update RustPython to support *tuple annotations by @charliermarsh in #3178
- Use
writeln
with --show-settings by @charliermarsh in #3180 - Avoid boolean-trap rules for ConfigParser get() methods by @monosans in #3209
- Avoid flagging logging-too-few-args with no arguments by @charliermarsh in #3220
- Expand the range of the COM812 autofix to include the preceding token by @matthewlloyd in #3241
- Avoid flagging Pylint logging rules with starred arguments by @charliermarsh in #3244
- Avoid flagging unfixable
TypedDict
andNamedTuple
definitions by @charliermarsh in #3148 - Fix ExceptionGroup F821 false positive by @JonathanPlasse in #3167
- Avoid autofixing some PT violations when comments are present by @charliermarsh in #3198
- Exclude globsets for --show-settings by @charliermarsh in #3201
- [
flake8-tidy-imports
] fix autofix for relative imports by @sciyoshi in #3197 - Fix Markdown errors in docs by @JonathanPlasse in #3187
- Normalize treatment of aliased and unaliased imports by @charliermarsh in #3216
- Avoid EXE001 and EXE002 errors from stdin input by @charliermarsh in #3218
- [bandit]: Do not treat "passed" as "password" for
S105
/S106
/S107
by @edgarrmondragon in #3222
New Contributors
- @mknaw made their first contribution in #3122
- @monosans made their first contribution in #3209
- @lkh42t made their first contribution in #3236
- @igozali made their first contribution in #3227
Full Changelog: v0.0.252...v0.0.253