Commit Graph

7555 Commits

Author SHA1 Message Date
Eric Traut
32f44d921a
Changed the behavior of double underscored symbols that are part of a module's namespace when that module is not a stub or in a "py.typed" package. Such symbols are no longer ignored, although they are considered private. This addresses #8131. (#8132) 2024-06-12 14:01:56 -07:00
PylanceBot
5d77369056
pull-pylance-with-pyright-1.1.367-9475931426 (#8123)
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-12 11:02:27 -07:00
Eric Traut
63e0876cff Added support for deprecated objects that are instantiated prior to being used as a decorator. This allows for a factory usage pattern. This addresses #5953. 2024-06-12 10:48:37 -07:00
Eric Traut
6baa5b1368 Fixed a bug that causes warnings.deprecated not to work if the python version is 3.13. This was caused by recent changes to typeshed stubs. 2024-06-12 10:46:48 -07:00
Eric Traut
b0cee14316
Changed inference behavior for generator functions with no reachable yield or yield from statements. The "yield type" (the first type argument to Generator) is now inferred as Never in this case rather than None. This addresses #8127. (#8130) 2024-06-12 09:40:56 -07:00
Eric Traut
597c634157 Published 1.1.367 2024-06-11 19:40:49 -07:00
Eric Traut
f2e5ff87df
Simplified internal FunctionType.clone method. (#8121) 2024-06-11 19:29:53 -07:00
Eric Traut
1742c57f8d Added helper function to wrap type evaluator functions that cannot be safely interrupted by a cancellation exception. 2024-06-11 15:13:20 -07:00
Erik De Bonte
807b160a39
Discard TypeEvaluator if cancellation leaves partially-constructed function type in cache (#8118) 2024-06-11 15:02:36 -07:00
Eric Traut
8e1797cca7 Clarified in documentation that ... is an ellipsis token. 2024-06-11 14:18:55 -07:00
Eric Traut
d34d9ccc27 Fixed regression in the handling of certain __init__ methods with an explicit type annotation for self. 2024-06-11 13:27:02 -07:00
Eric Traut
add2193101 Fixed subtle bug in a test case that was resulting in a long hang during unit tests. 2024-06-11 13:11:42 -07:00
Eric Traut
0df185ebd4
Simplified handling of TypeVars used in bound objects for constructor methods. (#8119) 2024-06-11 12:50:12 -07:00
Eric Traut
0edcd2eecf
Fixed bug that results in parameter types being converted to Any when converting a NewType or dataclass constructor to a callable. This addresses #8116. (#8117) 2024-06-11 09:08:46 -07:00
Eric Traut
2b0a1d92dd Simplified FunctionType.cloneForSpecialization method. 2024-06-10 19:39:33 -07:00
Eric Traut
ec196107e2 Updated typeshed stubs to the latest version (to pick up recent fix in shutil.pyi). 2024-06-10 13:40:05 -07:00
Eric Traut
81d43e4c41 Added consistent use of getTypeVarScopeId accessor function. No functional change. 2024-06-10 13:37:17 -07:00
Eric Traut
45fcebfe2c
Changed the import resolution order to better reflect runtime behavior and match a proposed change to the typing spec. In particular, stdlib typeshed stubs are now resolved prior to site_packages. This addresses #8099. (#8100) 2024-06-09 07:57:44 -07:00
Eric Traut
e588c6f984 Fixed bug in previous commit the caused default include/exclude values not to be provided in the case where a pyproject.toml was present but contained no pyright section. Thanks to @augustelalande for catching this. 2024-06-08 23:06:00 -07:00
Eric Traut
4319e03b71 Fixed bug that led to divergent behaviors between pyrightconfig.json and pyproject.toml configurations. Specifically, default exclude patterns were not added in the case of pyproject.toml. This addresses #8102. 2024-06-08 22:24:45 -07:00
Eric Traut
238f70049f
Fixed bug that results in a false positive error under certain circumstances involving tuple type narrowing in a loop. This addresses #8095. (#8098) 2024-06-08 13:12:36 -07:00
Eric Traut
5a0ec2dda4 Fixed bug that causes Final annotation not to be honored when wrapped in an Annotated annotation. This addresses #8097. 2024-06-08 10:10:38 -07:00
Eric Traut
ec229aa925
Fixed a bug that results in incorrect (local) type evaluation of an instance variable with a declared type when assigned within a loop that uses an augmented assignment. This addresses #8090. (#8093) 2024-06-07 15:51:02 -07:00
Eric Traut
aad860332e Fixed bug that results in duplicate and (contradictory) diagnostic outputs in certain cases where reveal_type is used in a loop. 2024-06-07 14:36:54 -07:00
Eric Traut
a0af8c5c8c Simplified interface to "assignTypeToXXX" methods. 2024-06-07 14:02:05 -07:00
Eric Traut
4b84651950 Added the ability to override type checking configuration settings for each execution environment. This allows, for example, a test directory to use different settings than the directories that contain production code. This addresses #4059. 2024-06-06 15:25:01 -07:00
Eric Traut
2c313972d3 Simplified JSON schema for config file in advance of adding config overrides for execution contexts. 2024-06-06 15:08:29 -07:00
Eric Traut
a4873a6a83 Simplified some code for logging diagnostics in checker and binder. 2024-06-06 13:57:48 -07:00
Eric Traut
32076952c7
Fixed bug that results in a false positive when accessing a generic attribute in a base class from a subclass that explicitly specializes the generic type. This addresses #8083. (#8086) 2024-06-06 10:29:53 -07:00
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