Performance: Fixed bug that resulted in long analysis times when using call-site type inference for very complex functions that have no parameter annotations.
Behavior Change: Removed support for transform_descriptor_types
parameter in dataclass_transform
, a feature that was determined to be not necessary. Added support on normal dataclass handling for field types that are custom descriptor objects.
Bug Fix: Fixed bug in logic that determines whether to empty the in-memory type cache if it has the potential to overflow the heap.
Enhancement: Improved printing of string nodes in error and log messages. If the string node is long, it is truncated to 32 characters.
Enhancement: Improved textual form of string literal types. If the string literal is very long (>50 characters), it is truncated.
Bug Fix: Fixed recent regression that caused the "--verifytypes" feature to incorrectly report that the "self" parameter of a @property
method as unannotated.
Performance: Removed older mechanism for tracking "incomplete types" — those that have been partially evaluated within a code flow loop. The older mechanism is no longer needed. Removing this is a big performance win in some (typically more complex) pieces of code.
Performance: Fixed performance issue that caused long analysis times in some complex unannotated functions when attempting to infer whether the function was a NoReturn return type.
Performance: Improved performance of code flow "reachability" analysis.
Enhancement: Updated typeshed stubs to the latest version.
Bug Fix: Fixed false positive error in "unreachable exception" detection code when the exception was typed as Type[Exception]
.
Enhancement: Contributed by Kevin Coffey - Extended a[I] is None
type narrowing logic to handle subtypes of Tuple including NamedTuple.