@zzzen/pyright-internal 1.2.0-dev.20230219 → 1.2.0-dev.20230226

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 (105) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +1 -1
  2. package/dist/analyzer/backgroundAnalysisProgram.js +3 -3
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/binder.js +9 -1
  5. package/dist/analyzer/binder.js.map +1 -1
  6. package/dist/analyzer/checker.js +5 -2
  7. package/dist/analyzer/checker.js.map +1 -1
  8. package/dist/analyzer/codeFlowEngine.js +1 -1
  9. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  10. package/dist/analyzer/constraintSolver.js +0 -10
  11. package/dist/analyzer/constraintSolver.js.map +1 -1
  12. package/dist/analyzer/declaration.d.ts +1 -0
  13. package/dist/analyzer/declaration.js.map +1 -1
  14. package/dist/analyzer/importResolver.d.ts +3 -2
  15. package/dist/analyzer/importResolver.js +28 -19
  16. package/dist/analyzer/importResolver.js.map +1 -1
  17. package/dist/analyzer/patternMatching.d.ts +1 -0
  18. package/dist/analyzer/patternMatching.js +29 -1
  19. package/dist/analyzer/patternMatching.js.map +1 -1
  20. package/dist/analyzer/program.d.ts +4 -4
  21. package/dist/analyzer/program.js +33 -34
  22. package/dist/analyzer/program.js.map +1 -1
  23. package/dist/analyzer/properties.js +5 -1
  24. package/dist/analyzer/properties.js.map +1 -1
  25. package/dist/analyzer/protocols.js +4 -3
  26. package/dist/analyzer/protocols.js.map +1 -1
  27. package/dist/analyzer/service.d.ts +7 -3
  28. package/dist/analyzer/service.js +18 -6
  29. package/dist/analyzer/service.js.map +1 -1
  30. package/dist/analyzer/sourceFile.js +3 -0
  31. package/dist/analyzer/sourceFile.js.map +1 -1
  32. package/dist/analyzer/typeEvaluator.js +84 -61
  33. package/dist/analyzer/typeEvaluator.js.map +1 -1
  34. package/dist/backgroundAnalysisBase.d.ts +2 -3
  35. package/dist/backgroundAnalysisBase.js +12 -13
  36. package/dist/backgroundAnalysisBase.js.map +1 -1
  37. package/dist/commands/commandController.js +1 -0
  38. package/dist/commands/commandController.js.map +1 -1
  39. package/dist/commands/quickActionCommand.js +2 -2
  40. package/dist/commands/quickActionCommand.js.map +1 -1
  41. package/dist/common/cancellationUtils.d.ts +18 -2
  42. package/dist/common/cancellationUtils.js +80 -3
  43. package/dist/common/cancellationUtils.js.map +1 -1
  44. package/dist/common/extensibility.d.ts +4 -3
  45. package/dist/common/extensibility.js.map +1 -1
  46. package/dist/common/fileBasedCancellationUtils.d.ts +0 -1
  47. package/dist/common/fileBasedCancellationUtils.js +7 -81
  48. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  49. package/dist/common/{textEditUtils.d.ts → textEditTracker.d.ts} +2 -6
  50. package/dist/common/{textEditUtils.js → textEditTracker.js} +6 -49
  51. package/dist/common/textEditTracker.js.map +1 -0
  52. package/dist/common/workspaceEditUtils.d.ts +14 -8
  53. package/dist/common/workspaceEditUtils.js +115 -59
  54. package/dist/common/workspaceEditUtils.js.map +1 -1
  55. package/dist/languageServerBase.js +3 -3
  56. package/dist/languageServerBase.js.map +1 -1
  57. package/dist/languageService/codeActionProvider.js +1 -1
  58. package/dist/languageService/codeActionProvider.js.map +1 -1
  59. package/dist/languageService/completionProvider.js +3 -3
  60. package/dist/languageService/completionProvider.js.map +1 -1
  61. package/dist/languageService/hoverProvider.js +3 -0
  62. package/dist/languageService/hoverProvider.js.map +1 -1
  63. package/dist/languageService/importAdder.d.ts +2 -2
  64. package/dist/languageService/importAdder.js +1 -2
  65. package/dist/languageService/importAdder.js.map +1 -1
  66. package/dist/languageService/indentationUtils.d.ts +5 -1
  67. package/dist/languageService/indentationUtils.js +12 -2
  68. package/dist/languageService/indentationUtils.js.map +1 -1
  69. package/dist/languageService/renameModuleProvider.d.ts +10 -2
  70. package/dist/languageService/renameModuleProvider.js +74 -14
  71. package/dist/languageService/renameModuleProvider.js.map +1 -1
  72. package/dist/localization/localize.d.ts +3 -0
  73. package/dist/localization/localize.js +1 -0
  74. package/dist/localization/localize.js.map +1 -1
  75. package/dist/localization/package.nls.en-us.json +1 -0
  76. package/dist/tests/fourslash/hover.docstring.parameter.fourslash.d.ts +1 -0
  77. package/dist/tests/fourslash/hover.docstring.parameter.fourslash.js +57 -0
  78. package/dist/tests/fourslash/hover.docstring.parameter.fourslash.js.map +1 -0
  79. package/dist/tests/harness/fourslash/testState.js +9 -2
  80. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  81. package/dist/tests/importAdder.test.js +3 -3
  82. package/dist/tests/importAdder.test.js.map +1 -1
  83. package/dist/tests/indentationUtils.reindent.test.js +1 -1
  84. package/dist/tests/indentationUtils.reindent.test.js.map +1 -1
  85. package/dist/tests/moveSymbol.importAdder.test.js +53 -0
  86. package/dist/tests/moveSymbol.importAdder.test.js.map +1 -1
  87. package/dist/tests/moveSymbol.insertion.test.js +39 -2
  88. package/dist/tests/moveSymbol.insertion.test.js.map +1 -1
  89. package/dist/tests/moveSymbol.misc.test.js +109 -4
  90. package/dist/tests/moveSymbol.misc.test.js.map +1 -1
  91. package/dist/tests/testStateUtils.js +2 -2
  92. package/dist/tests/testStateUtils.js.map +1 -1
  93. package/dist/tests/textEditUtil.test.js +2 -2
  94. package/dist/tests/textEditUtil.test.js.map +1 -1
  95. package/dist/tests/typeEvaluator1.test.js +4 -0
  96. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  97. package/dist/tests/typeEvaluator2.test.js +12 -0
  98. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  99. package/dist/tests/typeEvaluator3.test.js +9 -0
  100. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  101. package/dist/tests/typeEvaluator4.test.js +1 -1
  102. package/dist/tests/workspaceEditUtils.test.js +7 -7
  103. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  104. package/package.json +3 -3
  105. package/dist/common/textEditUtils.js.map +0 -1
@@ -1368,6 +1368,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
1368
1368
  // other types, and ParamSpecs. There are legitimate uses for singleton
1369
1369
  // instances in these particular cases.
1370
1370
  let isExempt = nameType.details.constraints.length > 0 ||
1371
+ !!nameType.details.defaultType ||
1371
1372
  (exemptBoundTypeVar &&
1372
1373
  nameType.details.boundType !== undefined &&
1373
1374
  subscriptIndex !== undefined) ||
@@ -1416,6 +1417,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
1416
1417
  if (constructorClass && nameType.scopeId === constructorClass.details.typeVarScopeId) {
1417
1418
  const existingEntry = classTypeVarUsage.get(nameType.details.name);
1418
1419
  const isParamTypeWithEllipsisUsage = ((_d = curParamNode === null || curParamNode === void 0 ? void 0 : curParamNode.defaultValue) === null || _d === void 0 ? void 0 : _d.nodeType) === 18 /* Ellipsis */;
1420
+ const isExempt = !!nameType.details.defaultType;
1419
1421
  if (!existingEntry) {
1420
1422
  classTypeVarUsage.set(nameType.details.name, {
1421
1423
  nodes: [nameNode],
@@ -1423,7 +1425,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
1423
1425
  paramTypeWithEllipsisUsageCount: isParamTypeWithEllipsisUsage ? 1 : 0,
1424
1426
  returnTypeUsageCount: 0,
1425
1427
  paramWithEllipsis: isParamTypeWithEllipsisUsage ? (_e = curParamNode === null || curParamNode === void 0 ? void 0 : curParamNode.name) === null || _e === void 0 ? void 0 : _e.value : undefined,
1426
- isExempt: false,
1428
+ isExempt,
1427
1429
  });
1428
1430
  }
1429
1431
  else {
@@ -1501,7 +1503,8 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
1501
1503
  classTypeVarUsage.forEach((usage) => {
1502
1504
  var _a;
1503
1505
  if (usage.paramTypeWithEllipsisUsageCount > 0 &&
1504
- usage.paramTypeUsageCount === usage.paramTypeWithEllipsisUsageCount) {
1506
+ usage.paramTypeUsageCount === usage.paramTypeWithEllipsisUsageCount &&
1507
+ !usage.isExempt) {
1505
1508
  const diag = new diagnostic_1.DiagnosticAddendum();
1506
1509
  diag.addMessage(localize_1.Localizer.DiagnosticAddendum.typeVarUnsolvableRemedy());
1507
1510
  this._evaluator.addDiagnostic(this._fileInfo.diagnosticRuleSet.reportInvalidTypeVarUse, diagnosticRules_1.DiagnosticRule.reportInvalidTypeVarUse, localize_1.Localizer.Diagnostic.typeVarPossiblyUnsolvable().format({