Bug Fix: Fixed a bug that resulted in a false positive when determining the correct variance of a TypeVar used within a class.
Bug Fix: Improved type inference of method calls on super() so Self is generated rather than the concrete class.
Bug Fix: Fixed regression in import resolver that resulted in spurious "stub not found" diagnostics.
Bug Fix: Fixed a bug that resulted in incorrect type evaluation of augmented assignments used in loops in some cases.
Bug Fix: Addressed a performance issue that resulted in long evaluation times when a variable was used in a loop but was not initialized prior to the loop.
Enhancement: Improved support for ternary expressions that use a statically-evaluatable condition expression.
Enhancement: Enhanced the reportUnnecessaryComparison to check for unused patterns in a match statement.
Bug Fix: Fixed bug that caused a false positive when a variable of type type is used as an argument to a class declaration.
Bug Fix: Changed logic to treat self and cls parameters as positional-only for purposes of protocol matching.
Bug Fix: Fixed bug that resulted in a false positive error with assert_type when the evaluated type involved a pseudo-generic class.
Enhancement: Updated typeshed stubs to the latest version.
Enhancement: Added diagnostic check for when unknown or partially-unknown type is captured by a wildcard pattern in a match statement.
Enhancement (from pylance): Added module name to moduleUnknownMember diagnostic.
Performance: Improved performance by not inferring return type of overloaded implementation when binding an overloaded method to an object.
Published 1.1.295
Behavior Change: Updated the handling of type narrowing for class pattern matching in cases where a class subclasses from one of the special built-in types listed in PEP 634 as treating a single positional argument as matching the entire subject. The behavior of the CPython implementation deviates from the PEP in this manner, but the implementation takes precedent over the spec in this case.
Bug Fix: Fixed a bug that led to false positive errors when evaluating comparison operator overrides (e.g. __eq__ or __lt__) in cases where the LHS type didn't support the comparison but the RHS type did.
Enhancement: Added logic to exempt a self with annotated type Never from the check that verifies the self type is a subtype of the class.
Bug Fix: Fixed a bug that resulted in an incorrect inferred function return type when one or more of the return statements returned an expression based on an empty container ({} or []).
Bug Fix: Fixed a bug that caused a Final variable to lose its literal value when imported from another file.
Bug Fix: Fixed a bug that resulted in a false positive "overlapping overload" diagnostic in certain cases.
Bug Fix: Fixed a bug that resulted in a false positive diagnostic when using a TypeVarLike with a default value by itself in a function signature.
Bug Fix: Fixed issue that caused the type of None.__class__ to be evaluated incorrectly with new typeshed definition of object.__class__.
Enhancement: Updated typeshed stubs to the latest.
Enhancement (contribution by Declan Brady): Added parameter documentation on hover from function docString.
... (truncated)
Commits
e411e53 [PylanceBot] Pull Pylance with Pyright 1.1.295 (#4675)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps pyright from 1.1.271 to 1.1.296.
Release notes
Sourced from pyright's releases.
... (truncated)
Commits
e411e53
[PylanceBot] Pull Pylance with Pyright 1.1.295 (#4675)f5e43ca
Published 1.1.29558f6824
Published 1.1.294ceb2a2d
Published 1.1.293e4e08c3
Published 1.1.292624feda
Published 1.1.291c6e79ef
Published 1.1.2909a0820d
Published 1.1.289bc4381e
Published 1.1.288b78a9e4
Push pylance changes to pyright (#4404)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)