What's New in Pylint 3.1¶
- Release:
3.1
- Date:
2024-02-25
Summary -- Release highlights¶
Two new checks -- use-yield-from, deprecated-attribute --
and a smattering of bug fixes.
What's new in Pylint 3.1.1?¶
Release date: 2024-05-13
False Positives Fixed¶
Treat attrs.define and attrs.frozen as dataclass decorators in too-few-public-methods check.
Closes #9345 (#9345)
Fix a false positive with
singledispatchmethod-functionwhen a method is decorated with bothfunctools.singledispatchmethodandstaticmethod.Closes #9531 (#9531)
Fix a false positive for
consider-using-dict-itemswhen iterating usingkeys()and then deleting an item using the key as a lookup.Closes #9554 (#9554)
What's new in Pylint 3.1.0?¶
Release date: 2024-02-25
New Features¶
Skip
consider-using-joincheck for non-empty separators if ansuggest-join-with-non-empty-separatoroption is set tono.Closes #8701 (#8701)
Discover
.pyifiles when linting.These can be ignored with the
ignore-patternssetting.Closes #9097 (#9097)
Check
TypeAliasandTypeVar(PEP 695) nodes forinvalid-name.Refs #9196 (#9196)
Support for resolving external toml files named pylintrc.toml and .pylintrc.toml.
Closes #9228 (#9228)
Check for .clear, .discard, .pop and remove methods being called on a set while it is being iterated over.
Closes #9334 (#9334)
New Checks¶
False Positives Fixed¶
False Negatives Fixed¶
Extend broad-exception-raised / W0719 and broad-exception-caught / W0718 to except*.
Closes #8827 (#8827)
Fix a false-negative for unnecessary if blocks using a different than expected ordering of arguments.
Closes #8947. (#8947)
Other Bug Fixes¶
Improve the message provided for wrong-import-order / C0411 check. Instead of the import statement ("import x"), the message now specifies the import that is out of order and which imports should come after it. As reported in the issue, this is particularly helpful if there are multiple imports on a single line that do not follow the PEP8 convention.
The message will report imports as follows: For "import X", it will report "(standard/third party/first party/local) import X" For "import X.Y" and "from X import Y", it will report "(standard/third party/first party/local) import X.Y" The import category is specified to provide explanation as to why pylint has issued the message and guidance to the developer on how to fix the problem.
Closes #8808 (#8808)
Other Changes¶
Internal Changes¶
Update astroid version to 3.1.0.
Refs #9457 (#9457)