Full changelog¶
What's New in Pylint 2.11.1?¶
Release date: 2021-09-16
unspecified-encoding
now checks the encoding ofpathlib.Path()
correctlyCloses #5017
What's New in Pylint 2.11.0?¶
Release date: 2021-09-16
The python3 porting mode checker and its
py3k
option were removed. You can still find it in older pylint versions.raising-bad-type
is now properly emitted when raising a stringAdded new extension
SetMembershipChecker
withuse-set-for-membership
check: Emitted when using an in-place definedlist
ortuple
to do a membership test.sets
are better optimized for that.Closes #4776
Added
py-version
config key (if[MASTER]
section). Used for version dependent checks. Will default to whatever Python version pylint is executed with.CodeStyleChecker
: Addedconsider-using-assignment-expr
: Emitted when an assignment is directly followed by an if statement and both can be combined by using an assignment expression:=
. Requires Python 3.8Closes #4862
Added
consider-using-f-string
: Emitted when .format() or '%' is being used to format a string.Closes #3592
Fix false positive for
consider-using-with
if a context manager is assigned to a variable in different paths of control flow (e. g. if-else clause).Closes #4751
https is now preferred in the documentation and http://pylint.pycqa.org correctly redirect to https://pylint.pycqa.org
Closes #3802
Fix false positive for
function-redefined
for simple type annotationsCloses #4936
Fix false positive for
protected-access
if a protected member is used in type hints of function definitionsFix false positive
dict-iter-missing-items
for dictionaries only using tuples as keysCloses #3282
The
unspecified-encoding
checker now also checks calls topathlib.Path().read_text()
andpathlib.Path().write_text()
Closes #4945
Fix false positive
superfluous-parens
for tuples created with inner tuplesCloses #4907
Fix false positive
unused-private-member
for accessing attributes in a class usingcls
Closes #4849
Fix false positive
unused-private-member
for private staticmethods accessed in classmethods.Closes #4849
Extended
consider-using-in
check to work for attribute access.Setting
min-similarity-lines
to 0 now makes the similarty checker stop checking for duplicate codeCloses #4901
Fix a bug where pylint complained if the cache's parent directory does not exist
Closes #4900
The
global-variable-not-assigned
checker now catches global variables that are never reassigned in a local scope and catches (reassigned) functionsCloses #1375 Closes #330
Fix false positives for invalid-all-format that are lists or tuples at runtime
Closes #4711
Fix
no-self-use
anddocparams extension
for async functions and methods.Add documentation for
pyreverse
andsymilar
Closes #4616
Non symbolic messages with the wrong capitalisation now correctly trigger
use-symbolic-message-instead
Closes #5000
The
consider-iterating-dictionary
checker now also considers membership checksCloses #4069
The
invalid-name
message is now more detailed when using multiple naming style regexes.