Bug Fix: Fixed bug in handling of "Final" type annotation with no specified type argument (e.g. "x: Final = 4").
Enhancement: Added support for inferring type of subscripted tuple when subscript is a negative integer literal.
Bug Fix: Fixed recent regression where super(A, self).x
did not return an unknown type if class A
had a class in its MRO that had an unknown type.
Bug Fix: Allow lowercase tuple
type to be subscripted in versions of Python prior to 3.9 if it is within a quoted annotation.
Bug Fix: Fixed false positive error due to constraint solver's handling of a TypeVar used within a Callable parameter that is matched to a function parameter annotated with another TypeVar.
Enhancement: Improved handling of literals within constraint solver when used with bidirectional type inference.
Bug Fix: Fixed bug that caused false positive error when a generic call expression was used for an argument to an overloaded function and TypeVar matching errors were reported.
Enhancement: Deferred resolution of metaclass during class type resolution to improve compatibility with code generated by mypy-protobuf, which contains cyclical dependencies.
Bug Fix: Fixed bug in declaration provider that caused declaration of class variables to not be resolved correctly when accessed via a cls
parameter in a class method.
Bug Fix: Fixed bug in symbol resolution when a local class mirrors the name of a class in typing (e.g. List
) but is not imported from typing and is used in a context where it is forward declared without quotes.
Bug Fix (from pylance): Avoid recursing infinitely when searching for source files when there is a cyclical symlink present.
Bug Fix: Fixed type inference for "yield" expressions. The previous code was using the same logic for "yield" and "yield from".
Enhancement: Added check to determine if type variables in generic protocols use the appropriate variance.
Performance Improvement: Limited "implied else type narrowing" to expressions that have declared types. It's too expensive to infer types.