Bug Fix: Fixed a bug that resulted in a false positive error when using an unpacked TypedDict for a **kwargs parameter annotation, and the caller passes an unpacked TypedDict as an argument but the argument is a subclass of the parameter's TypedDict.
Bug Fix: Fixed bug in "--dependencies" command-line option. When used with partial stub files, it was not emitting the correct paths.
Bug Fix: Fixed false positive error that occurs when using an issubclass
type guard to narrow a type to an abstract base class. The resulting type should be instantiable without receiving a "cannot instantiate ABC" error.
Bug Fix: Fixed bug in type evaluator related to the handling of a recursive type alias that is self-referential. This resulted in various strange behaviors when this bogus type alias was later used as an annotation.
Enhancement: Enhanced bidirectional type inference for constructor calls to handle the case where a generic class has no __init__
method but has a __new__
method that informs the value of one or more type variables.
Enhancement: Updated typeshed stubs to the latest version.
Bug Fix: Fixed a bug that resulted in incorrect type evaluation when an asymmetric property (where the getter type doesn't match the setter type) also has a deleter.
Bug Fix: Fixed bug in the "reportIncompatibleMethodOverride" check that results in a false positive if the parent class method has one or more keyword-only parameters and the override method has a kwargs of compatible type.
Bug Fix: Fixed a bug in the "reportIncompatibleMethodOverride" check that resulted in a false negatives when the override method accepted too few positional arguments but accepted a **kwargs
parameter.
Bug Fix: Fixed a bug that resulted in spurious type evaluation errors when certain circular dependencies existed between class declarations. When evaluated in certain orders, a class type was being partially constructed with a corrupt MRO. This type was then cached and used in subsequent type evaluation steps, resulting in false positive errors.
Bug Fix: Fixed a bug that resulted in a false positive when using a captured variable within an inner function or lambda and the variable has been narrowed based on a NoReturn
call within a conditional block.