@zzzen/pyright-internal 1.2.0-dev.20240317 → 1.2.0-dev.20240331

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/dist/analyzer/analyzerFileInfo.js +1 -1
  2. package/dist/analyzer/analyzerFileInfo.js.map +1 -1
  3. package/dist/analyzer/binder.js +4 -1
  4. package/dist/analyzer/binder.js.map +1 -1
  5. package/dist/analyzer/cacheManager.d.ts +1 -0
  6. package/dist/analyzer/cacheManager.js +4 -1
  7. package/dist/analyzer/cacheManager.js.map +1 -1
  8. package/dist/analyzer/checker.d.ts +1 -2
  9. package/dist/analyzer/checker.js +16 -11
  10. package/dist/analyzer/checker.js.map +1 -1
  11. package/dist/analyzer/constructors.d.ts +3 -2
  12. package/dist/analyzer/constructors.js +76 -54
  13. package/dist/analyzer/constructors.js.map +1 -1
  14. package/dist/analyzer/dataClasses.js +2 -0
  15. package/dist/analyzer/dataClasses.js.map +1 -1
  16. package/dist/analyzer/declaration.js +1 -1
  17. package/dist/analyzer/declaration.js.map +1 -1
  18. package/dist/analyzer/deprecatedSymbols.js +40 -40
  19. package/dist/analyzer/deprecatedSymbols.js.map +1 -1
  20. package/dist/analyzer/enums.js +1 -0
  21. package/dist/analyzer/enums.js.map +1 -1
  22. package/dist/analyzer/importResolver.js +25 -23
  23. package/dist/analyzer/importResolver.js.map +1 -1
  24. package/dist/analyzer/namedTuples.js +2 -0
  25. package/dist/analyzer/namedTuples.js.map +1 -1
  26. package/dist/analyzer/operations.js +1 -1
  27. package/dist/analyzer/operations.js.map +1 -1
  28. package/dist/analyzer/packageTypeVerifier.js +1 -1
  29. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  30. package/dist/analyzer/parseTreeUtils.d.ts +1 -1
  31. package/dist/analyzer/patternMatching.js +14 -3
  32. package/dist/analyzer/patternMatching.js.map +1 -1
  33. package/dist/analyzer/program.d.ts +1 -7
  34. package/dist/analyzer/program.js +15 -19
  35. package/dist/analyzer/program.js.map +1 -1
  36. package/dist/analyzer/programTypes.d.ts +11 -0
  37. package/dist/analyzer/programTypes.js +11 -0
  38. package/dist/analyzer/programTypes.js.map +1 -0
  39. package/dist/analyzer/properties.js +2 -8
  40. package/dist/analyzer/properties.js.map +1 -1
  41. package/dist/analyzer/pythonPathUtils.js +1 -2
  42. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  43. package/dist/analyzer/service.d.ts +2 -2
  44. package/dist/analyzer/service.js +20 -14
  45. package/dist/analyzer/service.js.map +1 -1
  46. package/dist/analyzer/sourceFile.js +4 -4
  47. package/dist/analyzer/sourceFile.js.map +1 -1
  48. package/dist/analyzer/sourceFileInfoUtils.js +3 -3
  49. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  50. package/dist/analyzer/staticExpressions.js +52 -30
  51. package/dist/analyzer/staticExpressions.js.map +1 -1
  52. package/dist/analyzer/tracePrinter.js +2 -2
  53. package/dist/analyzer/tracePrinter.js.map +1 -1
  54. package/dist/analyzer/typeEvaluator.js +81 -56
  55. package/dist/analyzer/typeEvaluator.js.map +1 -1
  56. package/dist/analyzer/typeGuards.js +14 -7
  57. package/dist/analyzer/typeGuards.js.map +1 -1
  58. package/dist/analyzer/typeUtils.d.ts +2 -2
  59. package/dist/analyzer/typeUtils.js +41 -5
  60. package/dist/analyzer/typeUtils.js.map +1 -1
  61. package/dist/analyzer/typedDicts.js +3 -0
  62. package/dist/analyzer/typedDicts.js.map +1 -1
  63. package/dist/backgroundAnalysis.js +1 -1
  64. package/dist/backgroundAnalysis.js.map +1 -1
  65. package/dist/backgroundAnalysisBase.js +1 -1
  66. package/dist/backgroundAnalysisBase.js.map +1 -1
  67. package/dist/backgroundThreadBase.js +23 -11
  68. package/dist/backgroundThreadBase.js.map +1 -1
  69. package/dist/commands/commandController.d.ts +2 -1
  70. package/dist/commands/commandController.js +3 -0
  71. package/dist/commands/commandController.js.map +1 -1
  72. package/dist/commands/createTypeStub.d.ts +1 -1
  73. package/dist/commands/createTypeStub.js +3 -3
  74. package/dist/commands/createTypeStub.js.map +1 -1
  75. package/dist/commands/dumpFileDebugInfoCommand.d.ts +1 -1
  76. package/dist/commands/dumpFileDebugInfoCommand.js +1 -1
  77. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  78. package/dist/commands/quickActionCommand.d.ts +1 -1
  79. package/dist/commands/quickActionCommand.js +2 -2
  80. package/dist/commands/quickActionCommand.js.map +1 -1
  81. package/dist/commands/restartServer.d.ts +1 -1
  82. package/dist/common/cancellationUtils.js +2 -2
  83. package/dist/common/cancellationUtils.js.map +1 -1
  84. package/dist/common/caseSensitivityDetector.d.ts +6 -0
  85. package/dist/common/caseSensitivityDetector.js +18 -0
  86. package/dist/common/caseSensitivityDetector.js.map +1 -0
  87. package/dist/common/commandLineOptions.d.ts +3 -2
  88. package/dist/common/commandLineOptions.js.map +1 -1
  89. package/dist/common/commandUtils.js +1 -1
  90. package/dist/common/commandUtils.js.map +1 -1
  91. package/dist/common/configOptions.js +7 -7
  92. package/dist/common/configOptions.js.map +1 -1
  93. package/dist/common/envVarUtils.d.ts +1 -0
  94. package/dist/common/envVarUtils.js +42 -7
  95. package/dist/common/envVarUtils.js.map +1 -1
  96. package/dist/common/extensibility.d.ts +1 -1
  97. package/dist/common/fileBasedCancellationUtils.js +2 -2
  98. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  99. package/dist/common/fileSystem.d.ts +0 -1
  100. package/dist/common/fileSystem.js.map +1 -1
  101. package/dist/common/fullAccessHost.js +11 -6
  102. package/dist/common/fullAccessHost.js.map +1 -1
  103. package/dist/common/languageServerInterface.d.ts +62 -0
  104. package/dist/common/languageServerInterface.js +10 -0
  105. package/dist/common/languageServerInterface.js.map +1 -0
  106. package/dist/common/pythonVersion.d.ts +36 -20
  107. package/dist/common/pythonVersion.js +160 -54
  108. package/dist/common/pythonVersion.js.map +1 -1
  109. package/dist/common/realFileSystem.d.ts +8 -4
  110. package/dist/common/realFileSystem.js +56 -17
  111. package/dist/common/realFileSystem.js.map +1 -1
  112. package/dist/common/serviceKeys.d.ts +21 -0
  113. package/dist/common/serviceKeys.js +26 -0
  114. package/dist/common/serviceKeys.js.map +1 -0
  115. package/dist/common/serviceProviderExtensions.d.ts +2 -16
  116. package/dist/common/serviceProviderExtensions.js +19 -27
  117. package/dist/common/serviceProviderExtensions.js.map +1 -1
  118. package/dist/common/textEditTracker.js +2 -2
  119. package/dist/common/textEditTracker.js.map +1 -1
  120. package/dist/common/uri/constantUri.d.ts +36 -0
  121. package/dist/common/uri/constantUri.js +112 -0
  122. package/dist/common/uri/constantUri.js.map +1 -0
  123. package/dist/common/uri/emptyUri.d.ts +3 -31
  124. package/dist/common/uri/emptyUri.js +3 -84
  125. package/dist/common/uri/emptyUri.js.map +1 -1
  126. package/dist/common/uri/fileUri.d.ts +1 -0
  127. package/dist/common/uri/fileUri.js +3 -2
  128. package/dist/common/uri/fileUri.js.map +1 -1
  129. package/dist/common/uri/uri.d.ts +11 -3
  130. package/dist/common/uri/uri.js +31 -20
  131. package/dist/common/uri/uri.js.map +1 -1
  132. package/dist/common/uri/uriUtils.d.ts +11 -5
  133. package/dist/common/uri/uriUtils.js +31 -53
  134. package/dist/common/uri/uriUtils.js.map +1 -1
  135. package/dist/common/workspaceEditUtils.js +4 -4
  136. package/dist/common/workspaceEditUtils.js.map +1 -1
  137. package/dist/languageServerBase.d.ts +9 -57
  138. package/dist/languageServerBase.js +18 -8
  139. package/dist/languageServerBase.js.map +1 -1
  140. package/dist/languageService/analyzerServiceExecutor.d.ts +1 -1
  141. package/dist/languageService/analyzerServiceExecutor.js +4 -5
  142. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  143. package/dist/languageService/callHierarchyProvider.js +6 -6
  144. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  145. package/dist/languageService/codeActionProvider.js +43 -42
  146. package/dist/languageService/codeActionProvider.js.map +1 -1
  147. package/dist/languageService/completionProvider.js +4 -4
  148. package/dist/languageService/completionProvider.js.map +1 -1
  149. package/dist/languageService/definitionProvider.js +2 -2
  150. package/dist/languageService/definitionProvider.js.map +1 -1
  151. package/dist/languageService/documentSymbolCollector.js +2 -2
  152. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  153. package/dist/languageService/documentSymbolProvider.d.ts +3 -2
  154. package/dist/languageService/documentSymbolProvider.js +3 -2
  155. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  156. package/dist/languageService/referencesProvider.js +2 -2
  157. package/dist/languageService/referencesProvider.js.map +1 -1
  158. package/dist/languageService/signatureHelpProvider.js +2 -2
  159. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  160. package/dist/languageService/symbolIndexer.d.ts +4 -1
  161. package/dist/languageService/symbolIndexer.js +21 -11
  162. package/dist/languageService/symbolIndexer.js.map +1 -1
  163. package/dist/languageService/workspaceSymbolProvider.js +1 -1
  164. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  165. package/dist/localization/localize.js +21 -16
  166. package/dist/localization/localize.js.map +1 -1
  167. package/dist/localization/package.nls.cs.json +1 -0
  168. package/dist/localization/package.nls.de.json +1 -0
  169. package/dist/localization/package.nls.es.json +1 -0
  170. package/dist/localization/package.nls.fr.json +1 -0
  171. package/dist/localization/package.nls.it.json +1 -0
  172. package/dist/localization/package.nls.ja.json +1 -0
  173. package/dist/localization/package.nls.ko.json +1 -0
  174. package/dist/localization/package.nls.pl.json +1 -0
  175. package/dist/localization/package.nls.pt-br.json +1 -0
  176. package/dist/localization/package.nls.qps-ploc.json +1 -0
  177. package/dist/localization/package.nls.ru.json +1 -0
  178. package/dist/localization/package.nls.tr.json +1 -0
  179. package/dist/localization/package.nls.zh-cn.json +1 -0
  180. package/dist/localization/package.nls.zh-tw.json +1 -0
  181. package/dist/parser/parser.js +24 -21
  182. package/dist/parser/parser.js.map +1 -1
  183. package/dist/parser/unicode.js +3456 -2853
  184. package/dist/parser/unicode.js.map +1 -1
  185. package/dist/pyright.js +7 -7
  186. package/dist/pyright.js.map +1 -1
  187. package/dist/pyrightFileSystem.d.ts +3 -1
  188. package/dist/pyrightFileSystem.js +14 -9
  189. package/dist/pyrightFileSystem.js.map +1 -1
  190. package/dist/readonlyAugmentedFileSystem.d.ts +0 -1
  191. package/dist/readonlyAugmentedFileSystem.js +0 -3
  192. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  193. package/dist/server.d.ts +3 -1
  194. package/dist/server.js +14 -10
  195. package/dist/server.js.map +1 -1
  196. package/dist/tests/chainedSourceFiles.test.js +12 -12
  197. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  198. package/dist/tests/checker.test.js +11 -11
  199. package/dist/tests/checker.test.js.map +1 -1
  200. package/dist/tests/completions.test.js +4 -4
  201. package/dist/tests/completions.test.js.map +1 -1
  202. package/dist/tests/config.test.js +26 -21
  203. package/dist/tests/config.test.js.map +1 -1
  204. package/dist/tests/documentSymbolCollector.test.js +2 -3
  205. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  206. package/dist/tests/envVarUtils.test.js +77 -2
  207. package/dist/tests/envVarUtils.test.js.map +1 -1
  208. package/dist/tests/filesystem.test.js +13 -13
  209. package/dist/tests/filesystem.test.js.map +1 -1
  210. package/dist/tests/fourSlashParser.test.js +12 -12
  211. package/dist/tests/fourSlashParser.test.js.map +1 -1
  212. package/dist/tests/harness/fourslash/fourSlashParser.js +12 -10
  213. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  214. package/dist/tests/harness/fourslash/fourSlashTypes.d.ts +1 -0
  215. package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
  216. package/dist/tests/harness/fourslash/testLanguageService.d.ts +3 -2
  217. package/dist/tests/harness/fourslash/testLanguageService.js +2 -2
  218. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  219. package/dist/tests/harness/fourslash/testState.d.ts +3 -3
  220. package/dist/tests/harness/fourslash/testState.js +36 -32
  221. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  222. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +1 -1
  223. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  224. package/dist/tests/harness/testHost.d.ts +7 -0
  225. package/dist/tests/harness/testHost.js +33 -14
  226. package/dist/tests/harness/testHost.js.map +1 -1
  227. package/dist/tests/harness/vfs/factory.d.ts +3 -4
  228. package/dist/tests/harness/vfs/factory.js +7 -6
  229. package/dist/tests/harness/vfs/factory.js.map +1 -1
  230. package/dist/tests/harness/vfs/filesystem.d.ts +5 -3
  231. package/dist/tests/harness/vfs/filesystem.js +22 -15
  232. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  233. package/dist/tests/importResolver.test.js +35 -34
  234. package/dist/tests/importResolver.test.js.map +1 -1
  235. package/dist/tests/importStatementUtils.test.js +5 -6
  236. package/dist/tests/importStatementUtils.test.js.map +1 -1
  237. package/dist/tests/languageServer.test.js +1 -1
  238. package/dist/tests/languageServer.test.js.map +1 -1
  239. package/dist/tests/logger.test.js +1 -1
  240. package/dist/tests/logger.test.js.map +1 -1
  241. package/dist/tests/lsp/customLsp.d.ts +1 -1
  242. package/dist/tests/lsp/languageServer.js +7 -5
  243. package/dist/tests/lsp/languageServer.js.map +1 -1
  244. package/dist/tests/lsp/languageServerTestUtils.js +21 -16
  245. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
  246. package/dist/tests/parseTreeUtils.test.js +1 -2
  247. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  248. package/dist/tests/pyrightFileSystem.test.js +6 -5
  249. package/dist/tests/pyrightFileSystem.test.js.map +1 -1
  250. package/dist/tests/serialization.test.js +5 -5
  251. package/dist/tests/serialization.test.js.map +1 -1
  252. package/dist/tests/service.test.js +16 -25
  253. package/dist/tests/service.test.js.map +1 -1
  254. package/dist/tests/sourceFile.test.js +8 -5
  255. package/dist/tests/sourceFile.test.js.map +1 -1
  256. package/dist/tests/sourceMapperUtils.test.js +4 -4
  257. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  258. package/dist/tests/testState.test.js +5 -5
  259. package/dist/tests/testState.test.js.map +1 -1
  260. package/dist/tests/testStateUtils.js +6 -6
  261. package/dist/tests/testStateUtils.js.map +1 -1
  262. package/dist/tests/testUtils.js +6 -4
  263. package/dist/tests/testUtils.js.map +1 -1
  264. package/dist/tests/typeEvaluator1.test.js +16 -12
  265. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  266. package/dist/tests/typeEvaluator2.test.js +2 -2
  267. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  268. package/dist/tests/typeEvaluator3.test.js +57 -57
  269. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  270. package/dist/tests/typeEvaluator4.test.js +21 -21
  271. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  272. package/dist/tests/typeEvaluator5.test.js +27 -27
  273. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  274. package/dist/tests/typePrinter.test.js.map +1 -1
  275. package/dist/tests/uri.test.js +220 -199
  276. package/dist/tests/uri.test.js.map +1 -1
  277. package/dist/tests/workspaceEditUtils.test.js +7 -7
  278. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  279. package/dist/tests/zipfs.test.js +7 -5
  280. package/dist/tests/zipfs.test.js.map +1 -1
  281. package/dist/workspaceFactory.d.ts +15 -6
  282. package/dist/workspaceFactory.js +16 -10
  283. package/dist/workspaceFactory.js.map +1 -1
  284. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"staticExpressions.js","sourceRoot":"","sources":["../../../../../src/analyzer/staticExpressions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"staticExpressions.js","sourceRoot":"","sources":["../../../../../src/analyzer/staticExpressions.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,7 @@ function createTracePrinter(roots) {
52
52
  const separatorRegExp = /[\\/]/g;
53
53
  function printFileOrModuleName(fileUriOrModule) {
54
54
  if (fileUriOrModule) {
55
- if (uri_1.Uri.isUri(fileUriOrModule)) {
55
+ if (uri_1.Uri.is(fileUriOrModule)) {
56
56
  for (const root of roots) {
57
57
  if (fileUriOrModule.isChild(root)) {
58
58
  const subFile = root.getRelativePath(fileUriOrModule);
@@ -193,7 +193,7 @@ function createTracePrinter(roots) {
193
193
  }
194
194
  function isDeclaration(o) {
195
195
  const d = o;
196
- return d && (0, core_1.isNumber)(d.type) && uri_1.Uri.isUri(d.uri) && (0, core_1.isString)(d.moduleName);
196
+ return d && (0, core_1.isNumber)(d.type) && uri_1.Uri.is(d.uri) && (0, core_1.isString)(d.moduleName);
197
197
  }
198
198
  function isType(o) {
199
199
  const t = o;
@@ -1 +1 @@
1
- {"version":3,"file":"tracePrinter.js","sourceRoot":"","sources":["../../../../../src/analyzer/tracePrinter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracePrinter.js","sourceRoot":"","sources":["../../../../../src/analyzer/tracePrinter.ts"],"names":[],"mappings":"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"}
@@ -86,21 +86,21 @@ const types_1 = require("./types");
86
86
  // It lists the first version of Python where subscripting is
87
87
  // allowed.
88
88
  const nonSubscriptableBuiltinTypes = new Map([
89
- ['asyncio.futures.Future', pythonVersion_1.PythonVersion.V3_9],
90
- ['asyncio.tasks.Task', pythonVersion_1.PythonVersion.V3_9],
91
- ['builtins.dict', pythonVersion_1.PythonVersion.V3_9],
92
- ['builtins.frozenset', pythonVersion_1.PythonVersion.V3_9],
93
- ['builtins.list', pythonVersion_1.PythonVersion.V3_9],
94
- ['builtins._PathLike', pythonVersion_1.PythonVersion.V3_9],
95
- ['builtins.set', pythonVersion_1.PythonVersion.V3_9],
96
- ['builtins.tuple', pythonVersion_1.PythonVersion.V3_9],
97
- ['collections.ChainMap', pythonVersion_1.PythonVersion.V3_9],
98
- ['collections.Counter', pythonVersion_1.PythonVersion.V3_9],
99
- ['collections.defaultdict', pythonVersion_1.PythonVersion.V3_9],
100
- ['collections.DefaultDict', pythonVersion_1.PythonVersion.V3_9],
101
- ['collections.deque', pythonVersion_1.PythonVersion.V3_9],
102
- ['collections.OrderedDict', pythonVersion_1.PythonVersion.V3_9],
103
- ['queue.Queue', pythonVersion_1.PythonVersion.V3_9],
89
+ ['asyncio.futures.Future', pythonVersion_1.pythonVersion3_9],
90
+ ['asyncio.tasks.Task', pythonVersion_1.pythonVersion3_9],
91
+ ['builtins.dict', pythonVersion_1.pythonVersion3_9],
92
+ ['builtins.frozenset', pythonVersion_1.pythonVersion3_9],
93
+ ['builtins.list', pythonVersion_1.pythonVersion3_9],
94
+ ['builtins._PathLike', pythonVersion_1.pythonVersion3_9],
95
+ ['builtins.set', pythonVersion_1.pythonVersion3_9],
96
+ ['builtins.tuple', pythonVersion_1.pythonVersion3_9],
97
+ ['collections.ChainMap', pythonVersion_1.pythonVersion3_9],
98
+ ['collections.Counter', pythonVersion_1.pythonVersion3_9],
99
+ ['collections.defaultdict', pythonVersion_1.pythonVersion3_9],
100
+ ['collections.DefaultDict', pythonVersion_1.pythonVersion3_9],
101
+ ['collections.deque', pythonVersion_1.pythonVersion3_9],
102
+ ['collections.OrderedDict', pythonVersion_1.pythonVersion3_9],
103
+ ['queue.Queue', pythonVersion_1.pythonVersion3_9],
104
104
  ]);
105
105
  // Some types that do not inherit from others are still considered
106
106
  // "compatible" based on the Python spec. These are sometimes referred
@@ -1421,13 +1421,17 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
1421
1421
  subDiag = metaclassDiag;
1422
1422
  }
1423
1423
  }
1424
- if (memberInfo && !memberInfo.isDescriptorError) {
1424
+ if (memberInfo) {
1425
+ if (memberInfo.isDescriptorError && diag && subDiag) {
1426
+ diag.addAddendum(subDiag);
1427
+ }
1425
1428
  return {
1426
1429
  type: memberInfo.type,
1427
1430
  classType: memberInfo.classType,
1428
1431
  isIncomplete: !!memberInfo.isTypeIncomplete,
1429
1432
  isAsymmetricAccessor: memberInfo.isAsymmetricAccessor,
1430
1433
  memberAccessDeprecationInfo: memberInfo.memberAccessDeprecationInfo,
1434
+ typeErrors: memberInfo.isDescriptorError,
1431
1435
  };
1432
1436
  }
1433
1437
  // If this is a type[Any] or type[Unknown], allow any other members.
@@ -1545,7 +1549,8 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
1545
1549
  let constructorType;
1546
1550
  // Try to get the `__init__` method first because it typically has more
1547
1551
  // type information than `__new__`.
1548
- const initMethodResult = (0, constructors_1.getBoundInitMethod)(evaluatorInterface, callNode, types_1.ClassType.cloneAsInstance(subtype), 0 /* MemberAccessFlags.Default */);
1552
+ const initMethodResult = (0, constructors_1.getBoundInitMethod)(evaluatorInterface, callNode, types_1.ClassType.cloneAsInstance(subtype),
1553
+ /* diag */ undefined, 0 /* MemberAccessFlags.Default */);
1549
1554
  if (initMethodResult && !initMethodResult.typeErrors) {
1550
1555
  if ((0, types_1.isFunction)(initMethodResult.type) || (0, types_1.isOverloadedFunction)(initMethodResult.type)) {
1551
1556
  constructorType = initMethodResult.type;
@@ -1561,7 +1566,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
1561
1566
  // the `object` class or accepts only default parameters(* args, ** kwargs),
1562
1567
  // see if we can find a better signature from the `__new__` method.
1563
1568
  if (!constructorType || isObjectInit || isDefaultParams) {
1564
- const newMethodResult = (0, constructors_1.getBoundNewMethod)(evaluatorInterface, callNode, subtype, 0 /* MemberAccessFlags.Default */);
1569
+ const newMethodResult = (0, constructors_1.getBoundNewMethod)(evaluatorInterface, callNode, subtype);
1565
1570
  if (newMethodResult && !newMethodResult.typeErrors) {
1566
1571
  if ((0, types_1.isFunction)(newMethodResult.type) &&
1567
1572
  newMethodResult.type.details.fullName !== 'builtins.object.__new__') {
@@ -3611,18 +3616,18 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
3611
3616
  typeResult = getTypeOfBoundMember(node.memberName, baseType, memberName, usage, diag,
3612
3617
  /* memberAccessFlags */ undefined, baseTypeResult.bindToSelfType);
3613
3618
  }
3614
- if (typeResult) {
3619
+ if (typeResult && !typeResult.typeErrors) {
3615
3620
  type = (0, typeUtils_1.addConditionToType)(typeResult.type, (0, typeUtils_1.getTypeCondition)(baseType),
3616
3621
  /* skipSelfCondition */ true);
3617
- }
3618
- if (typeResult === null || typeResult === void 0 ? void 0 : typeResult.isIncomplete) {
3619
- isIncomplete = true;
3620
- }
3621
- if (typeResult === null || typeResult === void 0 ? void 0 : typeResult.isAsymmetricAccessor) {
3622
- isAsymmetricAccessor = true;
3623
- }
3624
- if (typeResult === null || typeResult === void 0 ? void 0 : typeResult.memberAccessDeprecationInfo) {
3625
- memberAccessDeprecationInfo = typeResult.memberAccessDeprecationInfo;
3622
+ if (typeResult.isIncomplete) {
3623
+ isIncomplete = true;
3624
+ }
3625
+ if (typeResult.isAsymmetricAccessor) {
3626
+ isAsymmetricAccessor = true;
3627
+ }
3628
+ if (typeResult.memberAccessDeprecationInfo) {
3629
+ memberAccessDeprecationInfo = typeResult.memberAccessDeprecationInfo;
3630
+ }
3626
3631
  }
3627
3632
  break;
3628
3633
  }
@@ -3662,7 +3667,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
3662
3667
  if (usage.method === 'get') {
3663
3668
  const getAttrSymbol = types_1.ModuleType.getField(baseType, '__getattr__');
3664
3669
  if (getAttrSymbol) {
3665
- const isModuleGetAttrSupported = fileInfo.executionEnvironment.pythonVersion >= pythonVersion_1.PythonVersion.V3_7 ||
3670
+ const isModuleGetAttrSupported = fileInfo.executionEnvironment.pythonVersion.isGreaterOrEqualTo(pythonVersion_1.pythonVersion3_7) ||
3666
3671
  getAttrSymbol.getDeclarations().some((decl) => decl.uri.hasExtension('.pyi'));
3667
3672
  if (isModuleGetAttrSupported) {
3668
3673
  const getAttrTypeResult = getEffectiveTypeOfSymbolForUsage(getAttrSymbol);
@@ -3701,7 +3706,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
3701
3706
  }
3702
3707
  if ((0, typeUtils_1.isNoneInstance)(subtype) && noneType && (0, types_1.isClassInstance)(noneType)) {
3703
3708
  const typeResult = getTypeOfBoundMember(node.memberName, noneType, memberName, usage, diag);
3704
- if (typeResult) {
3709
+ if (typeResult && !typeResult.typeErrors) {
3705
3710
  type = (0, typeUtils_1.addConditionToType)(typeResult.type, (0, typeUtils_1.getTypeCondition)(baseType));
3706
3711
  if (typeResult.isIncomplete) {
3707
3712
  isIncomplete = true;
@@ -4015,7 +4020,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
4015
4020
  }
4016
4021
  const methodTypeResult = getTypeOfBoundMember(errorNode, concreteMemberType, accessMethodName,
4017
4022
  /* usage */ undefined, diag === null || diag === void 0 ? void 0 : diag.createAddendum(), 16 /* MemberAccessFlags.SkipInstanceMembers */ | 512 /* MemberAccessFlags.SkipAttributeAccessOverride */);
4018
- if (!methodTypeResult) {
4023
+ if (!methodTypeResult || methodTypeResult.typeErrors) {
4019
4024
  // Provide special error messages for properties.
4020
4025
  if (types_1.ClassType.isPropertyClass(concreteMemberType)) {
4021
4026
  if (usage.method !== 'get') {
@@ -4385,7 +4390,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
4385
4390
  !baseTypeResult.type.aliasName) {
4386
4391
  const minPythonVersion = nonSubscriptableBuiltinTypes.get(baseTypeResult.type.details.fullName);
4387
4392
  if (minPythonVersion !== undefined &&
4388
- fileInfo.executionEnvironment.pythonVersion < minPythonVersion &&
4393
+ fileInfo.executionEnvironment.pythonVersion.isLessThan(minPythonVersion) &&
4389
4394
  !fileInfo.isStubFile) {
4390
4395
  addError(localize_1.LocMessage.classNotRuntimeSubscriptable().format({
4391
4396
  name: baseTypeResult.type.aliasName || baseTypeResult.type.details.name,
@@ -6792,7 +6797,8 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
6792
6797
  const result = {
6793
6798
  returnType: (0, namedTuples_1.createNamedTupleType)(evaluatorInterface, errorNode, argList, /* includesTypes */ true),
6794
6799
  };
6795
- const initTypeResult = (0, constructors_1.getBoundInitMethod)(evaluatorInterface, errorNode, types_1.ClassType.cloneAsInstance(expandedCallType), 0 /* MemberAccessFlags.Default */);
6800
+ const initTypeResult = (0, constructors_1.getBoundInitMethod)(evaluatorInterface, errorNode, types_1.ClassType.cloneAsInstance(expandedCallType),
6801
+ /* diag */ undefined, 0 /* MemberAccessFlags.Default */);
6796
6802
  if (initTypeResult && (0, types_1.isOverloadedFunction)(initTypeResult.type)) {
6797
6803
  validateOverloadedFunctionArguments(errorNode, argList, { type: initTypeResult.type },
6798
6804
  /* typeVarContext */ undefined, skipUnknownArgCheck,
@@ -6895,15 +6901,15 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
6895
6901
  }
6896
6902
  function validateCallForClassInstance(errorNode, argList, expandedCallType, unexpandedCallType, typeVarContext, skipUnknownArgCheck, inferenceContext, recursionCount) {
6897
6903
  var _a;
6904
+ const callDiag = new diagnostic_1.DiagnosticAddendum();
6898
6905
  const callMethodResult = getTypeOfBoundMember(errorNode, expandedCallType, '__call__',
6899
- /* usage */ undefined,
6900
- /* diag */ undefined, 16 /* MemberAccessFlags.SkipInstanceMembers */ | 512 /* MemberAccessFlags.SkipAttributeAccessOverride */,
6906
+ /* usage */ undefined, callDiag, 16 /* MemberAccessFlags.SkipInstanceMembers */ | 512 /* MemberAccessFlags.SkipAttributeAccessOverride */,
6901
6907
  /* selfType */ undefined, recursionCount);
6902
6908
  const callMethodType = callMethodResult === null || callMethodResult === void 0 ? void 0 : callMethodResult.type;
6903
- if (!callMethodType) {
6909
+ if (!callMethodType || callMethodResult.typeErrors) {
6904
6910
  addDiagnostic(diagnosticRules_1.DiagnosticRule.reportCallIssue, localize_1.LocMessage.objectNotCallable().format({
6905
6911
  type: printType(expandedCallType),
6906
- }), errorNode);
6912
+ }) + callDiag.getString(), errorNode);
6907
6913
  return { returnType: types_1.UnknownType.create(), argumentErrors: true };
6908
6914
  }
6909
6915
  const callResult = validateCallArguments(errorNode, argList, { type: callMethodType }, typeVarContext, skipUnknownArgCheck, inferenceContext, recursionCount);
@@ -8696,7 +8702,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
8696
8702
  typeVar.details.isDefaultExplicit = true;
8697
8703
  const fileInfo = AnalyzerNodeInfo.getFileInfo(errorNode);
8698
8704
  if (!fileInfo.isStubFile &&
8699
- fileInfo.executionEnvironment.pythonVersion < pythonVersion_1.PythonVersion.V3_13 &&
8705
+ fileInfo.executionEnvironment.pythonVersion.isLessThan(pythonVersion_1.pythonVersion3_13) &&
8700
8706
  classType.details.moduleName !== 'typing_extensions') {
8701
8707
  addError(localize_1.LocMessage.typeVarDefaultIllegal(), defaultValueNode);
8702
8708
  }
@@ -8796,7 +8802,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
8796
8802
  }
8797
8803
  const fileInfo = AnalyzerNodeInfo.getFileInfo(errorNode);
8798
8804
  if (!fileInfo.isStubFile &&
8799
- fileInfo.executionEnvironment.pythonVersion < pythonVersion_1.PythonVersion.V3_13 &&
8805
+ fileInfo.executionEnvironment.pythonVersion.isLessThan(pythonVersion_1.pythonVersion3_13) &&
8800
8806
  classType.details.moduleName !== 'typing_extensions') {
8801
8807
  addError(localize_1.LocMessage.typeVarDefaultIllegal(), expr);
8802
8808
  }
@@ -8855,7 +8861,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
8855
8861
  }
8856
8862
  const fileInfo = AnalyzerNodeInfo.getFileInfo(errorNode);
8857
8863
  if (!fileInfo.isStubFile &&
8858
- fileInfo.executionEnvironment.pythonVersion < pythonVersion_1.PythonVersion.V3_13 &&
8864
+ fileInfo.executionEnvironment.pythonVersion.isLessThan(pythonVersion_1.pythonVersion3_13) &&
8859
8865
  classType.details.moduleName !== 'typing_extensions') {
8860
8866
  addError(localize_1.LocMessage.typeVarDefaultIllegal(), expr);
8861
8867
  }
@@ -9114,6 +9120,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9114
9120
  });
9115
9121
  types_1.FunctionType.addDefaultParameters(newType);
9116
9122
  newType.details.declaredReturnType = types_1.ClassType.cloneAsInstance(classType);
9123
+ newType.details.constructorTypeVarScopeId = classType.details.typeVarScopeId;
9117
9124
  classType.details.fields.set('__new__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, newType));
9118
9125
  }
9119
9126
  return classType;
@@ -9420,7 +9427,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9420
9427
  let isIncomplete = false;
9421
9428
  // Infer the key and value types if possible.
9422
9429
  node.entries.forEach((entryNode, index) => {
9423
- var _a;
9430
+ var _a, _b, _c, _d;
9424
9431
  let addUnknown = true;
9425
9432
  if (entryNode.nodeType === 17 /* ParseNodeType.DictionaryKeyEntry */) {
9426
9433
  const keyTypeResult = getTypeOfExpression(entryNode.keyExpression,
@@ -9467,6 +9474,15 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9467
9474
  isIncomplete = true;
9468
9475
  }
9469
9476
  if (forceStrictInference || index < maxEntriesToUseForInference) {
9477
+ // If an existing key has the same literal type, delete the previous
9478
+ // key since we're overwriting it here.
9479
+ if ((0, types_1.isClass)(keyType) && (0, typeUtils_1.isLiteralType)(keyType)) {
9480
+ const existingIndex = keyTypes.findIndex((kt) => (0, types_1.isTypeSame)(keyType, kt.type));
9481
+ if (existingIndex >= 0) {
9482
+ keyTypes.splice(existingIndex, 1);
9483
+ valueTypes.splice(existingIndex, 1);
9484
+ }
9485
+ }
9470
9486
  keyTypes.push({ node: entryNode.keyExpression, type: keyType });
9471
9487
  valueTypes.push({ node: entryNode.valueExpression, type: valueType });
9472
9488
  }
@@ -9504,10 +9520,20 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9504
9520
  /* allowNarrowed */ true);
9505
9521
  tdEntries.knownItems.forEach((entry, name) => {
9506
9522
  if (entry.isRequired || entry.isProvided) {
9507
- keyTypes.push({ node: entryNode, type: types_1.ClassType.cloneWithLiteral(strObject, name) });
9523
+ keyTypes.push({
9524
+ node: entryNode,
9525
+ type: types_1.ClassType.cloneWithLiteral(strObject, name),
9526
+ });
9508
9527
  valueTypes.push({ node: entryNode, type: entry.valueType });
9509
9528
  }
9510
9529
  });
9530
+ if (!expectedTypedDictEntries) {
9531
+ keyTypes.push({ node: entryNode, type: types_1.ClassType.cloneAsInstance(strObject) });
9532
+ valueTypes.push({
9533
+ node: entryNode,
9534
+ type: (_c = (_b = (_a = tdEntries.extraItems) === null || _a === void 0 ? void 0 : _a.valueType) !== null && _b !== void 0 ? _b : objectType) !== null && _c !== void 0 ? _c : types_1.UnknownType.create(),
9535
+ });
9536
+ }
9511
9537
  addUnknown = false;
9512
9538
  }
9513
9539
  }
@@ -9541,7 +9567,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9541
9567
  }
9542
9568
  // The result should be a tuple.
9543
9569
  if ((0, types_1.isClassInstance)(dictEntryType) && (0, typeUtils_1.isTupleClass)(dictEntryType)) {
9544
- const typeArgs = (_a = dictEntryType.tupleTypeArguments) === null || _a === void 0 ? void 0 : _a.map((t) => t.type);
9570
+ const typeArgs = (_d = dictEntryType.tupleTypeArguments) === null || _d === void 0 ? void 0 : _d.map((t) => t.type);
9545
9571
  if (typeArgs && typeArgs.length === 2) {
9546
9572
  if (forceStrictInference || index < maxEntriesToUseForInference) {
9547
9573
  keyTypes.push({ node: entryNode, type: typeArgs[0] });
@@ -9755,7 +9781,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
9755
9781
  }
9756
9782
  function inferTypeArgFromExpectedEntryType(inferenceContext, entryTypes, isNarrowable) {
9757
9783
  // If the expected type is Any, the resulting type becomes Any.
9758
- if ((0, types_1.isAnyOrUnknown)(inferenceContext.expectedType)) {
9784
+ if ((0, types_1.isAny)(inferenceContext.expectedType)) {
9759
9785
  return inferenceContext.expectedType;
9760
9786
  }
9761
9787
  const typeVarContext = new typeVarContext_1.TypeVarContext((0, typeUtils_1.getTypeVarScopeId)(inferenceContext.expectedType));
@@ -11552,7 +11578,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
11552
11578
  if (types_1.ClassType.isBuiltIn(argType, 'Protocol')) {
11553
11579
  if (!fileInfo.isStubFile &&
11554
11580
  !types_1.ClassType.isTypingExtensionClass(argType) &&
11555
- fileInfo.executionEnvironment.pythonVersion < pythonVersion_1.PythonVersion.V3_7) {
11581
+ fileInfo.executionEnvironment.pythonVersion.isLessThan(pythonVersion_1.pythonVersion3_7)) {
11556
11582
  addError(localize_1.LocMessage.protocolIllegal(), arg.valueExpression);
11557
11583
  }
11558
11584
  classType.details.flags |= 16384 /* ClassTypeFlags.ProtocolClass */;
@@ -11562,7 +11588,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
11562
11588
  }
11563
11589
  // If the class directly derives from NamedTuple (in Python 3.6 or
11564
11590
  // newer), it's considered a (read-only) dataclass.
11565
- if (fileInfo.executionEnvironment.pythonVersion >= pythonVersion_1.PythonVersion.V3_6) {
11591
+ if (fileInfo.executionEnvironment.pythonVersion.isGreaterOrEqualTo(pythonVersion_1.pythonVersion3_6)) {
11566
11592
  if (types_1.ClassType.isBuiltIn(argType, 'NamedTuple')) {
11567
11593
  classType.details.flags |=
11568
11594
  4 /* ClassTypeFlags.DataClass */ |
@@ -12249,7 +12275,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
12249
12275
  const paramInfo = paramListDetails.params[paramIndex];
12250
12276
  const argParam = {
12251
12277
  paramCategory: paramInfo.param.category,
12252
- paramType: types_1.FunctionType.getEffectiveParameterType(newMethodType, paramInfo.index),
12278
+ paramType: paramInfo.type,
12253
12279
  requiresTypeVarMatching: false,
12254
12280
  argument: arg,
12255
12281
  errorNode: (_b = arg.valueExpression) !== null && _b !== void 0 ? _b : errorNode,
@@ -12526,6 +12552,9 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
12526
12552
  else {
12527
12553
  annotatedType = getTypeOfParameterAnnotation(paramTypeNode, param.category);
12528
12554
  }
12555
+ if (annotatedType) {
12556
+ (0, typeUtils_1.addTypeVarsToListIfUnique)(typeParametersSeen, (0, typeUtils_1.getTypeVarArgumentsRecursive)(annotatedType), functionType.details.typeVarScopeId);
12557
+ }
12529
12558
  if ((0, types_1.isVariadicTypeVar)(annotatedType) && !annotatedType.isVariadicUnpacked) {
12530
12559
  addError(localize_1.LocMessage.unpackedTypeVarTupleExpected().format({
12531
12560
  name1: annotatedType.details.name,
@@ -12631,7 +12660,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
12631
12660
  };
12632
12661
  types_1.FunctionType.addParameter(functionType, functionParam);
12633
12662
  if (functionParam.hasDeclaredType) {
12634
- (0, typeUtils_1.addTypeVarsToListIfUnique)(typeParametersSeen, (0, typeUtils_1.getTypeVarArgumentsRecursive)(functionParam.type));
12663
+ (0, typeUtils_1.addTypeVarsToListIfUnique)(typeParametersSeen, (0, typeUtils_1.getTypeVarArgumentsRecursive)(functionParam.type), functionType.details.typeVarScopeId);
12635
12664
  }
12636
12665
  if (param.name) {
12637
12666
  const variadicParamType = transformVariadicParamType(node, param.category, functionParam.type);
@@ -12741,17 +12770,12 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
12741
12770
  // Callable, these type variables are "rescoped" from the function to
12742
12771
  // the Callable.
12743
12772
  function rescopeTypeVarsForCallableReturnType(returnType, functionType, typeParametersSeen) {
12744
- const typeVarsInReturnType = (0, typeUtils_1.getTypeVarArgumentsRecursive)(returnType);
12773
+ const typeVarsInReturnType = (0, typeUtils_1.getTypeVarArgumentsRecursive)(returnType).filter((t) => t.scopeId === functionType.details.typeVarScopeId);
12745
12774
  const rescopedTypeVars = [];
12746
12775
  typeVarsInReturnType.forEach((typeVar) => {
12747
12776
  if (types_1.TypeBase.isInstantiable(typeVar)) {
12748
12777
  typeVar = types_1.TypeVarType.cloneAsInstance(typeVar);
12749
12778
  }
12750
- // If this type variable isn't scoped to this function, it is probably
12751
- // associated with an outer scope.
12752
- if (typeVar.scopeId !== functionType.details.typeVarScopeId) {
12753
- return;
12754
- }
12755
12779
  // If this type variable was already seen in one or more input parameters,
12756
12780
  // don't attempt to rescope it.
12757
12781
  if (typeParametersSeen.some((tp) => (0, types_1.isTypeSame)((0, typeUtils_1.convertToInstance)(tp), typeVar))) {
@@ -13349,7 +13373,8 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
13349
13373
  reportError = true;
13350
13374
  // Handle PEP 562 support for module-level __getattr__ function,
13351
13375
  // introduced in Python 3.7.
13352
- if (fileInfo.executionEnvironment.pythonVersion >= pythonVersion_1.PythonVersion.V3_7 || fileInfo.isStubFile) {
13376
+ if (fileInfo.executionEnvironment.pythonVersion.isGreaterOrEqualTo(pythonVersion_1.pythonVersion3_7) ||
13377
+ fileInfo.isStubFile) {
13353
13378
  const getAttrSymbol = importLookupInfo.symbolTable.get('__getattr__');
13354
13379
  if (getAttrSymbol) {
13355
13380
  const getAttrType = getEffectiveTypeOfSymbol(getAttrSymbol);
@@ -14155,7 +14180,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
14155
14180
  }
14156
14181
  const fileInfo = AnalyzerNodeInfo.getFileInfo(errorNode);
14157
14182
  if (fileInfo.isStubFile ||
14158
- fileInfo.executionEnvironment.pythonVersion >= pythonVersion_1.PythonVersion.V3_9 ||
14183
+ fileInfo.executionEnvironment.pythonVersion.isGreaterOrEqualTo(pythonVersion_1.pythonVersion3_9) ||
14159
14184
  (0, analyzerFileInfo_1.isAnnotationEvaluationPostponed)(AnalyzerNodeInfo.getFileInfo(errorNode)) ||
14160
14185
  (flags & 4 /* EvaluatorFlags.AllowForwardReferences */) !== 0) {
14161
14186
  // Handle "type" specially, since it needs to act like "Type"