github microsoft/pyright 1.1.139
Published 1.1.139

latest releases: 1.1.383, 1.1.382, 1.1.381...
3 years ago

Enhancement: Updated typeshed to the latest.

Enhancement: Added support for typeshed VERSION file, which indicates which stdlib modules are available in each version of Python.

Bug Fix: Fixed bug that resulted in symbols being inappropriately marked "unaccessed" when they were accessed within a keyword argument used within a class declaration.

Bug Fix: Fixed false positive error when a dataclass declares an instance variable but a subclass redeclares a class variable of the same name.

Bug Fix: Fixed type narrowing bug with 'isinstance' checks that involve protocol classes. The bug resulted in false positive errors with the reportUnnecessaryIsInstance check.

Enhancement: Added support for callback protocols that use overloaded __call__ methods.

Enhancement (from pylance): Improved performance of tokenizer's handling of string literals.

Bug Fix (from pylance): Ignore updates to ".git" file so they don't trigger reanalysis.

Bug Fix: Fixed false positive error in check for overload implementation consistency when one of the overloaded methods in a generic class provides an explicit type annotation for "self" or "cls" but the implementation does not.

Enhancement: Improved "is None" and "is not None" type narrowing logic to handle constrained TypeVar that includes None as one of the constraints.

Bug Fix: Fixed false positive error when a __getattr__ method is present. The previous logic was assuming that __getattr__ could provide a magic method value (e.g. for __add__).

Bug Fix: Prefer py.typed libraries over typeshed for consistency with PEP 561.

Bug Fix: Improved validation for function calls where the function signature includes keyword arguments without default values that are not directly matched by keyword arguments but are matched by a **kwargs argument. In this situation, the type of the **kwargs values should be verified to be compatible with the type of the keyword parameters.

Bug Fix: Fixed bug in lambda type evaluation for lambdas that use an *args parameter. The parameter type was not being transformed into a tuple, as it should have been.

Enhancement: Improved diagnostic message for constant redefinition to make it clear that the symbol is assumed to be constant because its name is uppercase.

Don't miss a new pyright release

NewReleases is sending notifications on new releases.