Bug Fix: Fixed a bug that caused locale override to fail to take effect if passed via the LSP initialize message.
Bug Fix: Fixed issue that led to false positive error when calling a NoReturn function within a case block or within an if/elif chain.
Enhancement (contribution by pakrym-stripe): Support unpacked TypedDict in parameter hover.
Performance: Fixed a performance regression that affected symbol type inference in the presence of circular dependencies.
Enhancement: Updated typeshed stubs to the latest version.
Bug Fix: Improved support for runtime TypeVar, TypeVarTuple and ParamSpec objects, including when they are instantiated from typing_extensions classes.
Enhancement: Improved inference logic for lambdas so it handles a wider variety of cases including lambas with *args parameters and cases where the expected type is a union of multiple subtypes that might be matches.
Enhancement: Improved TypedDict update method error message when no overloads match.
Bug Fix: Fixed a bug that led to a false positive when using an unpacked iterable as an argument in a call expression after a keyword argument.
Enhancement: Added support for python.analysis.include, python.analysis.exclude and python.analysis.ignore settings. These have been implemented in pylance for a while now, but they were never implemented previously in pyright. Also fixed a bug in the original implementation that caused the config file not to override the language server settings for python.analysis.exclude and python.analysis.ignore as it should.
Bug Fix: Fixed bug that led to false negative when evaluating a call to a function with a recursive ParamSpec.
Bug Fix: Fixed a bug in the type guard logic for simple truthy/falsy checks. If the type is an instance of object or a TypeVar with no bound (which is treated like an object), the logic should not assume that it will always evaluate to truthy.
Published 1.1.333
Bug Fix: Fixed a bug that resulted in a false negative when assigning one TypedDict to another TypedDict. Field types should be treated as invariant rather than covariant because they are mutable (unless marked readonly).
Enhancement: Improved the synthesized update method for TypedDict classes so it supports keyword arguments and iterables of tuples.
Bug Fix: Improved error message for protocol mismatch when a method in the source cannot be bound.
Performance: Added performance improvement that speeds up type checking for TypedDict classes that have a large number of entries.
Bug Fix: Fixed a bug that led to a false positive when doing protocol matching for a protocol that uses deeply nested recursion.
Bug Fix: Fixed a bug that resulted in incorrect narrowing on assignment when the assigned type is a tuple that includes one or more Any type arguments and the declared type is a tuple without an Any.
Bug Fix: Fixed a bug that led to a false positive error when doing protocol matching for a protocol and implementation that use a combination of class-scoped and function-scoped TypeVars.
Bug Fix: Fixed several bugs in ReadOnly TypedDict functionality based on the latest draft of the PEP 705.
Enhancement: Extended the len(x) == L type guard logic to support arbitrary expressions L that evaluate to a literal int type.
Behavior Change: Removed support for readonly keyword parameter for TypedDict to reflect latest changes in PEP 705.
Bug Fix: Fixed bug in protocol matching when source is a namedtuple or a frozen dataclass. Algorithm wasn't taking into account that attributes in these classes are immutable.
Published 1.1.332
Bug Fix: Fixed crash that occurs when encountering a malformed system version check of the form sys.version_info[0] < 3.8.
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 show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@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.321 to 1.1.335.
Release notes
Sourced from pyright's releases.
... (truncated)
Commits
b7090fb
Published 1.1.335e343ca7
Published 1.1.334736858c
Published 1.1.333ae1791a
Published 1.1.33294731a7
Published 1.1.331f68d9bf
Published 1.1.330cd7dafa
Published 1.1.329f7d27b7
Published 1.1.32837b907a
Published 1.1.327e758470
Published 1.1.326Dependabot 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 show