@zzzen/pyright-internal 1.2.0-dev.20260607 → 1.2.0-dev.20260621

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 (299) hide show
  1. package/dist/analyzer/analysis.js +17 -7
  2. package/dist/analyzer/analysis.js.map +1 -1
  3. package/dist/analyzer/analyzerNodeInfo.d.ts +11 -0
  4. package/dist/analyzer/binder.js +31 -8
  5. package/dist/analyzer/binder.js.map +1 -1
  6. package/dist/analyzer/checker.js +23 -8
  7. package/dist/analyzer/checker.js.map +1 -1
  8. package/dist/analyzer/dataClasses.js +19 -8
  9. package/dist/analyzer/dataClasses.js.map +1 -1
  10. package/dist/analyzer/declaration.d.ts +1 -0
  11. package/dist/analyzer/declaration.js.map +1 -1
  12. package/dist/analyzer/importResolver.d.ts +1 -0
  13. package/dist/analyzer/importResolver.js +38 -8
  14. package/dist/analyzer/importResolver.js.map +1 -1
  15. package/dist/analyzer/importStatementUtils.js +17 -7
  16. package/dist/analyzer/importStatementUtils.js.map +1 -1
  17. package/dist/analyzer/namedTuples.js +17 -7
  18. package/dist/analyzer/namedTuples.js.map +1 -1
  19. package/dist/analyzer/parseTreeCleaner.js +17 -7
  20. package/dist/analyzer/parseTreeCleaner.js.map +1 -1
  21. package/dist/analyzer/parseTreeUtils.js +19 -9
  22. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  23. package/dist/analyzer/parseTreeWalker.js +17 -7
  24. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  25. package/dist/analyzer/program.d.ts +1 -0
  26. package/dist/analyzer/program.js +38 -7
  27. package/dist/analyzer/program.js.map +1 -1
  28. package/dist/analyzer/pythonPathUtils.js +33 -7
  29. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  30. package/dist/analyzer/service.js +43 -11
  31. package/dist/analyzer/service.js.map +1 -1
  32. package/dist/analyzer/sourceEnumerator.js +6 -0
  33. package/dist/analyzer/sourceEnumerator.js.map +1 -1
  34. package/dist/analyzer/sourceFile.d.ts +1 -0
  35. package/dist/analyzer/sourceFile.js +25 -7
  36. package/dist/analyzer/sourceFile.js.map +1 -1
  37. package/dist/analyzer/sourceMapper.d.ts +11 -1
  38. package/dist/analyzer/sourceMapper.js +220 -19
  39. package/dist/analyzer/sourceMapper.js.map +1 -1
  40. package/dist/analyzer/staticExpressions.js +2 -2
  41. package/dist/analyzer/tracePrinter.js +17 -7
  42. package/dist/analyzer/tracePrinter.js.map +1 -1
  43. package/dist/analyzer/typeCacheUtils.js +17 -7
  44. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  45. package/dist/analyzer/typeDocStringUtils.d.ts +8 -0
  46. package/dist/analyzer/typeDocStringUtils.js +101 -27
  47. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  48. package/dist/analyzer/typeEvaluator.js +69 -28
  49. package/dist/analyzer/typeEvaluator.js.map +1 -1
  50. package/dist/analyzer/typeGuards.js +19 -9
  51. package/dist/analyzer/typeGuards.js.map +1 -1
  52. package/dist/analyzer/typePrinter.js +50 -8
  53. package/dist/analyzer/typePrinter.js.map +1 -1
  54. package/dist/analyzer/typeStubWriter.js +17 -7
  55. package/dist/analyzer/typeStubWriter.js.map +1 -1
  56. package/dist/analyzer/typeUtils.d.ts +1 -0
  57. package/dist/analyzer/typeUtils.js +9 -0
  58. package/dist/analyzer/typeUtils.js.map +1 -1
  59. package/dist/analyzer/typeWalker.js +1 -1
  60. package/dist/analyzer/typeWalker.js.map +1 -1
  61. package/dist/analyzer/typedDicts.js +19 -9
  62. package/dist/analyzer/typedDicts.js.map +1 -1
  63. package/dist/analyzer/typeshedInfoProvider.js +17 -7
  64. package/dist/analyzer/typeshedInfoProvider.js.map +1 -1
  65. package/dist/backgroundAnalysisBase.js +17 -7
  66. package/dist/backgroundAnalysisBase.js.map +1 -1
  67. package/dist/backgroundThreadBase.js +17 -7
  68. package/dist/backgroundThreadBase.js.map +1 -1
  69. package/dist/common/chokidarFileWatcherProvider.js +17 -7
  70. package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
  71. package/dist/common/configOptions.js +17 -7
  72. package/dist/common/configOptions.js.map +1 -1
  73. package/dist/common/console.js +17 -7
  74. package/dist/common/console.js.map +1 -1
  75. package/dist/common/envVarUtils.js +17 -7
  76. package/dist/common/envVarUtils.js.map +1 -1
  77. package/dist/common/extensibility.d.ts +2 -0
  78. package/dist/common/extensibility.js.map +1 -1
  79. package/dist/common/fileBasedCancellationUtils.js +17 -7
  80. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  81. package/dist/common/fullAccessHost.d.ts +2 -1
  82. package/dist/common/fullAccessHost.js +26 -7
  83. package/dist/common/fullAccessHost.js.map +1 -1
  84. package/dist/common/host.d.ts +31 -0
  85. package/dist/common/host.js +3 -0
  86. package/dist/common/host.js.map +1 -1
  87. package/dist/common/languageInfoUtils.js +12 -12
  88. package/dist/common/memUtils.js +18 -7
  89. package/dist/common/memUtils.js.map +1 -1
  90. package/dist/common/pathUtils.js +17 -7
  91. package/dist/common/pathUtils.js.map +1 -1
  92. package/dist/common/positionUtils.js +19 -0
  93. package/dist/common/positionUtils.js.map +1 -1
  94. package/dist/common/processUtils.js +17 -7
  95. package/dist/common/processUtils.js.map +1 -1
  96. package/dist/common/realFileSystem.js +19 -19
  97. package/dist/common/realFileSystem.js.map +1 -1
  98. package/dist/common/serviceProvider.js +17 -7
  99. package/dist/common/serviceProvider.js.map +1 -1
  100. package/dist/common/streamUtils.d.ts +1 -1
  101. package/dist/common/textEditTracker.d.ts +1 -0
  102. package/dist/common/textEditTracker.js +31 -12
  103. package/dist/common/textEditTracker.js.map +1 -1
  104. package/dist/common/uri/uriMap.d.ts +4 -4
  105. package/dist/common/uri/uriMap.js +1 -0
  106. package/dist/common/uri/uriMap.js.map +1 -1
  107. package/dist/common/workspaceEditUtils.d.ts +1 -0
  108. package/dist/common/workspaceEditUtils.js +10 -0
  109. package/dist/common/workspaceEditUtils.js.map +1 -1
  110. package/dist/languageServerBase.js +13 -3
  111. package/dist/languageServerBase.js.map +1 -1
  112. package/dist/languageService/autoImporter.js +17 -7
  113. package/dist/languageService/autoImporter.js.map +1 -1
  114. package/dist/languageService/callHierarchyProvider.js +17 -7
  115. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  116. package/dist/languageService/completionProvider.d.ts +5 -2
  117. package/dist/languageService/completionProvider.js +125 -19
  118. package/dist/languageService/completionProvider.js.map +1 -1
  119. package/dist/languageService/completionProviderUtils.d.ts +16 -0
  120. package/dist/languageService/completionProviderUtils.js +42 -0
  121. package/dist/languageService/completionProviderUtils.js.map +1 -1
  122. package/dist/languageService/definitionProvider.d.ts +1 -1
  123. package/dist/languageService/definitionProvider.js +69 -10
  124. package/dist/languageService/definitionProvider.js.map +1 -1
  125. package/dist/languageService/documentHighlightProvider.js +17 -7
  126. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  127. package/dist/languageService/documentSymbolCollector.d.ts +4 -0
  128. package/dist/languageService/documentSymbolCollector.js +73 -9
  129. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  130. package/dist/languageService/hoverProvider.d.ts +1 -1
  131. package/dist/languageService/hoverProvider.js +76 -23
  132. package/dist/languageService/hoverProvider.js.map +1 -1
  133. package/dist/languageService/referencesProvider.js +17 -7
  134. package/dist/languageService/referencesProvider.js.map +1 -1
  135. package/dist/languageService/signatureHelpProvider.js +54 -16
  136. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  137. package/dist/languageService/symbolIndexer.js +17 -7
  138. package/dist/languageService/symbolIndexer.js.map +1 -1
  139. package/dist/languageService/tooltipUtils.d.ts +11 -0
  140. package/dist/languageService/tooltipUtils.js +67 -33
  141. package/dist/languageService/tooltipUtils.js.map +1 -1
  142. package/dist/languageService/workspaceSymbolProvider.js +17 -7
  143. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  144. package/dist/localization/localize.d.ts +2 -0
  145. package/dist/localization/localize.js +2 -0
  146. package/dist/localization/localize.js.map +1 -1
  147. package/dist/localization/package.nls.en-us.json +2 -0
  148. package/dist/parser/characters.js +17 -7
  149. package/dist/parser/characters.js.map +1 -1
  150. package/dist/parser/parseNodes.d.ts +4 -0
  151. package/dist/parser/parseNodes.js.map +1 -1
  152. package/dist/parser/parser.d.ts +1 -0
  153. package/dist/parser/parser.js +82 -38
  154. package/dist/parser/parser.js.map +1 -1
  155. package/dist/parser/stringTokenUtils.js +23 -7
  156. package/dist/parser/stringTokenUtils.js.map +1 -1
  157. package/dist/parser/tokenizer.js +16 -15
  158. package/dist/parser/tokenizer.js.map +1 -1
  159. package/dist/parser/tokenizerTypes.d.ts +15 -14
  160. package/dist/parser/tokenizerTypes.js +22 -15
  161. package/dist/parser/tokenizerTypes.js.map +1 -1
  162. package/dist/pyright.js +17 -7
  163. package/dist/pyright.js.map +1 -1
  164. package/dist/server.js +1 -1
  165. package/dist/server.js.map +1 -1
  166. package/dist/tests/benchmarks/parserBenchmark.test.js +17 -7
  167. package/dist/tests/benchmarks/parserBenchmark.test.js.map +1 -1
  168. package/dist/tests/benchmarks/tokenizerBenchmark.test.js +17 -7
  169. package/dist/tests/benchmarks/tokenizerBenchmark.test.js.map +1 -1
  170. package/dist/tests/chainedSourceFiles.test.js +17 -7
  171. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  172. package/dist/tests/checker.test.js +17 -7
  173. package/dist/tests/checker.test.js.map +1 -1
  174. package/dist/tests/collectionUtils.test.js +17 -7
  175. package/dist/tests/collectionUtils.test.js.map +1 -1
  176. package/dist/tests/common.test.js +17 -7
  177. package/dist/tests/common.test.js.map +1 -1
  178. package/dist/tests/completionProviderUtils.test.d.ts +1 -0
  179. package/dist/tests/completionProviderUtils.test.js +56 -0
  180. package/dist/tests/completionProviderUtils.test.js.map +1 -0
  181. package/dist/tests/config.test.js +69 -0
  182. package/dist/tests/config.test.js.map +1 -1
  183. package/dist/tests/debug.test.js +17 -7
  184. package/dist/tests/debug.test.js.map +1 -1
  185. package/dist/tests/deferred.test.js +18 -8
  186. package/dist/tests/deferred.test.js.map +1 -1
  187. package/dist/tests/diagnosticOverrides.test.js +17 -7
  188. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  189. package/dist/tests/diagnostics.test.js +35 -0
  190. package/dist/tests/diagnostics.test.js.map +1 -1
  191. package/dist/tests/envVarUtils.test.js +17 -7
  192. package/dist/tests/envVarUtils.test.js.map +1 -1
  193. package/dist/tests/filesystem.test.js +17 -7
  194. package/dist/tests/filesystem.test.js.map +1 -1
  195. package/dist/tests/fourSlashParser.test.js +17 -7
  196. package/dist/tests/fourSlashParser.test.js.map +1 -1
  197. package/dist/tests/fourSlashRunner.test.js +17 -7
  198. package/dist/tests/fourSlashRunner.test.js.map +1 -1
  199. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js +1 -1
  200. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js.map +1 -1
  201. package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js +20 -0
  202. package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js.map +1 -1
  203. package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.d.ts +1 -0
  204. package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.js +61 -0
  205. package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.js.map +1 -0
  206. package/dist/tests/fourslash/signature.complicated.fourslash.js +1 -5
  207. package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
  208. package/dist/tests/fourslash/signature.posonly.fourslash.d.ts +1 -0
  209. package/dist/tests/fourslash/signature.posonly.fourslash.js +58 -0
  210. package/dist/tests/fourslash/signature.posonly.fourslash.js.map +1 -0
  211. package/dist/tests/harness/fourslash/fourSlashTypes.js +17 -7
  212. package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
  213. package/dist/tests/harness/fourslash/runner.js +17 -7
  214. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  215. package/dist/tests/harness/fourslash/testLanguageService.js +17 -7
  216. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  217. package/dist/tests/harness/fourslash/testState.Consts.js +17 -7
  218. package/dist/tests/harness/fourslash/testState.Consts.js.map +1 -1
  219. package/dist/tests/harness/fourslash/testState.js +17 -7
  220. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  221. package/dist/tests/harness/fourslash/testStateUtils.js +17 -7
  222. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  223. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +17 -7
  224. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  225. package/dist/tests/harness/testHost.js +17 -7
  226. package/dist/tests/harness/testHost.js.map +1 -1
  227. package/dist/tests/harness/utils.d.ts +4 -4
  228. package/dist/tests/harness/utils.js.map +1 -1
  229. package/dist/tests/harness/vfs/factory.js +17 -7
  230. package/dist/tests/harness/vfs/factory.js.map +1 -1
  231. package/dist/tests/harness/vfs/filesystem.js +19 -11
  232. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  233. package/dist/tests/harness/vfs/pathValidation.js +17 -7
  234. package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
  235. package/dist/tests/importResolver.test.js +104 -0
  236. package/dist/tests/importResolver.test.js.map +1 -1
  237. package/dist/tests/languageServer.test.js +91 -0
  238. package/dist/tests/languageServer.test.js.map +1 -1
  239. package/dist/tests/localizer.test.js +17 -7
  240. package/dist/tests/localizer.test.js.map +1 -1
  241. package/dist/tests/logger.test.js +17 -7
  242. package/dist/tests/logger.test.js.map +1 -1
  243. package/dist/tests/lsp/languageServer.js +17 -7
  244. package/dist/tests/lsp/languageServer.js.map +1 -1
  245. package/dist/tests/lsp/languageServerTestUtils.d.ts +0 -4
  246. package/dist/tests/lsp/languageServerTestUtils.js +76 -21
  247. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
  248. package/dist/tests/parser.test.js +246 -7
  249. package/dist/tests/parser.test.js.map +1 -1
  250. package/dist/tests/pathUtils.test.js +17 -7
  251. package/dist/tests/pathUtils.test.js.map +1 -1
  252. package/dist/tests/positionUtils.test.js +26 -0
  253. package/dist/tests/positionUtils.test.js.map +1 -1
  254. package/dist/tests/realTempFile.test.js +17 -7
  255. package/dist/tests/realTempFile.test.js.map +1 -1
  256. package/dist/tests/sourceFile.test.js +17 -7
  257. package/dist/tests/sourceFile.test.js.map +1 -1
  258. package/dist/tests/sourceMapperUtils.test.js +192 -0
  259. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  260. package/dist/tests/stringUtils.test.js +17 -7
  261. package/dist/tests/stringUtils.test.js.map +1 -1
  262. package/dist/tests/symbolNameUtils.test.js +17 -7
  263. package/dist/tests/symbolNameUtils.test.js.map +1 -1
  264. package/dist/tests/testState.test.js +17 -7
  265. package/dist/tests/testState.test.js.map +1 -1
  266. package/dist/tests/testUtils.js +17 -7
  267. package/dist/tests/testUtils.js.map +1 -1
  268. package/dist/tests/textRange.test.js +17 -7
  269. package/dist/tests/textRange.test.js.map +1 -1
  270. package/dist/tests/tokenizer.test.js +17 -7
  271. package/dist/tests/tokenizer.test.js.map +1 -1
  272. package/dist/tests/typeEvaluator1.test.js +17 -7
  273. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  274. package/dist/tests/typeEvaluator2.test.js +17 -7
  275. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  276. package/dist/tests/typeEvaluator3.test.js +23 -7
  277. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  278. package/dist/tests/typeEvaluator4.test.js +23 -7
  279. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  280. package/dist/tests/typeEvaluator5.test.js +17 -7
  281. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  282. package/dist/tests/typeEvaluator6.test.js +17 -7
  283. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  284. package/dist/tests/typeEvaluator7.test.js +17 -7
  285. package/dist/tests/typeEvaluator7.test.js.map +1 -1
  286. package/dist/tests/typeEvaluator8.test.js +17 -7
  287. package/dist/tests/typeEvaluator8.test.js.map +1 -1
  288. package/dist/tests/typePrinter.test.js +82 -7
  289. package/dist/tests/typePrinter.test.js.map +1 -1
  290. package/dist/tests/uri.test.js +17 -7
  291. package/dist/tests/uri.test.js.map +1 -1
  292. package/dist/tests/workspaceEditUtils.test.js +48 -7
  293. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  294. package/dist/tests/zipfs.test.js +17 -7
  295. package/dist/tests/zipfs.test.js.map +1 -1
  296. package/package.json +9 -9
  297. package/dist/tests/lsp/rspack.testserver.config.d.ts +0 -63
  298. package/dist/tests/lsp/rspack.testserver.config.js +0 -60
  299. package/dist/tests/lsp/rspack.testserver.config.js.map +0 -1
@@ -24,17 +24,28 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
24
24
  }) : function(o, v) {
25
25
  o["default"] = v;
26
26
  });
27
- var __importStar = (this && this.__importStar) || function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
27
+ var __importStar = (this && this.__importStar) || (function () {
28
+ var ownKeys = function(o) {
29
+ ownKeys = Object.getOwnPropertyNames || function (o) {
30
+ var ar = [];
31
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
32
+ return ar;
33
+ };
34
+ return ownKeys(o);
35
+ };
36
+ return function (mod) {
37
+ if (mod && mod.__esModule) return mod;
38
+ var result = {};
39
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
40
+ __setModuleDefault(result, mod);
41
+ return result;
42
+ };
43
+ })();
34
44
  Object.defineProperty(exports, "__esModule", { value: true });
35
45
  exports.DefaultClassIteratorFlagsForFunctions = void 0;
36
46
  exports.isInheritedFromBuiltin = isInheritedFromBuiltin;
37
47
  exports.getFunctionDocStringInherited = getFunctionDocStringInherited;
48
+ exports.getFunctionDocStringInheritedInfo = getFunctionDocStringInheritedInfo;
38
49
  exports.getOverloadedDocStringsInherited = getOverloadedDocStringsInherited;
39
50
  exports.getPropertyDocStringInherited = getPropertyDocStringInherited;
40
51
  exports.getVariableInStubFileDocStrings = getVariableInStubFileDocStrings;
@@ -46,6 +57,7 @@ exports.getClassDocString = getClassDocString;
46
57
  exports.getFunctionOrClassDeclDocString = getFunctionOrClassDeclDocString;
47
58
  exports.getVariableDocString = getVariableDocString;
48
59
  exports.getOverloadedDocStrings = getOverloadedDocStrings;
60
+ exports.getFunctionDocStringFromDeclarationInfo = getFunctionDocStringFromDeclarationInfo;
49
61
  const declaration_1 = require("../analyzer/declaration");
50
62
  const ParseTreeUtils = __importStar(require("../analyzer/parseTreeUtils"));
51
63
  const sourceMapper_1 = require("../analyzer/sourceMapper");
@@ -72,15 +84,18 @@ function isInheritedFromBuiltin(type, classType) {
72
84
  !types_1.ClassType.isBuiltIn(type.priv.boundToType));
73
85
  }
74
86
  function getFunctionDocStringInherited(type, resolvedDecl, sourceMapper, classType) {
75
- let docString;
87
+ return getFunctionDocStringInheritedInfo(type, resolvedDecl, sourceMapper, classType)?.docString;
88
+ }
89
+ function getFunctionDocStringInheritedInfo(type, resolvedDecl, sourceMapper, classType) {
90
+ let docInfo;
76
91
  // Don't allow docs to be inherited from the builtins to other classes;
77
92
  // they typically not helpful (and object's __init__ doc causes issues
78
93
  // with our current docstring traversal).
79
94
  if (!isInheritedFromBuiltin(type, classType) && resolvedDecl && (0, declaration_1.isFunctionDeclaration)(resolvedDecl)) {
80
- docString = _getFunctionDocString(type, resolvedDecl, sourceMapper);
95
+ docInfo = _getFunctionDocStringInfo(type, resolvedDecl, sourceMapper);
81
96
  }
82
97
  // Search mro
83
- if (!docString && classType) {
98
+ if (!docInfo?.docString && classType) {
84
99
  const funcName = type.shared.name;
85
100
  const memberIterator = (0, typeUtils_1.getClassMemberIterator)(classType, funcName, exports.DefaultClassIteratorFlagsForFunctions);
86
101
  for (const classMember of memberIterator) {
@@ -88,15 +103,26 @@ function getFunctionDocStringInherited(type, resolvedDecl, sourceMapper, classTy
88
103
  if (decls.length > 0) {
89
104
  const inheritedDecl = classMember.symbol.getDeclarations().slice(-1)[0];
90
105
  if ((0, declaration_1.isFunctionDeclaration)(inheritedDecl)) {
91
- docString = _getFunctionDocStringFromDeclaration(inheritedDecl, sourceMapper);
92
- if (docString) {
106
+ docInfo = _getFunctionDocStringFromDeclarationInfo(inheritedDecl, sourceMapper);
107
+ if (docInfo?.docString) {
93
108
  break;
94
109
  }
95
110
  }
96
111
  }
97
112
  }
98
113
  }
99
- return docString || type.shared.docString;
114
+ if (docInfo?.docString) {
115
+ return docInfo;
116
+ }
117
+ if (!type.shared.docString) {
118
+ return undefined;
119
+ }
120
+ return {
121
+ docString: type.shared.docString,
122
+ sourceDecl: type.shared.declaration && (0, declaration_1.isFunctionDeclaration)(type.shared.declaration)
123
+ ? type.shared.declaration
124
+ : undefined,
125
+ };
100
126
  }
101
127
  function getOverloadedDocStringsInherited(type, resolvedDecls, sourceMapper, evaluator, classType) {
102
128
  let docStrings;
@@ -249,6 +275,25 @@ function getOverloadedDocStrings(type, resolvedDecl, sourceMapper) {
249
275
  if (impl && (0, types_1.isFunction)(impl) && impl.shared.docString) {
250
276
  docStrings.push(impl.shared.docString);
251
277
  }
278
+ // Fallback: try to extract docstrings from per-overload declarations.
279
+ // This handles cases where overloads are specialized (e.g. via a Callable[P, T]
280
+ // decorator) and shared.docString was not propagated to the specialized types.
281
+ if (docStrings.length === 0) {
282
+ for (const overload of overloads) {
283
+ if (overload.shared.declaration) {
284
+ const declDocString = _getFunctionDocStringFromDeclaration(overload.shared.declaration, sourceMapper);
285
+ if (declDocString) {
286
+ docStrings.push(declDocString);
287
+ }
288
+ }
289
+ }
290
+ if (docStrings.length === 0 && impl && (0, types_1.isFunction)(impl) && impl.shared.declaration) {
291
+ const declDocString = _getFunctionDocStringFromDeclaration(impl.shared.declaration, sourceMapper);
292
+ if (declDocString) {
293
+ docStrings.push(declDocString);
294
+ }
295
+ }
296
+ }
252
297
  if (docStrings.length === 0 &&
253
298
  resolvedDecl &&
254
299
  (0, sourceMapper_1.isStubFile)(resolvedDecl.uri) &&
@@ -298,32 +343,61 @@ function _getPropertyDocStringInherited(decl, sourceMapper, evaluator, classType
298
343
  }
299
344
  return;
300
345
  }
301
- function _getFunctionDocString(type, resolvedDecl, sourceMapper) {
346
+ function _getFunctionDocStringFromDeclaration(resolvedDecl, sourceMapper) {
347
+ return _getFunctionDocStringFromDeclarationInfo(resolvedDecl, sourceMapper)?.docString;
348
+ }
349
+ function getFunctionDocStringFromDeclarationInfo(resolvedDecl, sourceMapper) {
350
+ return _getFunctionDocStringFromDeclarationInfo(resolvedDecl, sourceMapper);
351
+ }
352
+ function _getFunctionDocStringInfo(type, resolvedDecl, sourceMapper) {
302
353
  if (!(0, types_1.isFunction)(type)) {
303
354
  return undefined;
304
355
  }
305
- let docString = type.shared.docString;
306
- if (!docString && resolvedDecl) {
307
- docString = _getFunctionDocStringFromDeclaration(resolvedDecl, sourceMapper);
356
+ if (type.shared.docString) {
357
+ return {
358
+ docString: type.shared.docString,
359
+ sourceDecl: type.shared.declaration && (0, declaration_1.isFunctionDeclaration)(type.shared.declaration)
360
+ ? type.shared.declaration
361
+ : resolvedDecl,
362
+ };
363
+ }
364
+ if (resolvedDecl) {
365
+ const docInfo = _getFunctionDocStringFromDeclarationInfo(resolvedDecl, sourceMapper);
366
+ if (docInfo) {
367
+ return docInfo;
368
+ }
308
369
  }
309
- if (!docString && type.shared.declaration) {
310
- docString = _getFunctionDocStringFromDeclaration(type.shared.declaration, sourceMapper);
370
+ if (type.shared.declaration) {
371
+ return _getFunctionDocStringFromDeclarationInfo(type.shared.declaration, sourceMapper);
311
372
  }
312
- return docString;
373
+ return undefined;
313
374
  }
314
- function _getFunctionDocStringFromDeclaration(resolvedDecl, sourceMapper) {
315
- let docString = _getFunctionOrClassDeclsDocString([resolvedDecl]);
316
- if (!docString && (0, sourceMapper_1.isStubFile)(resolvedDecl.uri)) {
317
- const implDecls = sourceMapper.findFunctionDeclarations(resolvedDecl);
318
- docString = _getFunctionOrClassDeclsDocString(implDecls);
375
+ function _getFunctionDocStringFromDeclarationInfo(resolvedDecl, sourceMapper) {
376
+ const docInfo = _getFunctionOrClassDeclsDocStringInfo([resolvedDecl]);
377
+ if (docInfo) {
378
+ return docInfo;
319
379
  }
320
- return docString;
380
+ if (!(0, sourceMapper_1.isStubFile)(resolvedDecl.uri)) {
381
+ return undefined;
382
+ }
383
+ const implDocInfo = _getFunctionOrClassDeclsDocStringInfo(sourceMapper.findFunctionDeclarations(resolvedDecl));
384
+ return implDocInfo
385
+ ? { docString: implDocInfo.docString, sourceDecl: implDocInfo.sourceDecl, forceLiteral: false }
386
+ : undefined;
321
387
  }
322
388
  function _getFunctionOrClassDeclsDocString(decls) {
389
+ if (decls.length === 0) {
390
+ return undefined;
391
+ }
392
+ return (0, declaration_1.isFunctionDeclaration)(decls[0])
393
+ ? _getFunctionOrClassDeclsDocStringInfo(decls)?.docString
394
+ : _getFunctionOrClassDeclsDocStringInfo(decls)?.docString;
395
+ }
396
+ function _getFunctionOrClassDeclsDocStringInfo(decls) {
323
397
  for (const decl of decls) {
324
398
  const docString = getFunctionOrClassDeclDocString(decl);
325
399
  if (docString) {
326
- return docString;
400
+ return { docString, sourceDecl: decl };
327
401
  }
328
402
  }
329
403
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"typeDocStringUtils.js","sourceRoot":"","sources":["../../../../../src/analyzer/typeDocStringUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeDocStringUtils.js","sourceRoot":"","sources":["../../../../../src/analyzer/typeDocStringUtils.ts"],"names":[],"mappings":"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"}
@@ -30,13 +30,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
30
30
  }) : function(o, v) {
31
31
  o["default"] = v;
32
32
  });
33
- var __importStar = (this && this.__importStar) || function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
40
50
  Object.defineProperty(exports, "__esModule", { value: true });
41
51
  exports.maxCodeComplexity = void 0;
42
52
  exports.createTypeEvaluator = createTypeEvaluator;
@@ -1705,15 +1715,35 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
1705
1715
  let signatures = [];
1706
1716
  function addOneFunctionToSignature(type) {
1707
1717
  let callResult;
1718
+ const constraints = new constraintTracker_1.ConstraintTracker();
1708
1719
  useSpeculativeMode(callNode, () => {
1709
- callResult = validateArgs(exprNode, argList, { type },
1710
- /* constraints */ undefined,
1720
+ callResult = validateArgs(exprNode, argList, { type }, constraints,
1711
1721
  /* skipUnknownArgCheck */ true,
1712
1722
  /* inferenceContext */ undefined);
1713
1723
  });
1724
+ const specializedType = solveAndApplyConstraints(type, constraints);
1725
+ const finalType = (0, types_1.isFunction)(specializedType) ? specializedType : type;
1726
+ const hasActiveArg = argList.some((arg) => arg.active);
1727
+ // If the type was specialized (e.g. ParamSpec expansion), the activeParam
1728
+ // from the original validateArgs refers to parameters in the unspecialized
1729
+ // type and won't match the specialized type's parameters. Re-run validateArgs
1730
+ // against the specialized type to get the correct activeParam mapping.
1731
+ let activeParam = callResult?.activeParam;
1732
+ if (hasActiveArg && finalType !== type) {
1733
+ let specializedActiveParam;
1734
+ useSpeculativeMode(callNode, () => {
1735
+ const specializedResult = validateArgs(exprNode, argList, { type: finalType }, new constraintTracker_1.ConstraintTracker(),
1736
+ /* skipUnknownArgCheck */ true,
1737
+ /* inferenceContext */ undefined);
1738
+ specializedActiveParam = specializedResult?.activeParam;
1739
+ });
1740
+ if (specializedActiveParam) {
1741
+ activeParam = specializedActiveParam;
1742
+ }
1743
+ }
1714
1744
  signatures.push({
1715
- type: expandTypedKwargs(type),
1716
- activeParam: callResult?.activeParam,
1745
+ type: expandTypedKwargs(finalType),
1746
+ activeParam,
1717
1747
  });
1718
1748
  }
1719
1749
  function addFunctionToSignature(type) {
@@ -9548,7 +9578,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
9548
9578
  if (node.d.constType === 15 /* KeywordType.False */) {
9549
9579
  return false;
9550
9580
  }
9551
- else if (node.d.constType === 33 /* KeywordType.True */) {
9581
+ else if (node.d.constType === 34 /* KeywordType.True */) {
9552
9582
  return true;
9553
9583
  }
9554
9584
  }
@@ -9669,7 +9699,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
9669
9699
  }
9670
9700
  function getTypeOfConstant(node, flags) {
9671
9701
  let type;
9672
- if (node.d.constType === 26 /* KeywordType.None */) {
9702
+ if (node.d.constType === 27 /* KeywordType.None */) {
9673
9703
  if (prefetched?.noneTypeClass) {
9674
9704
  type =
9675
9705
  (flags & 128 /* EvalFlags.InstantiableType */) !== 0
@@ -9680,14 +9710,14 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
9680
9710
  }
9681
9711
  }
9682
9712
  }
9683
- else if (node.d.constType === 33 /* KeywordType.True */ ||
9713
+ else if (node.d.constType === 34 /* KeywordType.True */ ||
9684
9714
  node.d.constType === 15 /* KeywordType.False */ ||
9685
9715
  node.d.constType === 9 /* KeywordType.Debug */) {
9686
9716
  type = getBuiltInObject(node, 'bool');
9687
9717
  // For True and False, we can create truthy and falsy
9688
9718
  // versions of 'bool'.
9689
9719
  if (type && (0, types_1.isClassInstance)(type)) {
9690
- if (node.d.constType === 33 /* KeywordType.True */) {
9720
+ if (node.d.constType === 34 /* KeywordType.True */) {
9691
9721
  type = types_1.ClassType.cloneWithLiteral(type, /* value */ true);
9692
9722
  }
9693
9723
  else if (node.d.constType === 15 /* KeywordType.False */) {
@@ -11092,13 +11122,13 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
11092
11122
  }
11093
11123
  }
11094
11124
  else if (itemExpr.nodeType === 14 /* ParseNodeType.Constant */) {
11095
- if (itemExpr.d.constType === 33 /* KeywordType.True */) {
11125
+ if (itemExpr.d.constType === 34 /* KeywordType.True */) {
11096
11126
  type = cloneBuiltinClassWithLiteral(node, classType, 'bool', true);
11097
11127
  }
11098
11128
  else if (itemExpr.d.constType === 15 /* KeywordType.False */) {
11099
11129
  type = cloneBuiltinClassWithLiteral(node, classType, 'bool', false);
11100
11130
  }
11101
- else if (itemExpr.d.constType === 26 /* KeywordType.None */) {
11131
+ else if (itemExpr.d.constType === 27 /* KeywordType.None */) {
11102
11132
  type = prefetched?.noneTypeClass ?? types_1.UnknownType.create();
11103
11133
  }
11104
11134
  }
@@ -13625,7 +13655,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
13625
13655
  // of the specified type and 'None'). Skip this step if the type is already
13626
13656
  // optional to avoid losing alias names when combining the types.
13627
13657
  if (param.d.defaultValue?.nodeType === 14 /* ParseNodeType.Constant */ &&
13628
- param.d.defaultValue.d.constType === 26 /* KeywordType.None */ &&
13658
+ param.d.defaultValue.d.constType === 27 /* KeywordType.None */ &&
13629
13659
  !(0, typeUtils_1.isOptionalType)(type) &&
13630
13660
  !AnalyzerNodeInfo.getFileInfo(param).diagnosticRuleSet.strictParameterNoneValue) {
13631
13661
  return (0, types_1.combineTypes)([type, getNoneType()]);
@@ -14736,6 +14766,10 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
14736
14766
  evaluateTypesForAssignmentStatement(parent);
14737
14767
  return;
14738
14768
  }
14769
+ case 5 /* ParseNodeType.AugmentedAssignment */: {
14770
+ evaluateTypesForAugmentedAssignment(parent);
14771
+ return;
14772
+ }
14739
14773
  }
14740
14774
  if (nodeToEvaluate.nodeType === 54 /* ParseNodeType.TypeAnnotation */) {
14741
14775
  evaluateTypesForTypeAnnotationNode(nodeToEvaluate);
@@ -19780,15 +19814,22 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
19780
19814
  }
19781
19815
  }
19782
19816
  else if (overrideParamDetails.positionParamCount > baseParamDetails.positionParamCount) {
19783
- // Verify that all of the override parameters that extend the
19784
- // signature are either *args, **kwargs or parameters with
19785
- // default values.
19786
- for (let i = baseParamDetails.positionParamCount; i < overrideParamDetails.positionParamCount; i++) {
19787
- const overrideParam = overrideParamDetails.params[i].param;
19788
- if (overrideParam.category === 0 /* ParamCategory.Simple */ &&
19789
- overrideParam.name &&
19790
- !overrideParamDetails.params[i].defaultType) {
19791
- foundParamCountMismatch = true;
19817
+ const isCallableAttrOverriddenByInstanceMethod = baseParamDetails.positionParamCount === 0 &&
19818
+ overrideParamDetails.positionParamCount === 1 &&
19819
+ types_1.FunctionType.isInstanceMethod(overrideMethod) &&
19820
+ !types_1.FunctionType.isStaticMethod(baseMethod) &&
19821
+ !types_1.FunctionType.isClassMethod(baseMethod);
19822
+ if (!isCallableAttrOverriddenByInstanceMethod) {
19823
+ // Verify that all of the override parameters that extend the
19824
+ // signature are either *args, **kwargs or parameters with
19825
+ // default values.
19826
+ for (let i = baseParamDetails.positionParamCount; i < overrideParamDetails.positionParamCount; i++) {
19827
+ const overrideParam = overrideParamDetails.params[i].param;
19828
+ if (overrideParam.category === 0 /* ParamCategory.Simple */ &&
19829
+ overrideParam.name &&
19830
+ !overrideParamDetails.params[i].defaultType) {
19831
+ foundParamCountMismatch = true;
19832
+ }
19792
19833
  }
19793
19834
  }
19794
19835
  }
@@ -20311,7 +20352,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
20311
20352
  case 49 /* ParseNodeType.String */:
20312
20353
  return allowStrLiteral;
20313
20354
  case 14 /* ParseNodeType.Constant */:
20314
- return node.d.constType === 26 /* KeywordType.None */;
20355
+ return node.d.constType === 27 /* KeywordType.None */;
20315
20356
  case 7 /* ParseNodeType.BinaryOperation */:
20316
20357
  return (node.d.operator === 6 /* OperatorType.BitwiseOr */ &&
20317
20358
  isLegalTypeAliasExpressionForm(node.d.leftExpr, /* allowStrLiteral */ true) &&