v2.9.4
-
Added
time.clockto deprecated functions/methods for python 3.3 -
Fix bug in which --fail-on can return a zero exit code even when the specified issue is present
-
Fix hard failure when handling missing attribute in a class with duplicated bases
Closes #4687
-
Fix false-positive
consider-using-with(R1732) if a ternary conditional is used together withwithCloses #4676
-
Fix false-positive
deprecated-modulewhen relative import uses deprecated module name.Closes #4629
-
Fix false-positive
consider-using-with(R1732) ifcontextlib.ExitStacktakes care of calling the__exit__methodCloses #4654
-
Fix a false positive for
unused-private-memberwhen mutating a private attribute
withclsCloses #4657
-
Fix ignored empty functions by similarities checker with "ignore-signatures" option enabled
Closes #4652
-
Fix false-positive of
use-maxsplit-argwhen index is incremented in
a loopCloses #4664
-
Don't emit
cyclic-importmessage if import is guarded bytyping.TYPE_CHECKING.Closes #3525
-
Fix false-positive
not-callablewith alternativeTypedDictsyntaxCloses #4715
-
Clarify documentation for consider-using-from-import
-
Don't emit
unreachablewarning for empty generator functionsCloses #4698
-
Don't emit
import-error,no-name-in-module, andungrouped-imports
for imports guarded bysys.version_infoortyping.TYPE_CHECKING. -
Fix
invalid-overridden-methodwith nested propertyCloses #4368
-
Fix false-positive of
unused-private-memberwhen using__new__in a classCloses #4668
-
No longer emit
consider-using-withforThreadPoolExecutorandProcessPoolExecutor
as they have legitimate use cases without awithblock.Closes #4689
-
Fix crash when inferring variables assigned in match patterns
Closes #4685
-
Fix a crash when a StopIteration was raised when inferring
a faulty function in a context manager.Closes #4723