Bug Fix: Fixed a bug in isinstance type narrowing logic where the type of the second argument to isinstance is type Type[T]
and the first argument is a union of types that includes type T
.
Enhancement: Expanded reportUnusedCallResult diagnostic check to also check for expressions of the form await .
Bug Fix (from Pylance): Changed language server to set the working directory before attempting to execute script to retrieve sys.paths.
Behavior Change (from Pylance): Separated behavior of "go to definition" and "got to declaration". The former tries to take you to the source, whereas the latter takes you to the stub file.
Bug Fix: Changed binding logic to not assume that an assignment to a simple name can generate an exception. This fixes a reported false positive error in a type narrowing case.
Enhancement: Added proper error check for the use of an unpack operator (*) when used outside of a tuple.
Bug Fix: Avoid generating a diagnostic for reporUnknownMemberType if the member access expression is used as a call argument and is a generic class that is missing type arguments. This case was already special-cased for reportUnknownArgumentType to handle common cases like isinstance(x, list)
, but it was resulting in errors for isinstance(x, re.Pattern)
.
Bug Fix: Fixed a hole in the detection of unspecified type arguments for the Tuple and tuple classes.
Enhancement: Added support for generic classes that are parameterized by ParamSpecs, as allowed in PEP 612.