Bug Fix: Fixed recent regression that results in a false positive when evaluating `*P.args` and `**P.kwargs` argument types passed to a function within a nested inner function.
Bug Fix: Fixed bug that resulted in false positive with the reportOverlappingOverload diagnostic check when a parameter in one overload is annotated with `type` or `Type[Any]` and the corresponding parameter in another overload is annotated with `Any`.
Bug Fix: Fixed bug that resulted in incorrect type evaluation when an import statement failed to resolve and targeted a submodule of a previous import statement, such as `import a.b` followed by `import a.b.c` where `a.b.c` couldn't be resolved. In this circumstance, pyright "forgot" that `a.b` had been resolved previously, so all symbols imported from `a.b` were evaluated as `Unknown`.
Enhancement: Enhanced reportUnnecessaryComparison diagnostic check so it also detects cases where a function appears within a condition expression. This is a common source of programming error.
Bug Fix: Fixed bug that resulted in a false positive error when validating the variance of a type variable used within a protocol class. It specifically affected the case where a TypeVar was used in the return type of a read-only property.
Bug Fix: Fixed a bug that resulted in a false negative when validating arguments to a function that uses a specialized TypeVar within an unpacked tuple as an `*args` parameter type.
Enhancement: Expanded the `reportUnknownVariableType` check to cover some cases that it didn't previously. It now handles unknown or partially-unknown symbols imported from `from a import b` statements, unpacked assignments, `with a as b` statements, and more.
Bug Fix: Fixed a bug that resulted in a runtime assertion (and crash) when dealing with return expressions that involve more than one constrained TypeVar.