Microsoft/pyright (pyright)
### [`v1.1.382`](https://redirect.github.com/microsoft/pyright/releases/tag/1.1.382): Published 1.1.382
[Compare Source](https://redirect.github.com/Microsoft/pyright/compare/1.1.381...1.1.382)
Bug Fixes:
- Fixed bug that can result in incorrect type evaluation behaviors if a call to `type` is used within a loop.
- Fixed bug that results in incorrect type inference for list, set, dict, and tuple expressions that include modules in them.
- Fixed bug that results in false positive error when using a `Final` variable in a protocol and a NamedTuple or frozen dataclass as a concrete class.
- Fixed bug that results in a false negative when assigning a value to a union type that includes the same type variable multiple times in at least one invariant context. This change eliminates the concept of a "locked" constraint tracker, which is no longer needed and was the underlying cause of the bug.
- Fixed bug that resulted in a "reportIncompatibleMethodOverride" error being reported in the wrong location when a property method has a decorator applied to it.
- Fixed a bug that results in a false positive when assigning `Never` to a type variable in a contravariant context.
- Added check for the illegal use of `TypeForm` as the second argument to an `isinstance` or `issubclass` call.
- Fixed bug that results in incorrect type narrowing when a value typed as `TypeForm` is used as the first argument to `isinstance`.
- Fixed a bug that can result in a false positive error when a function signature contains a positional-only parameter and a keyword parameter with the same name. This can result from the application of a ParamSpec or through the use of an unpacked TypedDict.
- Fixed a bug that results in incorrect type evaluation behaviors when a class has a custom metaclass with a `__call__` method and a `__new__` or `__init__` method that provides a different bidirectional type inference context for parameters.
Enhancements:
- Added special-case handling for the `len(t) == L` type guard pattern to handle the negative narrowing case where tuple `t` has a minimum length of `L`. In this case, the narrowed type can be computed whereas previously it was left unnarrowed.
- Improved hover text for converters in dataclass-like classes.
- Updated typeshed stubs to the latest version.
- Extended `reportUnnecessaryComparison` to cover more cases involving `is` and `is not` operators.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
1.1.381
->1.1.382
Release Notes
Microsoft/pyright (pyright)
### [`v1.1.382`](https://redirect.github.com/microsoft/pyright/releases/tag/1.1.382): Published 1.1.382 [Compare Source](https://redirect.github.com/Microsoft/pyright/compare/1.1.381...1.1.382) Bug Fixes: - Fixed bug that can result in incorrect type evaluation behaviors if a call to `type` is used within a loop. - Fixed bug that results in incorrect type inference for list, set, dict, and tuple expressions that include modules in them. - Fixed bug that results in false positive error when using a `Final` variable in a protocol and a NamedTuple or frozen dataclass as a concrete class. - Fixed bug that results in a false negative when assigning a value to a union type that includes the same type variable multiple times in at least one invariant context. This change eliminates the concept of a "locked" constraint tracker, which is no longer needed and was the underlying cause of the bug. - Fixed bug that resulted in a "reportIncompatibleMethodOverride" error being reported in the wrong location when a property method has a decorator applied to it. - Fixed a bug that results in a false positive when assigning `Never` to a type variable in a contravariant context. - Added check for the illegal use of `TypeForm` as the second argument to an `isinstance` or `issubclass` call. - Fixed bug that results in incorrect type narrowing when a value typed as `TypeForm` is used as the first argument to `isinstance`. - Fixed a bug that can result in a false positive error when a function signature contains a positional-only parameter and a keyword parameter with the same name. This can result from the application of a ParamSpec or through the use of an unpacked TypedDict. - Fixed a bug that results in incorrect type evaluation behaviors when a class has a custom metaclass with a `__call__` method and a `__new__` or `__init__` method that provides a different bidirectional type inference context for parameters. Enhancements: - Added special-case handling for the `len(t) == L` type guard pattern to handle the negative narrowing case where tuple `t` has a minimum length of `L`. In this case, the narrowed type can be computed whereas previously it was left unnarrowed. - Improved hover text for converters in dataclass-like classes. - Updated typeshed stubs to the latest version. - Extended `reportUnnecessaryComparison` to cover more cases involving `is` and `is not` operators.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.