npm pyright 1.1.128
Published 1.1.128

latest releases: 1.1.370, 1.1.369, 1.1.368...
3 years ago

Bug Fix: Fixed bug in argument-matching code that produced false positive errors when a keyword argument corresponded to a positional-only argument name but should have been matched to a **kwargs parameter instead.

Bug Fix: Fixed bug in bidirectional type inference logic for list and dict expressions when expected type included a type varaible.

Bug Fix: Disabled the "self" annotation checks for overloaded methods because the self annotation can be used as a legitimate filter for overloads.

Enhancement: Improved bidirectional type inference for set expressions so it better handles unions in expected type.

Bug Fix: Improved TypeVar constraint solver so it provides a better solution when a TypeVar is constrained first by a contravariant wide bound in a first argument and then a subsequent argument relies on bidirectional type inference with a covariant or invariant use of the same TypeVar.

Bug Fix: Fixed bug that caused a crash in the type checker when a protocol class inherited from a generic non-protocol class.

Enhancement: Added check for a class that inherits from Generic to ensure that all type variables are included in the Generic subscript list.

Bug Fix: Fixed regression in handling expressions of the form [x] * y. Some previously-added special-case code to handle the [None] * n case was too general.

Enhancement: Changed printed types to fully expand type aliases in error messages where that additional detail is needed — namely, for "partially unknown" messages. This makes for verbose types, but without the expansion, it can be very difficult to determine which part of the type is unknown.

Bug Fix: Fixed false positive error in type compatibility check where the destination type is Type[Any] and the source type is Type[x] where x is anything (including Any).

Enhancement: Added exemption to the overlapping overload check for the __get__ method. Other type checkers (namely mypy) exempt this method also.

Don't miss a new pyright release

NewReleases is sending notifications on new releases.