Bug Fix: Fixed bug that resulted in a false positive when a callback protocol used a method-scoped ParamSpec in its __call__
method.
Enhancement: Improved error message for a call expression that uses a named argument when the target callable has no such named parameter.
Enhancement: Enhanced the reportUninitializedInstanceVariable check to detect cases where a class variable is declared but not initialized in the class body and no instance variable of the same name is assigned in the __init__
method.
Bug Fix: Fixed bug that resulted in the incorrect inferred type for an exception group that results when using a Python 3.11 except*
statement.
Bug Fix: Fixed a bug that resulted in a crash when overflowing the type cache. It is implemented with a Map, which has a limit of 2^24 entries. The fix is to empty the cache if we approach this limit.
Bug Fix: Changed heuristic for type matching when source is a concrete type and destination is a union of that type and a TypeVar. The old heuristic attempted to solve the TypeVar, but the new heuristic leaves it unsolved. This eliminates a false positive error in certain edge cases and more closely matches the behavior of mypy in this case.
Bug Fix: Fixed bug that resulted in incorrect type analysis for dataclasses when a field declaration was within a conditional block.
Enhancement: Added support for generic NamedTuple classes, which are now supported in Python 3.11.
Bug Fix: Fixed bug that resulted in incorrect type evaluation of a dictionary key when assigning a dictionary expression to a dict with a generic key type.
Enhancement: Improved error message for incompatible field types in a TypedDict.
Enhancement: Added basic support for generic TypedDict classes, which are supported in Python 3.11. Assignment to a specialized generic TypedDict is now supported, but support for TypeVar solving is not yet in place.