Commit Graph

7526 Commits

Author SHA1 Message Date
Eric Traut
a029774b99 Added extra blank line to JSON output to assist with parsing when used in watch mode. This addresses #8082. 2024-06-06 08:49:04 -07:00
Eric Traut
16ea2a80c5 Added check for except* to enforce that exception class does not derive from BaseExceptionGroup. 2024-06-05 22:57:21 -07:00
Eric Traut
2ade792ba8 Did a small cleanup pass on the implementation of PEP 746. 2024-06-05 21:00:48 -07:00
Eric Traut
ac7f6b7f74 Implemented provisional support for PEP 746, which provides consistency checks for metadata used in an Annotated annotation. 2024-06-05 20:24:36 -07:00
Eric Traut
7c5495c1b4 Renamed some internal functions and constants for consistency and clarity. 2024-06-05 18:41:08 -07:00
Eric Traut
e2adef6b88 Updated typeshed stubs to the latest version. This addresses #8079. 2024-06-05 18:13:08 -07:00
Eric Traut
de8e9939d2
Simplified logic and data structures for functions with parameter specs. (#8080) 2024-06-05 17:11:42 -07:00
PylanceBot
5551c4ac4e
pull-pylance-with-pyright-1.1.366-9378053462 (#8072)
Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rich Chiodo <rchiodo@users.noreply.github.com>
2024-06-05 10:05:53 -07:00
Eric Traut
8fa827608d Fixed bug that results in incorrect truthy/falsy type narrowing for an enum that overrides __bool__. This addresses #8074. 2024-06-05 08:56:31 -07:00
Eric Traut
cff7779bdb Published 1.1.366 2024-06-04 21:05:01 -07:00
Eric Traut
e90e041380
Added diagnostic check for an enum member with a type annotation. The typing spec says that this should be considered a typing error. This addresses #8060. (#8069) 2024-06-04 11:11:06 -07:00
Eric Traut
58094a5c4e
Changed behavior of pyright to match the latest typing spec when it encounters an attribute with a type annotation within an Enum class body in a stub. These are now treated as non-member attributes rather than members. Typeshed stubs have been updated to conform to the new standard. This addresses #8061. (#8063) 2024-06-03 17:24:07 -07:00
Eric Traut
46eba6ab41
Fixed bug in x is E type narrowing pattern where E is an enum literal and x is a supertype of E like object. This addresses #8059. (#8062) 2024-06-03 17:08:32 -07:00
Eric Traut
14a7622300 Fixed several misspellings in the code base. No functional change. 2024-06-03 13:34:37 -07:00
Eric Traut
e3ce2c8033 Updated typeshed stubs to the latest version. 2024-06-03 11:59:39 -07:00
Eric Traut
67fd972213
Issue8054 (#8055)
* Fixed bug that results in a false negative when solving a type variable that involves an invariant context.

* Fixed a bug that can result in incorrect type inference for a subexpression that is part of an assignment expression if executed with an inference context (bidirectional type inference). This addresses #8054.
2024-06-03 11:24:06 -07:00
Eric Traut
5ac25c8256
Fixed bug that results in a false negative when solving a type variable that involves an invariant context. (#8051) 2024-06-02 22:37:52 -07:00
Eric Traut
e4226ffea9 Revert "Simplified code in the typeVarContext module."
This reverts commit a572c05b26.
2024-06-02 22:04:29 -07:00
Eric Traut
ac7f66131a Revert "Restructure code in constraint solver. No functional change."
This reverts commit 6609e93ee6.
2024-06-02 22:04:17 -07:00
Eric Traut
6609e93ee6 Restructure code in constraint solver. No functional change. 2024-06-02 21:25:55 -07:00
Eric Traut
a572c05b26 Simplified code in the typeVarContext module. 2024-06-02 19:34:03 -07:00
Eric Traut
409df8ff72
Fixed bug that results in false positive when evaluating the call to a generic function that involves a type variable used in both a covariant and contravariant (or invariant) position and both literal and non-literal types are involved. This addresses part of #6207. (#8049) 2024-06-02 14:19:13 -07:00
Eric Traut
ecc4ebb12a Fixed bug that results in a confusing error message when stub generation fails. This addresses #8044. 2024-06-01 11:29:00 -07:00
Eric Traut
c7fbc82337 Reversed the change for #8035. Tuple expressions used in generators will not retain literal types. 2024-05-31 20:45:50 -07:00
JR Heard
d5b6abad59
Fix typo in type-stubs.md (#8037) 2024-05-31 20:00:30 -07:00
Eric Traut
5dba796e16 Minor code cleanup in program module. 2024-05-31 19:57:59 -07:00
Eric Traut
8a2857876b Renamed references to "list comprehension" to "comprehension" in various places for clarity. Comprehensions can be used in lists, dicts, sets or none of the above (in which case it's interpreted as a generator). 2024-05-31 17:57:40 -07:00
Eric Traut
03ddb0917b
Changed the tuple inference behavior to retain literals (as it did prior to 1.1.365) when a tuple expression is used within a generator expression. This addresses #8035. (#8036) 2024-05-31 17:37:06 -07:00
Eric Traut
e69974cee0 Fixed bug that results in a false positive error under certain circumstances involving a call to a higher-order generic function with another function that involves a class with a contravariant type variable. This addresses #7212. 2024-05-31 13:44:51 -07:00
Eric Traut
0e42a7ea56 Removed support for inlined TypedDict annotations. This idea never gained enough support to make it into a PEP. 2024-05-30 18:16:13 -07:00
Eric Traut
1bc5949959 Added comments for experimental features. 2024-05-30 18:14:47 -07:00
Eric Traut
181382d6a1 More cleanup of prefetched types. 2024-05-30 18:08:46 -07:00
Eric Traut
ce229098e6 Code cleanup for prefetched types used in type evaluator. 2024-05-30 17:41:39 -07:00
Eric Traut
32fa85e3ed
Changed behavior of constructor call evaluation when __new__ evaluation results in type evaluation errors. Previously, pyright skipped the __init__ evaluation in this case. It now proceeds to evaluate __init__, potentially generating redundant errors. This addresses #8026. (#8029) 2024-05-30 12:49:11 -07:00
PylanceBot
2e397e9a0a
[PylanceBot] Pull Pylance with Pyright 1.1.365 (#8016)
* pull-pylance-with-pyright-1.1.365-9280185292

* Update package.nls.ko.json typo

Fix typo

---------

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rich Chiodo <rchiodo@users.noreply.github.com>
2024-05-29 09:49:41 -07:00
Eric Traut
66101ee0c5 Published 1.1.365 2024-05-28 21:12:35 -07:00
Eric Traut
ece525e960
Fixed bug that results in a false negative when a Final class variable is assigned a value in the class body and reassigned a value in the __init__ method. This addresses #8013. (#8015) 2024-05-28 20:42:09 -07:00
Eric Traut
59eabcb60f
Fixed bug that leads to inconsistent narrowing-on-assignment behavior when a tuple instance with unknown type arguments is assigned to a target symbol with a declared tuple type. This addresses #8001. (#8005) 2024-05-26 23:42:37 -07:00
Eric Traut
a4d165ec02 Fixed regular expression for # type: ignore and # pyright: ignore comments. This addresses #8000. 2024-05-25 09:30:05 -07:00
Eric Traut
c1b5bccca0 Did some internal refactoring in preparation for implementation of new functionality. No functional change. 2024-05-25 00:33:38 -07:00
Eric Traut
1bba737d93
Fixed a bug that results in an unsolved TypeVar when calling list(tuple()). This addresses #7998. (#7999) 2024-05-25 00:25:05 -07:00
Eric Traut
1466ccb653 Fixed issue with chained config files related to typeCheckingMode. 2024-05-24 18:01:20 -07:00
Eric Traut
421dabee57
Added support for configuration inheritance through an "extends" configuration option. This addresses #4366. (#7997) 2024-05-24 17:22:12 -07:00
Eric Traut
0a83d6459c
Fixed a bug that results in incorrect type compatibility checks for a… (#7994)
* Fixed a bug that results in incorrect type compatibility checks for a callable that uses `*args: *tuple[T, *tuple[S, ...]]`. This addresses #7987.

* Improved diagnostic messages for parameter mismatch.
2024-05-24 13:19:16 -07:00
Eric Traut
af916c6644 First step in improving code for parameter matching for callable assignments. This step involves simple renaming. No functional change. 2024-05-24 10:10:16 -07:00
Eric Traut
a1ac859982 Small cleanup in callback protocol test. 2024-05-24 10:09:14 -07:00
Eric Traut
59b8963684 Attempted to clarify meaning of "include" and "exclude" in documentation. 2024-05-23 16:27:39 -07:00
Eric Traut
aed4c75980 Fixed regression that results in the incorrect type evaluation for the value attribute of a StrEnum or IntEnum class. This addresses #7983. 2024-05-23 09:18:30 -07:00
Ujan RoyBandyopadhyay
bfc60526a0
Use typeshed version info for stdlib module list (#7982) 2024-05-23 09:04:55 -07:00
Eric Traut
50d4f44735
Changed tuple expression inference behavior to not preserve literal entry types if the tuple expression is embedded within another tuple, set, list, or dictionary expression. This addresses #7159. (#7970) 2024-05-22 16:10:05 -07:00