@zzzen/pyright-internal 1.2.0-dev.20230924 → 1.2.0-dev.20231001
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.
- package/dist/analyzer/checker.js +4 -1
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +7 -0
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/decorators.js +3 -0
- package/dist/analyzer/decorators.js.map +1 -1
- package/dist/analyzer/operations.js +4 -2
- package/dist/analyzer/operations.js.map +1 -1
- package/dist/analyzer/patternMatching.js +47 -16
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +2 -3
- package/dist/analyzer/program.js +6 -6
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/service.d.ts +4 -4
- package/dist/analyzer/service.js +4 -18
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +3 -1
- package/dist/analyzer/sourceFile.js +9 -5
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +64 -11
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +1 -0
- package/dist/analyzer/typeUtils.js +21 -2
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/types.d.ts +1 -1
- package/dist/analyzer/types.js +6 -3
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.js +0 -22
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/common/configOptions.d.ts +1 -0
- package/dist/common/configOptions.js +4 -0
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/diagnosticRules.d.ts +1 -0
- package/dist/common/diagnosticRules.js +1 -0
- package/dist/common/diagnosticRules.js.map +1 -1
- package/dist/common/extensibility.d.ts +9 -24
- package/dist/common/extensibility.js +1 -91
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/pathUtils.d.ts +3 -0
- package/dist/common/pathUtils.js +13 -8
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/realFileSystem.js +1 -1
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProvider.d.ts +22 -3
- package/dist/common/serviceProvider.js +89 -9
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/common/serviceProviderExtensions.d.ts +4 -1
- package/dist/common/serviceProviderExtensions.js +4 -2
- package/dist/common/serviceProviderExtensions.js.map +1 -1
- package/dist/languageServerBase.js +0 -3
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/definitionProvider.d.ts +3 -2
- package/dist/languageService/definitionProvider.js +13 -10
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +16 -14
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/hoverProvider.js +7 -7
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +8 -1
- package/dist/localization/localize.js +4 -1
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.cs.json +4 -1
- package/dist/localization/package.nls.de.json +4 -1
- package/dist/localization/package.nls.en-us.json +4 -1
- package/dist/localization/package.nls.es.json +4 -1
- package/dist/localization/package.nls.fr.json +4 -1
- package/dist/localization/package.nls.it.json +4 -1
- package/dist/localization/package.nls.ja.json +4 -1
- package/dist/localization/package.nls.ko.json +4 -1
- package/dist/localization/package.nls.pl.json +4 -1
- package/dist/localization/package.nls.pt-br.json +4 -1
- package/dist/localization/package.nls.qps-ploc.json +4 -1
- package/dist/localization/package.nls.ru.json +4 -1
- package/dist/localization/package.nls.tr.json +4 -1
- package/dist/localization/package.nls.zh-cn.json +4 -1
- package/dist/localization/package.nls.zh-tw.json +4 -1
- package/dist/tests/importResolver.test.js +654 -481
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js +39 -1
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/sourceFile.test.js +2 -1
- package/dist/tests/sourceFile.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +3 -1
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +7 -1
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +1 -0
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/package.json +3 -2
@@ -271,6 +271,13 @@ function getCodeFlowEngine(evaluator, speculativeTypeTracker) {
|
|
271
271
|
// Is this a special "unbind" assignment? If so,
|
272
272
|
// we can handle it immediately without any further evaluation.
|
273
273
|
if (curFlowNode.flags & codeFlowTypes_1.FlowFlags.Unbind) {
|
274
|
+
// Don't treat unbound assignments to indexed expressions (i.e. "del x[0]")
|
275
|
+
// as true deletions. The most common use case for "del x[0]" is in a list,
|
276
|
+
// and the list class treats this as an element deletion, not an assignment.
|
277
|
+
if (reference.nodeType === 24 /* Index */) {
|
278
|
+
// No need to explore further.
|
279
|
+
return setCacheEntry(curFlowNode, undefined, /* isIncomplete */ false);
|
280
|
+
}
|
274
281
|
return setCacheEntry(curFlowNode, types_1.UnboundType.create(), /* isIncomplete */ false);
|
275
282
|
}
|
276
283
|
let flowTypeResult = preventRecursion(curFlowNode, () => evaluateAssignmentFlowNode(assignmentFlowNode));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"codeFlowEngine.js","sourceRoot":"","sources":["../../../src/analyzer/codeFlowEngine.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"codeFlowEngine.js","sourceRoot":"","sources":["../../../src/analyzer/codeFlowEngine.ts"],"names":[],"mappings":"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"}
|
@@ -59,6 +59,9 @@ function getFunctionFlagsFromDecorators(evaluator, node, isInClass) {
|
|
59
59
|
else if (decoratorType.details.builtInName === 'type_check_only') {
|
60
60
|
flags |= 128 /* TypeCheckOnly */;
|
61
61
|
}
|
62
|
+
else if (decoratorType.details.builtInName === 'overload') {
|
63
|
+
flags |= 256 /* Overloaded */;
|
64
|
+
}
|
62
65
|
}
|
63
66
|
else if ((0, types_1.isInstantiableClass)(decoratorType)) {
|
64
67
|
if (types_1.ClassType.isBuiltIn(decoratorType, 'staticmethod')) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/analyzer/decorators.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/analyzer/decorators.ts"],"names":[],"mappings":"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"}
|
@@ -470,8 +470,10 @@ function getTypeOfBinaryOperation(evaluator, node, flags, inferenceContext) {
|
|
470
470
|
}
|
471
471
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
472
472
|
// Don't use literal math if either of the operation is within a loop
|
473
|
-
// because the literal values may change each time.
|
474
|
-
|
473
|
+
// because the literal values may change each time. We also don't want to
|
474
|
+
// apply literal math within the body of a lambda because they are often
|
475
|
+
// used as callbacks where the value changes each time they are called.
|
476
|
+
const isLiteralMathAllowed = !(0, parseTreeUtils_1.isWithinLoop)(node) && !(0, parseTreeUtils_1.getEnclosingLambda)(node);
|
475
477
|
// Don't special-case tuple __add__ if the left type is a union. This
|
476
478
|
// can result in an infinite loop if we keep creating new tuple types
|
477
479
|
// within a loop construct using __add__.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../src/analyzer/operations.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../src/analyzer/operations.ts"],"names":[],"mappings":"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"}
|
@@ -406,9 +406,15 @@ function narrowTypeBasedOnClassPattern(evaluator, type, pattern, isPositiveTest)
|
|
406
406
|
// If this is a class (but not a type alias that refers to a class),
|
407
407
|
// specialize it with Unknown type arguments.
|
408
408
|
if ((0, types_1.isClass)(exprType) && !exprType.typeAliasInfo) {
|
409
|
-
exprType = types_1.ClassType.
|
409
|
+
exprType = types_1.ClassType.cloneRemoveTypePromotions(exprType);
|
410
410
|
exprType = (0, typeUtils_1.specializeClassType)(exprType);
|
411
411
|
}
|
412
|
+
// Are there any positional arguments? If so, try to get the mappings for
|
413
|
+
// these arguments by fetching the __match_args__ symbol from the class.
|
414
|
+
let positionalArgNames = [];
|
415
|
+
if (pattern.arguments.some((arg) => !arg.name) && (0, types_1.isInstantiableClass)(exprType)) {
|
416
|
+
positionalArgNames = getPositionalMatchArgNames(evaluator, exprType);
|
417
|
+
}
|
412
418
|
if (!isPositiveTest) {
|
413
419
|
// Don't attempt to narrow if the class type is a more complex type (e.g. a TypeVar or union).
|
414
420
|
if (!(0, types_1.isInstantiableClass)(exprType)) {
|
@@ -463,14 +469,6 @@ function narrowTypeBasedOnClassPattern(evaluator, type, pattern, isPositiveTest)
|
|
463
469
|
return subjectSubtypeExpanded;
|
464
470
|
}
|
465
471
|
}
|
466
|
-
// Are there any positional arguments? If so, try to get the mappings for
|
467
|
-
// these arguments by fetching the __match_args__ symbol from the class.
|
468
|
-
let positionalArgNames = [];
|
469
|
-
if (pattern.arguments.some((arg) => !arg.name)) {
|
470
|
-
if ((0, types_1.isClass)(subjectSubtypeExpanded)) {
|
471
|
-
positionalArgNames = getPositionalMatchArgNames(evaluator, subjectSubtypeExpanded);
|
472
|
-
}
|
473
|
-
}
|
474
472
|
for (let index = 0; index < pattern.arguments.length; index++) {
|
475
473
|
const narrowedArgType = narrowTypeOfClassPatternArgument(evaluator, pattern.arguments[index], index, positionalArgNames, subjectSubtypeExpanded, isPositiveTest);
|
476
474
|
if (!(0, types_1.isNever)(narrowedArgType)) {
|
@@ -572,7 +570,22 @@ function narrowTypeBasedOnClassPattern(evaluator, type, pattern, isPositiveTest)
|
|
572
570
|
// Some built-in classes are treated as special cases for the class pattern
|
573
571
|
// if a positional argument is used.
|
574
572
|
function isClassSpecialCaseForClassPattern(classType) {
|
575
|
-
|
573
|
+
if (classPatternSpecialCases.some((className) => classType.details.fullName === className)) {
|
574
|
+
return true;
|
575
|
+
}
|
576
|
+
// If the class supplies its own `__match_args__`, it's not a special case.
|
577
|
+
const matchArgsMemberInfo = (0, typeUtils_1.lookUpClassMember)(classType, '__match_args__');
|
578
|
+
if (matchArgsMemberInfo) {
|
579
|
+
return false;
|
580
|
+
}
|
581
|
+
// If the class derives from a built-in class, it is considered a special case.
|
582
|
+
for (const mroClass of classType.details.mro) {
|
583
|
+
if ((0, types_1.isClass)(mroClass) &&
|
584
|
+
classPatternSpecialCases.some((className) => mroClass.details.fullName === className)) {
|
585
|
+
return true;
|
586
|
+
}
|
587
|
+
}
|
588
|
+
return false;
|
576
589
|
}
|
577
590
|
// Narrows the pattern provided for a class pattern argument.
|
578
591
|
function narrowTypeOfClassPatternArgument(evaluator, arg, argIndex, positionalArgNames, matchType, isPositiveTest) {
|
@@ -1084,16 +1097,34 @@ function validateClassPattern(evaluator, pattern) {
|
|
1084
1097
|
}
|
1085
1098
|
}
|
1086
1099
|
else {
|
1087
|
-
const isBuiltIn =
|
1088
|
-
// If it's a special-case builtin class, only
|
1100
|
+
const isBuiltIn = isClassSpecialCaseForClassPattern(exprType);
|
1101
|
+
// If it's a special-case builtin class, only positional arguments are allowed.
|
1089
1102
|
if (isBuiltIn) {
|
1090
|
-
if (pattern.arguments.length
|
1091
|
-
evaluator.addDiagnostic((0, analyzerNodeInfo_1.getFileInfo)(pattern).diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.classPatternBuiltInArgCount(), pattern.arguments[1]);
|
1092
|
-
}
|
1093
|
-
else if (pattern.arguments.length === 1 && pattern.arguments[0].name) {
|
1103
|
+
if (pattern.arguments.length === 1 && pattern.arguments[0].name) {
|
1094
1104
|
evaluator.addDiagnostic((0, analyzerNodeInfo_1.getFileInfo)(pattern).diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.classPatternBuiltInArgPositional(), pattern.arguments[0].name);
|
1095
1105
|
}
|
1096
1106
|
}
|
1107
|
+
// Emits an error if the supplied number of positional patterns is less than
|
1108
|
+
// expected for the given subject type.
|
1109
|
+
let positionalPatternCount = pattern.arguments.findIndex((arg) => arg.name !== undefined);
|
1110
|
+
if (positionalPatternCount < 0) {
|
1111
|
+
positionalPatternCount = pattern.arguments.length;
|
1112
|
+
}
|
1113
|
+
let expectedPatternCount = 1;
|
1114
|
+
if (!isBuiltIn) {
|
1115
|
+
let positionalArgNames = [];
|
1116
|
+
if (pattern.arguments.some((arg) => !arg.name)) {
|
1117
|
+
positionalArgNames = getPositionalMatchArgNames(evaluator, exprType);
|
1118
|
+
}
|
1119
|
+
expectedPatternCount = positionalArgNames.length;
|
1120
|
+
}
|
1121
|
+
if (positionalPatternCount > expectedPatternCount) {
|
1122
|
+
evaluator.addDiagnostic((0, analyzerNodeInfo_1.getFileInfo)(pattern).diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.classPatternPositionalArgCount().format({
|
1123
|
+
type: exprType.details.name,
|
1124
|
+
expected: expectedPatternCount,
|
1125
|
+
received: positionalPatternCount,
|
1126
|
+
}), pattern.arguments[expectedPatternCount]);
|
1127
|
+
}
|
1097
1128
|
}
|
1098
1129
|
}
|
1099
1130
|
exports.validateClassPattern = validateClassPattern;
|