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

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 (170) hide show
  1. package/dist/analyzer/analyzerFileInfo.d.ts +0 -1
  2. package/dist/analyzer/analyzerFileInfo.js.map +1 -1
  3. package/dist/analyzer/binder.js +11 -7
  4. package/dist/analyzer/binder.js.map +1 -1
  5. package/dist/analyzer/cacheManager.d.ts +11 -0
  6. package/dist/analyzer/cacheManager.js +59 -2
  7. package/dist/analyzer/cacheManager.js.map +1 -1
  8. package/dist/analyzer/checker.d.ts +2 -2
  9. package/dist/analyzer/checker.js +8 -8
  10. package/dist/analyzer/checker.js.map +1 -1
  11. package/dist/analyzer/codeFlowEngine.js +14 -2
  12. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  13. package/dist/analyzer/codeFlowTypes.d.ts +1 -0
  14. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  15. package/dist/analyzer/constraintSolver.js +20 -3
  16. package/dist/analyzer/constraintSolver.js.map +1 -1
  17. package/dist/analyzer/constructorTransform.js +2 -2
  18. package/dist/analyzer/constructorTransform.js.map +1 -1
  19. package/dist/analyzer/dataClasses.js +5 -6
  20. package/dist/analyzer/dataClasses.js.map +1 -1
  21. package/dist/analyzer/enums.js +7 -3
  22. package/dist/analyzer/enums.js.map +1 -1
  23. package/dist/analyzer/functionTransform.js +1 -1
  24. package/dist/analyzer/functionTransform.js.map +1 -1
  25. package/dist/analyzer/importStatementUtils.d.ts +6 -6
  26. package/dist/analyzer/importStatementUtils.js +42 -42
  27. package/dist/analyzer/importStatementUtils.js.map +1 -1
  28. package/dist/analyzer/namedTuples.js +1 -1
  29. package/dist/analyzer/namedTuples.js.map +1 -1
  30. package/dist/analyzer/packageTypeVerifier.js +6 -6
  31. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  32. package/dist/analyzer/parseTreeUtils.d.ts +6 -5
  33. package/dist/analyzer/parseTreeUtils.js +12 -13
  34. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  35. package/dist/analyzer/patternMatching.js +1 -1
  36. package/dist/analyzer/patternMatching.js.map +1 -1
  37. package/dist/analyzer/program.d.ts +4 -3
  38. package/dist/analyzer/program.js +21 -12
  39. package/dist/analyzer/program.js.map +1 -1
  40. package/dist/analyzer/properties.js +10 -10
  41. package/dist/analyzer/properties.js.map +1 -1
  42. package/dist/analyzer/protocols.js +5 -5
  43. package/dist/analyzer/protocols.js.map +1 -1
  44. package/dist/analyzer/service.d.ts +3 -2
  45. package/dist/analyzer/service.js +7 -4
  46. package/dist/analyzer/service.js.map +1 -1
  47. package/dist/analyzer/sourceFile.d.ts +5 -3
  48. package/dist/analyzer/sourceFile.js +108 -71
  49. package/dist/analyzer/sourceFile.js.map +1 -1
  50. package/dist/analyzer/sourceFileInfoUtils.js +1 -1
  51. package/dist/analyzer/sourceMapper.js +6 -6
  52. package/dist/analyzer/symbol.d.ts +4 -1
  53. package/dist/analyzer/symbol.js +10 -0
  54. package/dist/analyzer/symbol.js.map +1 -1
  55. package/dist/analyzer/symbolUtils.d.ts +1 -0
  56. package/dist/analyzer/symbolUtils.js +11 -1
  57. package/dist/analyzer/symbolUtils.js.map +1 -1
  58. package/dist/analyzer/typeDocStringUtils.js +1 -1
  59. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  60. package/dist/analyzer/typeEvaluator.js +106 -49
  61. package/dist/analyzer/typeEvaluator.js.map +1 -1
  62. package/dist/analyzer/typeGuards.js +2 -2
  63. package/dist/analyzer/typeGuards.js.map +1 -1
  64. package/dist/analyzer/typeStubWriter.js +1 -1
  65. package/dist/analyzer/typeStubWriter.js.map +1 -1
  66. package/dist/analyzer/typeUtils.js +13 -16
  67. package/dist/analyzer/typeUtils.js.map +1 -1
  68. package/dist/analyzer/typedDicts.js +29 -20
  69. package/dist/analyzer/typedDicts.js.map +1 -1
  70. package/dist/analyzer/types.d.ts +5 -1
  71. package/dist/analyzer/types.js +20 -0
  72. package/dist/analyzer/types.js.map +1 -1
  73. package/dist/backgroundAnalysis.d.ts +1 -0
  74. package/dist/backgroundAnalysis.js +5 -1
  75. package/dist/backgroundAnalysis.js.map +1 -1
  76. package/dist/backgroundAnalysisBase.d.ts +2 -1
  77. package/dist/backgroundAnalysisBase.js +5 -0
  78. package/dist/backgroundAnalysisBase.js.map +1 -1
  79. package/dist/backgroundThreadBase.d.ts +1 -0
  80. package/dist/backgroundThreadBase.js +5 -1
  81. package/dist/backgroundThreadBase.js.map +1 -1
  82. package/dist/commands/dumpFileDebugInfoCommand.js +4 -4
  83. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  84. package/dist/common/extensibility.d.ts +3 -2
  85. package/dist/common/extensibility.js.map +1 -1
  86. package/dist/common/serviceProviderExtensions.d.ts +2 -0
  87. package/dist/common/serviceProviderExtensions.js +4 -0
  88. package/dist/common/serviceProviderExtensions.js.map +1 -1
  89. package/dist/common/textEditTracker.d.ts +5 -5
  90. package/dist/common/textEditTracker.js +33 -33
  91. package/dist/common/textEditTracker.js.map +1 -1
  92. package/dist/common/workspaceEditUtils.js +2 -2
  93. package/dist/common/workspaceEditUtils.js.map +1 -1
  94. package/dist/languageServerBase.d.ts +4 -4
  95. package/dist/languageServerBase.js +1 -1
  96. package/dist/languageServerBase.js.map +1 -1
  97. package/dist/languageService/autoImporter.d.ts +3 -3
  98. package/dist/languageService/autoImporter.js +2 -1
  99. package/dist/languageService/autoImporter.js.map +1 -1
  100. package/dist/languageService/callHierarchyProvider.js +2 -2
  101. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  102. package/dist/languageService/completionProvider.d.ts +2 -2
  103. package/dist/languageService/completionProvider.js +8 -9
  104. package/dist/languageService/completionProvider.js.map +1 -1
  105. package/dist/languageService/definitionProvider.js +1 -1
  106. package/dist/languageService/definitionProvider.js.map +1 -1
  107. package/dist/languageService/documentHighlightProvider.js +2 -2
  108. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  109. package/dist/languageService/documentSymbolCollector.js +1 -1
  110. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  111. package/dist/languageService/documentSymbolProvider.js +1 -1
  112. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  113. package/dist/languageService/hoverProvider.js +2 -2
  114. package/dist/languageService/hoverProvider.js.map +1 -1
  115. package/dist/languageService/importSorter.d.ts +2 -2
  116. package/dist/languageService/importSorter.js +1 -1
  117. package/dist/languageService/importSorter.js.map +1 -1
  118. package/dist/languageService/referencesProvider.d.ts +4 -4
  119. package/dist/languageService/referencesProvider.js +2 -2
  120. package/dist/languageService/referencesProvider.js.map +1 -1
  121. package/dist/languageService/signatureHelpProvider.js +2 -2
  122. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  123. package/dist/languageService/symbolIndexer.d.ts +2 -2
  124. package/dist/languageService/symbolIndexer.js +1 -1
  125. package/dist/languageService/symbolIndexer.js.map +1 -1
  126. package/dist/languageService/workspaceSymbolProvider.js +1 -1
  127. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  128. package/dist/localization/localize.d.ts +3 -0
  129. package/dist/localization/localize.js +1 -0
  130. package/dist/localization/localize.js.map +1 -1
  131. package/dist/localization/package.nls.en-us.json +1 -0
  132. package/dist/nodeMain.d.ts +1 -1
  133. package/dist/nodeMain.js +2 -2
  134. package/dist/nodeMain.js.map +1 -1
  135. package/dist/parser/parser.d.ts +7 -4
  136. package/dist/parser/parser.js +7 -5
  137. package/dist/parser/parser.js.map +1 -1
  138. package/dist/server.d.ts +3 -3
  139. package/dist/server.js +3 -3
  140. package/dist/server.js.map +1 -1
  141. package/dist/tests/cacheManager.test.js +35 -0
  142. package/dist/tests/cacheManager.test.js.map +1 -1
  143. package/dist/tests/chainedSourceFiles.test.js +7 -7
  144. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  145. package/dist/tests/harness/fourslash/testState.d.ts +4 -4
  146. package/dist/tests/harness/fourslash/testState.js +6 -5
  147. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  148. package/dist/tests/importStatementUtils.test.js +4 -4
  149. package/dist/tests/importStatementUtils.test.js.map +1 -1
  150. package/dist/tests/ipythonMode.test.js +1 -1
  151. package/dist/tests/ipythonMode.test.js.map +1 -1
  152. package/dist/tests/lsp/languageServer.js +1 -1
  153. package/dist/tests/lsp/languageServer.js.map +1 -1
  154. package/dist/tests/lsp/languageServerTestUtils.d.ts +1 -1
  155. package/dist/tests/parser.test.js +14 -14
  156. package/dist/tests/parser.test.js.map +1 -1
  157. package/dist/tests/signatureHelp.test.js +1 -1
  158. package/dist/tests/signatureHelp.test.js.map +1 -1
  159. package/dist/tests/testStateUtils.js +5 -3
  160. package/dist/tests/testStateUtils.js.map +1 -1
  161. package/dist/tests/testUtils.d.ts +4 -8
  162. package/dist/tests/testUtils.js +4 -7
  163. package/dist/tests/testUtils.js.map +1 -1
  164. package/dist/tests/textEditUtil.test.js +3 -3
  165. package/dist/tests/textEditUtil.test.js.map +1 -1
  166. package/dist/tests/typeEvaluator1.test.js +1 -1
  167. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  168. package/dist/tests/typeEvaluator3.test.js +10 -4
  169. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  170. package/package.json +1 -1
@@ -74,7 +74,7 @@ function createTypedDictType(evaluator, errorNode, typedDictClass, argList) {
74
74
  /* declaredMetaclass */ undefined, typedDictClass.details.effectiveMetaclass);
75
75
  classType.details.baseClasses.push(typedDictClass);
76
76
  (0, typeUtils_1.computeMroLinearization)(classType);
77
- const classFields = classType.details.fields;
77
+ const classFields = types_1.ClassType.getSymbolTable(classType);
78
78
  classFields.set('__class__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */ | 64 /* SymbolFlags.IgnoredForProtocolMatch */, classType));
79
79
  let usingDictSyntax = false;
80
80
  if (argList.length < 2) {
@@ -168,7 +168,7 @@ function createTypedDictTypeInlined(evaluator, dictNode, typedDictClass) {
168
168
  /* declaredMetaclass */ undefined, typedDictClass.details.effectiveMetaclass);
169
169
  classType.details.baseClasses.push(typedDictClass);
170
170
  (0, typeUtils_1.computeMroLinearization)(classType);
171
- getTypedDictFieldsFromDictSyntax(evaluator, dictNode, classType.details.fields, /* isInline */ true);
171
+ getTypedDictFieldsFromDictSyntax(evaluator, dictNode, types_1.ClassType.getSymbolTable(classType), /* isInline */ true);
172
172
  synthesizeTypedDictClassMethods(evaluator, dictNode, classType);
173
173
  return classType;
174
174
  }
@@ -256,7 +256,7 @@ function synthesizeTypedDictClassMethods(evaluator, node, classType) {
256
256
  hasDeclaredType: true,
257
257
  });
258
258
  }
259
- const symbolTable = classType.details.fields;
259
+ const symbolTable = types_1.ClassType.getSymbolTable(classType);
260
260
  const initType = types_1.OverloadedFunctionType.create([initOverride1, initOverride2]);
261
261
  symbolTable.set('__init__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, initType));
262
262
  symbolTable.set('__new__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, newType));
@@ -471,23 +471,22 @@ function synthesizeTypedDictClassMethods(evaluator, node, classType) {
471
471
  setDefaultOverloads.push(createSetDefaultMethod(nameLiteralType, entry.valueType));
472
472
  }
473
473
  });
474
- // If the class is closed, we can assume that any other literal
475
- // key values will return the default parameter value.
476
- if (types_1.ClassType.isTypedDictEffectivelyClosed(classType) && (0, types_1.isNever)(extraEntriesInfo.valueType)) {
477
- const literalStringType = evaluator.getTypingType(node, 'LiteralString');
478
- if (literalStringType && (0, types_1.isInstantiableClass)(literalStringType)) {
479
- const literalStringInstance = types_1.ClassType.cloneAsInstance(literalStringType);
480
- getOverloads.push(createGetMethod(literalStringInstance, evaluator.getNoneType(),
481
- /* includeDefault */ false,
482
- /* isEntryRequired */ true));
483
- getOverloads.push(createGetMethod(literalStringInstance, /* valueType */ types_1.AnyType.create(), /* includeDefault */ true));
484
- }
485
- }
486
- // Provide a final `get` overload that handles the general case where
487
- // the key is a str but the literal value isn't known.
488
474
  const strType = types_1.ClassType.cloneAsInstance(strClass);
489
- getOverloads.push(createGetMethod(strType, types_1.AnyType.create(), /* includeDefault */ false));
490
- getOverloads.push(createGetMethod(strType, types_1.AnyType.create(), /* includeDefault */ true));
475
+ // If the class is closed, we can assume that any other keys that
476
+ // are present will return the default parameter value or the extra
477
+ // entries value type.
478
+ if (types_1.ClassType.isTypedDictEffectivelyClosed(classType)) {
479
+ getOverloads.push(createGetMethod(strType, (0, types_1.combineTypes)([extraEntriesInfo.valueType, evaluator.getNoneType()]),
480
+ /* includeDefault */ false,
481
+ /* isEntryRequired */ true));
482
+ getOverloads.push(createGetMethod(strType, extraEntriesInfo.valueType, /* includeDefault */ true));
483
+ }
484
+ else {
485
+ // Provide a final `get` overload that handles the general case where
486
+ // the key is a str but the literal value isn't known.
487
+ getOverloads.push(createGetMethod(strType, types_1.AnyType.create(), /* includeDefault */ false));
488
+ getOverloads.push(createGetMethod(strType, types_1.AnyType.create(), /* includeDefault */ true));
489
+ }
491
490
  symbolTable.set('get', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, types_1.OverloadedFunctionType.create(getOverloads)));
492
491
  if (popOverloads.length > 0) {
493
492
  symbolTable.set('pop', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, types_1.OverloadedFunctionType.create(popOverloads)));
@@ -714,7 +713,7 @@ function getTypedDictMembersForClassRecursive(evaluator, classType, entries, rec
714
713
  });
715
714
  const typeVarContext = (0, typeUtils_1.buildTypeVarContextFromSpecializedClass)(classType);
716
715
  // Add any new typed dict entries from this class.
717
- classType.details.fields.forEach((symbol, name) => {
716
+ types_1.ClassType.getSymbolTable(classType).forEach((symbol, name) => {
718
717
  if (!symbol.isIgnoredForProtocolMatch()) {
719
718
  // Only variables (not functions, classes, etc.) are considered.
720
719
  const lastDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(symbol);
@@ -781,6 +780,11 @@ function assignTypedDictToTypedDict(evaluator, destType, srcType, diag, typeVarC
781
780
  const srcEntries = getTypedDictMembersForClass(evaluator, srcType, /* allowNarrowed */ true);
782
781
  const extraSrcEntries = (_a = srcEntries.extraItems) !== null && _a !== void 0 ? _a : getEffectiveExtraItemsEntryType(evaluator, srcType);
783
782
  destEntries.knownItems.forEach((destEntry, name) => {
783
+ // If we've already determined that the types are inconsistent and
784
+ // the caller isn't interested in detailed diagnostics, skip the remainder.
785
+ if (!typesAreConsistent && !diag) {
786
+ return;
787
+ }
784
788
  const srcEntry = srcEntries.knownItems.get(name);
785
789
  if (!srcEntry) {
786
790
  if (destEntry.isRequired || !destEntry.isReadOnly) {
@@ -827,6 +831,11 @@ function assignTypedDictToTypedDict(evaluator, destType, srcType, diag, typeVarC
827
831
  }
828
832
  }
829
833
  });
834
+ // If the types are not consistent and the caller isn't interested
835
+ // in detailed diagnostics, don't do additional work.
836
+ if (!typesAreConsistent && !diag) {
837
+ return false;
838
+ }
830
839
  // If the destination TypedDict is closed, check any extra entries in the source
831
840
  // TypedDict to ensure that they don't violate the "extra items" type.
832
841
  if (types_1.ClassType.isTypedDictEffectivelyClosed(destType)) {
@@ -1 +1 @@
1
- {"version":3,"file":"typedDicts.js","sourceRoot":"","sources":["../../../../../src/analyzer/typedDicts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typedDicts.js","sourceRoot":"","sources":["../../../../../src/analyzer/typedDicts.ts"],"names":[],"mappings":"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"}
@@ -197,12 +197,14 @@ interface ClassDetails {
197
197
  dataClassEntries?: DataClassEntry[] | undefined;
198
198
  dataClassBehaviors?: DataClassBehaviors | undefined;
199
199
  typedDictEntries?: TypedDictEntries | undefined;
200
- inheritedSlotsNames?: string[];
201
200
  localSlotsNames?: string[];
202
201
  protocolCompatibility?: object;
203
202
  classDataClassTransform?: DataClassBehaviors | undefined;
204
203
  requiresVarianceInference?: boolean;
205
204
  isInstanceHashable?: boolean;
205
+ synthesizeMethodsDeferred?: () => void;
206
+ calculateInheritedSlotsNamesDeferred?: () => void;
207
+ inheritedSlotsNamesCached?: string[];
206
208
  }
207
209
  export interface TupleTypeArgument {
208
210
  type: Type;
@@ -290,6 +292,8 @@ export declare namespace ClassType {
290
292
  function isReadOnlyInstanceVariables(classType: ClassType): boolean;
291
293
  function getTypeParameters(classType: ClassType): TypeVarType[];
292
294
  function hasUnknownBaseClass(classType: ClassType): boolean;
295
+ function getSymbolTable(classType: ClassType): SymbolTable;
296
+ function getInheritedSlotsNames(classType: ClassType): string[] | undefined;
293
297
  function isHierarchyPartiallyEvaluated(classType: ClassType): boolean;
294
298
  function isSameGenericClass(classType: ClassType, type2: ClassType, recursionCount?: number): boolean;
295
299
  function isDerivedFrom(subclassType: ClassType, parentClassType: ClassType, inheritanceChain?: InheritanceChain): boolean;
@@ -449,6 +449,9 @@ var ClassType;
449
449
  function cloneWithLiteral(classType, value) {
450
450
  const newClassType = TypeBase.cloneType(classType);
451
451
  newClassType.literalValue = value;
452
+ // Remove type alias information because the type will no longer match
453
+ // that of the type alias definition if we change the literal type.
454
+ delete newClassType.typeAliasInfo;
452
455
  return newClassType;
453
456
  }
454
457
  ClassType.cloneWithLiteral = cloneWithLiteral;
@@ -706,6 +709,8 @@ var ClassType;
706
709
  }
707
710
  ClassType.isPseudoGenericClass = isPseudoGenericClass;
708
711
  function getDataClassEntries(classType) {
712
+ var _a, _b;
713
+ (_b = (_a = classType.details).synthesizeMethodsDeferred) === null || _b === void 0 ? void 0 : _b.call(_a);
709
714
  return classType.details.dataClassEntries || [];
710
715
  }
711
716
  ClassType.getDataClassEntries = getDataClassEntries;
@@ -741,6 +746,21 @@ var ClassType;
741
746
  return classType.details.mro.some((baseClass) => isAnyOrUnknown(baseClass));
742
747
  }
743
748
  ClassType.hasUnknownBaseClass = hasUnknownBaseClass;
749
+ function getSymbolTable(classType) {
750
+ var _a, _b;
751
+ (_b = (_a = classType.details).synthesizeMethodsDeferred) === null || _b === void 0 ? void 0 : _b.call(_a);
752
+ return classType.details.fields;
753
+ }
754
+ ClassType.getSymbolTable = getSymbolTable;
755
+ function getInheritedSlotsNames(classType) {
756
+ var _a, _b, _c, _d;
757
+ // First synthesize methods if needed. The slots entries
758
+ // can depend on synthesized methods.
759
+ (_b = (_a = classType.details).synthesizeMethodsDeferred) === null || _b === void 0 ? void 0 : _b.call(_a);
760
+ (_d = (_c = classType.details).calculateInheritedSlotsNamesDeferred) === null || _d === void 0 ? void 0 : _d.call(_c);
761
+ return classType.details.inheritedSlotsNamesCached;
762
+ }
763
+ ClassType.getInheritedSlotsNames = getInheritedSlotsNames;
744
764
  // Similar to isPartiallyEvaluated except that it also looks at all of the
745
765
  // classes in the MRO list for this class to see if any of them are still
746
766
  // partially evaluated.