@zzzen/pyright-internal 1.2.0-dev.20230917 → 1.2.0-dev.20230924
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.d.ts +1 -0
- package/dist/analyzer/checker.js +60 -3
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +1 -1
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/constructors.js +6 -0
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/decorators.js +2 -2
- package/dist/analyzer/decorators.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.js +3 -0
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +2 -1
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/protocols.js +7 -5
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/sourceMapper.d.ts +1 -0
- package/dist/analyzer/sourceMapper.js +9 -4
- package/dist/analyzer/sourceMapper.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +63 -17
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +3 -1
- package/dist/analyzer/typeGuards.d.ts +1 -1
- package/dist/analyzer/typeGuards.js +4 -3
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typedDicts.js +20 -16
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +2 -0
- package/dist/analyzer/types.js +8 -2
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.js +1 -1
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/common/pathUtils.js +1 -1
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/realFileSystem.js +2 -2
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProvider.d.ts +1 -1
- package/dist/common/serviceProvider.js +6 -1
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/languageService/autoImporter.d.ts +4 -1
- package/dist/languageService/autoImporter.js +12 -1
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/localization/package.nls.cs.json +6 -5
- package/dist/localization/package.nls.de.json +9 -8
- package/dist/localization/package.nls.es.json +6 -5
- package/dist/localization/package.nls.fr.json +6 -5
- package/dist/localization/package.nls.it.json +6 -5
- package/dist/localization/package.nls.ja.json +6 -5
- package/dist/localization/package.nls.ko.json +6 -5
- package/dist/localization/package.nls.pl.json +5 -4
- package/dist/localization/package.nls.pt-br.json +6 -5
- package/dist/localization/package.nls.qps-ploc.json +4 -3
- package/dist/localization/package.nls.ru.json +5 -4
- package/dist/localization/package.nls.tr.json +6 -5
- package/dist/localization/package.nls.zh-cn.json +6 -5
- package/dist/localization/package.nls.zh-tw.json +6 -5
- package/dist/tests/pathUtils.test.js +25 -3
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +2 -2
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +2 -2
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +4 -0
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +1 -1
- package/package.json +1 -1
@@ -82,9 +82,13 @@ class SourceMapper {
|
|
82
82
|
}
|
83
83
|
return [];
|
84
84
|
}
|
85
|
-
|
85
|
+
findDeclarationsByType(originatedPath, type, useTypeAlias = false) {
|
86
86
|
const result = [];
|
87
|
-
this._addClassTypeDeclarations(originatedPath, type, result, new Set());
|
87
|
+
this._addClassTypeDeclarations(originatedPath, type, result, new Set(), useTypeAlias);
|
88
|
+
return result;
|
89
|
+
}
|
90
|
+
findClassDeclarationsByType(originatedPath, type) {
|
91
|
+
const result = this.findDeclarationsByType(originatedPath, type);
|
88
92
|
return result.filter((r) => (0, declaration_1.isClassDeclaration)(r)).map((r) => r);
|
89
93
|
}
|
90
94
|
findFunctionDeclarations(stubDecl) {
|
@@ -441,10 +445,11 @@ class SourceMapper {
|
|
441
445
|
}
|
442
446
|
}
|
443
447
|
}
|
444
|
-
_addClassTypeDeclarations(originated, type, result, recursiveDeclCache) {
|
448
|
+
_addClassTypeDeclarations(originated, type, result, recursiveDeclCache, useTypeAlias = false) {
|
445
449
|
const filePath = type.details.filePath;
|
446
450
|
const sourceFiles = this._getSourceFiles(filePath, /* stubToShadow */ undefined, originated);
|
447
|
-
const
|
451
|
+
const fullName = useTypeAlias && type.typeAliasInfo ? type.typeAliasInfo.fullName : type.details.fullName;
|
452
|
+
const fullClassName = fullName.substring(type.details.moduleName.length + 1 /* +1 for trailing dot */);
|
448
453
|
for (const sourceFile of sourceFiles) {
|
449
454
|
(0, collectionUtils_1.appendArray)(result, this._findClassDeclarationsByName(sourceFile, fullClassName, recursiveDeclCache));
|
450
455
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sourceMapper.js","sourceRoot":"","sources":["../../../src/analyzer/sourceMapper.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"sourceMapper.js","sourceRoot":"","sources":["../../../src/analyzer/sourceMapper.ts"],"names":[],"mappings":"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"}
|
@@ -103,7 +103,6 @@ const nonSubscriptableBuiltinTypes = new Map([
|
|
103
103
|
const typePromotions = new Map([
|
104
104
|
['builtins.float', ['builtins.int']],
|
105
105
|
['builtins.complex', ['builtins.float', 'builtins.int']],
|
106
|
-
['builtins.bytes', ['builtins.bytearray', 'builtins.memoryview']],
|
107
106
|
]);
|
108
107
|
// How many levels deep should we attempt to infer return
|
109
108
|
// types based on call-site argument types? The deeper we go,
|
@@ -2326,6 +2325,32 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
2326
2325
|
});
|
2327
2326
|
writeTypeCache(target, { type, isIncomplete: isTypeIncomplete }, 0 /* None */);
|
2328
2327
|
}
|
2328
|
+
// If the type includes promotion types, expand these to their constituent types.
|
2329
|
+
function expandPromotionTypes(node, type) {
|
2330
|
+
return (0, typeUtils_1.mapSubtypes)(type, (subtype) => {
|
2331
|
+
if (!(0, types_1.isClass)(subtype) || !subtype.includePromotions) {
|
2332
|
+
return subtype;
|
2333
|
+
}
|
2334
|
+
const typesToCombine = [types_1.ClassType.cloneForPromotionType(subtype, /* includePromotions */ false)];
|
2335
|
+
const promotionTypeNames = typePromotions.get(subtype.details.fullName);
|
2336
|
+
if (promotionTypeNames) {
|
2337
|
+
for (const promotionTypeName of promotionTypeNames) {
|
2338
|
+
const nameSplit = promotionTypeName.split('.');
|
2339
|
+
let promotionSubtype = getBuiltInType(node, nameSplit[nameSplit.length - 1]);
|
2340
|
+
if (promotionSubtype && (0, types_1.isInstantiableClass)(promotionSubtype)) {
|
2341
|
+
promotionSubtype = types_1.ClassType.cloneForPromotionType(promotionSubtype,
|
2342
|
+
/* includePromotions */ false);
|
2343
|
+
if ((0, types_1.isClassInstance)(subtype)) {
|
2344
|
+
promotionSubtype = types_1.ClassType.cloneAsInstance(promotionSubtype);
|
2345
|
+
}
|
2346
|
+
promotionSubtype = (0, typeUtils_1.addConditionToType)(promotionSubtype, subtype.condition);
|
2347
|
+
typesToCombine.push(promotionSubtype);
|
2348
|
+
}
|
2349
|
+
}
|
2350
|
+
}
|
2351
|
+
return (0, types_1.combineTypes)(typesToCombine);
|
2352
|
+
});
|
2353
|
+
}
|
2329
2354
|
// Replaces all of the top-level TypeVars (as opposed to TypeVars
|
2330
2355
|
// used as type arguments in other types) with their concrete form.
|
2331
2356
|
// If conditionFilter is specified and the TypeVar is a constrained
|
@@ -3410,7 +3435,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
3410
3435
|
const isNotRequired = false;
|
3411
3436
|
// If the base type was incomplete and unbound, don't proceed
|
3412
3437
|
// because false positive errors will be generated.
|
3413
|
-
if (baseTypeResult.isIncomplete && (0, types_1.isUnbound)(
|
3438
|
+
if (baseTypeResult.isIncomplete && (0, types_1.isUnbound)(baseType)) {
|
3414
3439
|
return { type: types_1.UnknownType.create(/* isIncomplete */ true), isIncomplete: true };
|
3415
3440
|
}
|
3416
3441
|
// Handle the special case where the expression is an actual
|
@@ -3434,6 +3459,8 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
3434
3459
|
if ((0, types_1.isParamSpec)(baseType) && baseType.paramSpecAccess) {
|
3435
3460
|
baseType = makeTopLevelTypeVarsConcrete(baseType);
|
3436
3461
|
}
|
3462
|
+
// Do union expansion for promotion types.
|
3463
|
+
baseType = expandPromotionTypes(node, baseType);
|
3437
3464
|
switch (baseType.category) {
|
3438
3465
|
case 2 /* Any */:
|
3439
3466
|
case 1 /* Unknown */:
|
@@ -6109,6 +6136,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
6109
6136
|
function validateOverloadedFunctionArguments(errorNode, argList, typeResult, typeVarContext, skipUnknownArgCheck, inferenceContext) {
|
6110
6137
|
let filteredMatchResults = [];
|
6111
6138
|
let contextFreeArgTypes;
|
6139
|
+
let isTypeIncomplete = !!typeResult.isIncomplete;
|
6112
6140
|
// Start by evaluating the types of the arguments without any expected
|
6113
6141
|
// type. Also, filter the list of overloads based on the number of
|
6114
6142
|
// positional and named arguments that are present. We do all of this
|
@@ -6122,6 +6150,15 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
6122
6150
|
// intended behavior according to PEP 484.
|
6123
6151
|
const matchResults = matchFunctionArgumentsToParameters(errorNode, argList, { type: overload, isIncomplete: typeResult.isIncomplete }, overloadIndex);
|
6124
6152
|
if (!matchResults.argumentErrors) {
|
6153
|
+
if (inferenceContext === null || inferenceContext === void 0 ? void 0 : inferenceContext.expectedType) {
|
6154
|
+
const returnType = getFunctionEffectiveReturnType(matchResults.overload);
|
6155
|
+
if (!assignType(inferenceContext.expectedType, returnType,
|
6156
|
+
/* diag */ undefined,
|
6157
|
+
/* destTypeVarContext */ undefined,
|
6158
|
+
/* srcTypeVarContext */ undefined, 8 /* SkipSolveTypeVars */)) {
|
6159
|
+
matchResults.relevance += -0.5;
|
6160
|
+
}
|
6161
|
+
}
|
6125
6162
|
filteredMatchResults.push(matchResults);
|
6126
6163
|
}
|
6127
6164
|
overloadIndex++;
|
@@ -6149,7 +6186,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
6149
6186
|
diagAddendum.addMessage(localize_1.Localizer.DiagnosticAddendum.argumentTypes().format({ types: argTypes.join(', ') }));
|
6150
6187
|
addDiagnostic(AnalyzerNodeInfo.getFileInfo(errorNode).diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.noOverload().format({ name: functionName }) + diagAddendum.getString(), errorNode);
|
6151
6188
|
}
|
6152
|
-
return { argumentErrors: true, isTypeIncomplete
|
6189
|
+
return { argumentErrors: true, isTypeIncomplete, overloadsUsedForCall: [] };
|
6153
6190
|
}
|
6154
6191
|
// Create a helper function that evaluates the overload that best
|
6155
6192
|
// matches the arg/param lists.
|
@@ -6175,7 +6212,6 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
6175
6212
|
return evaluateUsingBestMatchingOverload(/* skipUnknownArgCheck */ false);
|
6176
6213
|
}
|
6177
6214
|
let expandedArgTypes = [argList.map((arg) => undefined)];
|
6178
|
-
let isTypeIncomplete = !!typeResult.isIncomplete;
|
6179
6215
|
while (true) {
|
6180
6216
|
const callResult = validateOverloadsWithExpandedTypes(errorNode, expandedArgTypes, filteredMatchResults, typeVarContext, skipUnknownArgCheck, inferenceContext);
|
6181
6217
|
if (callResult.isTypeIncomplete) {
|
@@ -6221,7 +6257,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
6221
6257
|
result.returnType = types_1.UnknownType.create();
|
6222
6258
|
return { ...result, argumentErrors: true };
|
6223
6259
|
}
|
6224
|
-
return { argumentErrors: true, isTypeIncomplete
|
6260
|
+
return { argumentErrors: true, isTypeIncomplete, overloadsUsedForCall: [] };
|
6225
6261
|
}
|
6226
6262
|
// Replaces each item in the expandedArgTypes with n items where n is
|
6227
6263
|
// the number of subtypes in a union. The contextFreeArgTypes parameter
|
@@ -11145,6 +11181,10 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
11145
11181
|
/* declaredMetaclass */ undefined,
|
11146
11182
|
/* effectiveMetaclass */ undefined, ParseTreeUtils.getDocString(node.suite.statements));
|
11147
11183
|
classType.details.typeVarScopeId = ParseTreeUtils.getScopeIdForNode(node);
|
11184
|
+
// Is this a special type that supports type promotions according to PEP 484?
|
11185
|
+
if (typePromotions.has(classType.details.fullName)) {
|
11186
|
+
classType.includePromotions = true;
|
11187
|
+
}
|
11148
11188
|
// Some classes refer to themselves within type arguments used within
|
11149
11189
|
// base classes. We'll register the partially-constructed class type
|
11150
11190
|
// to allow these to be resolved.
|
@@ -15526,11 +15566,13 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
15526
15566
|
return true;
|
15527
15567
|
}
|
15528
15568
|
// Handle special-case type promotions.
|
15529
|
-
|
15530
|
-
|
15531
|
-
|
15532
|
-
|
15533
|
-
|
15569
|
+
if (destType.includePromotions) {
|
15570
|
+
const promotionList = typePromotions.get(destType.details.fullName);
|
15571
|
+
if (promotionList &&
|
15572
|
+
promotionList.some((srcName) => srcType.details.mro.some((mroClass) => (0, types_1.isClass)(mroClass) && srcName === mroClass.details.fullName))) {
|
15573
|
+
if ((flags & 1 /* EnforceInvariance */) === 0) {
|
15574
|
+
return true;
|
15575
|
+
}
|
15534
15576
|
}
|
15535
15577
|
}
|
15536
15578
|
// Is it a structural type (i.e. a protocol)? If so, we need to
|
@@ -16310,7 +16352,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
16310
16352
|
// Handle LiteralString special form.
|
16311
16353
|
if (types_1.ClassType.isBuiltIn(destType, 'LiteralString')) {
|
16312
16354
|
if (types_1.ClassType.isBuiltIn(concreteSrcType, 'str') && concreteSrcType.literalValue !== undefined) {
|
16313
|
-
return
|
16355
|
+
return (flags & 1 /* EnforceInvariance */) === 0;
|
16314
16356
|
}
|
16315
16357
|
else if (types_1.ClassType.isBuiltIn(concreteSrcType, 'LiteralString')) {
|
16316
16358
|
return true;
|
@@ -16318,7 +16360,8 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
16318
16360
|
}
|
16319
16361
|
else if (types_1.ClassType.isBuiltIn(concreteSrcType, 'LiteralString') &&
|
16320
16362
|
strClassType &&
|
16321
|
-
(0, types_1.isInstantiableClass)(strClassType)
|
16363
|
+
(0, types_1.isInstantiableClass)(strClassType) &&
|
16364
|
+
(flags & 1 /* EnforceInvariance */) === 0) {
|
16322
16365
|
concreteSrcType = types_1.ClassType.cloneAsInstance(strClassType);
|
16323
16366
|
}
|
16324
16367
|
if (!assignClass(types_1.ClassType.cloneAsInstantiable(destType), types_1.ClassType.cloneAsInstantiable(concreteSrcType), diag, destTypeVarContext, srcTypeVarContext, flags, recursionCount,
|
@@ -16570,7 +16613,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
16570
16613
|
// If we have no src subtypes remaining but not all dest types have been subsumed
|
16571
16614
|
// by other dest types, then the types are not compatible if we're enforcing invariance.
|
16572
16615
|
if (remainingSrcSubtypes.length === 0) {
|
16573
|
-
return remainingDestSubtypes.every((destSubtype) => isTypeSubsumedByOtherType(destSubtype, destType
|
16616
|
+
return remainingDestSubtypes.every((destSubtype) => isTypeSubsumedByOtherType(destSubtype, destType,
|
16574
16617
|
/* allowAnyToSubsume */ true, recursionCount));
|
16575
16618
|
}
|
16576
16619
|
}
|
@@ -16627,7 +16670,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
16627
16670
|
/* diag */ undefined, destTypeVarContext, srcTypeVarContext, flags, recursionCount)) {
|
16628
16671
|
// Determine if the current subtype is subsumed by another subtype
|
16629
16672
|
// in the same union. If so, we can ignore this.
|
16630
|
-
const isSubtypeSubsumed = isTypeSubsumedByOtherType(subtype, srcType
|
16673
|
+
const isSubtypeSubsumed = isTypeSubsumedByOtherType(subtype, srcType,
|
16631
16674
|
/* allowAnyToSubsume */ false, recursionCount);
|
16632
16675
|
// Try again with a concrete version of the subtype.
|
16633
16676
|
if (!isSubtypeSubsumed &&
|
@@ -16643,9 +16686,10 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
16643
16686
|
return true;
|
16644
16687
|
}
|
16645
16688
|
// Determines whether a type is "subsumed by" (i.e. is a proper subtype of) one
|
16646
|
-
// of the other
|
16647
|
-
function isTypeSubsumedByOtherType(type,
|
16689
|
+
// of the other type.
|
16690
|
+
function isTypeSubsumedByOtherType(type, otherType, allowAnyToSubsume, recursionCount = 0) {
|
16648
16691
|
const concreteType = makeTopLevelTypeVarsConcrete(type);
|
16692
|
+
const otherTypes = (0, types_1.isUnion)(otherType) ? otherType.subtypes : [otherType];
|
16649
16693
|
for (const otherType of otherTypes) {
|
16650
16694
|
if ((0, types_1.isTypeSame)(otherType, type)) {
|
16651
16695
|
continue;
|
@@ -18402,7 +18446,7 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
18402
18446
|
validateInitSubclassArgs,
|
18403
18447
|
isAfterNodeReachable,
|
18404
18448
|
isNodeReachable,
|
18405
|
-
|
18449
|
+
isAsymmetricAccessorAssignment,
|
18406
18450
|
suppressDiagnostics,
|
18407
18451
|
getDeclarationsForStringNode,
|
18408
18452
|
getDeclarationsForNameNode,
|
@@ -18414,8 +18458,10 @@ function createTypeEvaluator(importLookup, evaluatorOptions) {
|
|
18414
18458
|
getGetterTypeFromProperty,
|
18415
18459
|
getTypeOfArgument,
|
18416
18460
|
markNamesAccessed,
|
18461
|
+
expandPromotionTypes,
|
18417
18462
|
makeTopLevelTypeVarsConcrete,
|
18418
18463
|
mapSubtypesExpandTypeVars,
|
18464
|
+
isTypeSubsumedByOtherType,
|
18419
18465
|
lookUpSymbolRecursive,
|
18420
18466
|
getDeclaredTypeOfSymbol,
|
18421
18467
|
getEffectiveTypeOfSymbol,
|