@zzzen/pyright-internal 1.2.0-dev.20240505 → 1.2.0-dev.20240512
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/analyzerFileInfo.js +3 -2
- package/dist/analyzer/analyzerFileInfo.js.map +1 -1
- package/dist/analyzer/binder.js +6 -0
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +20 -6
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +1 -0
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/patternMatching.js +1 -1
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/scope.d.ts +4 -0
- package/dist/analyzer/scope.js +6 -1
- package/dist/analyzer/scope.js.map +1 -1
- package/dist/analyzer/sourceFile.js +13 -5
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +29 -3
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeGuards.d.ts +1 -1
- package/dist/analyzer/typeGuards.js +38 -19
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/types.js +5 -0
- package/dist/analyzer/types.js.map +1 -1
- package/dist/common/pythonVersion.d.ts +1 -0
- package/dist/common/pythonVersion.js +2 -1
- package/dist/common/pythonVersion.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +1 -1
- package/dist/localization/package.nls.ko.json +1 -1
- package/dist/tests/typeEvaluator2.test.js +4 -0
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator7.test.js +1 -1
- package/package.json +1 -1
@@ -74,6 +74,7 @@ export interface VariableDeclaration extends DeclarationBase {
|
|
74
74
|
isDefinedByMemberAccess?: boolean;
|
75
75
|
docString?: string | undefined;
|
76
76
|
alternativeTypeNode?: ExpressionNode;
|
77
|
+
isExplicitBinding?: boolean;
|
77
78
|
}
|
78
79
|
export interface AliasDeclaration extends DeclarationBase {
|
79
80
|
type: DeclarationType.Alias;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"declaration.js","sourceRoot":"","sources":["../../../../../src/analyzer/declaration.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAGH,2CAAwC;AAsB3B,QAAA,sBAAsB,GAAG,SAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AAEhF,IAAkB,eAUjB;AAVD,WAAkB,eAAe;IAC7B,+DAAS,CAAA;IACT,6DAAQ,CAAA;IACR,+DAAS,CAAA;IACT,uEAAa,CAAA;IACb,+DAAS,CAAA;IACT,6DAAQ,CAAA;IACR,uDAAK,CAAA;IACL,mFAAmB,CAAA;IACnB,uDAAK,CAAA;AACT,CAAC,EAViB,eAAe,+BAAf,eAAe,QAUhC;
|
1
|
+
{"version":3,"file":"declaration.js","sourceRoot":"","sources":["../../../../../src/analyzer/declaration.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAGH,2CAAwC;AAsB3B,QAAA,sBAAsB,GAAG,SAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AAEhF,IAAkB,eAUjB;AAVD,WAAkB,eAAe;IAC7B,+DAAS,CAAA;IACT,6DAAQ,CAAA;IACR,+DAAS,CAAA;IACT,uEAAa,CAAA;IACb,+DAAS,CAAA;IACT,6DAAQ,CAAA;IACR,uDAAK,CAAA;IACL,mFAAmB,CAAA;IACnB,uDAAK,CAAA;AACT,CAAC,EAViB,eAAe,+BAAf,eAAe,QAUhC;AAgND,SAAgB,qBAAqB,CAAC,IAAiB;IACnD,OAAO,IAAI,CAAC,IAAI,qCAA6B,CAAC;AAClD,CAAC;AAFD,sDAEC;AAED,SAAgB,kBAAkB,CAAC,IAAiB;IAChD,OAAO,IAAI,CAAC,IAAI,kCAA0B,CAAC;AAC/C,CAAC;AAFD,gDAEC;AAED,SAAgB,sBAAsB,CAAC,IAAiB;IACpD,OAAO,IAAI,CAAC,IAAI,sCAA8B,CAAC;AACnD,CAAC;AAFD,wDAEC;AAED,SAAgB,0BAA0B,CAAC,IAAiB;IACxD,OAAO,IAAI,CAAC,IAAI,0CAAkC,CAAC;AACvD,CAAC;AAFD,gEAEC;AAED,SAAgB,sBAAsB,CAAC,IAAiB;IACpD,OAAO,IAAI,CAAC,IAAI,sCAA8B,CAAC;AACnD,CAAC;AAFD,wDAEC;AAED,SAAgB,qBAAqB,CAAC,IAAiB;IACnD,OAAO,IAAI,CAAC,IAAI,qCAA6B,CAAC;AAClD,CAAC;AAFD,sDAEC;AAED,SAAgB,kBAAkB,CAAC,IAAiB;IAChD,OAAO,IAAI,CAAC,IAAI,kCAA0B,CAAC;AAC/C,CAAC;AAFD,gDAEC;AAED,SAAgB,gCAAgC,CAAC,IAAiB;IAC9D,OAAO,IAAI,CAAC,IAAI,gDAAwC,CAAC;AAC7D,CAAC;AAFD,4EAEC;AAED,SAAgB,sBAAsB,CAAC,IAAiB;IACpD,OAAO,IAAI,CAAC,IAAI,sCAA8B,CAAC;AACnD,CAAC;AAFD,wDAEC;AAED,SAAgB,4BAA4B,CAAC,IAAiB;IAC1D,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,8BAAsB,CAAC,CAAC;AAC/E,CAAC;AAFD,oEAEC"}
|
@@ -416,7 +416,7 @@ function narrowTypeBasedOnClassPattern(evaluator, type, pattern, isPositiveTest)
|
|
416
416
|
// specialize it with Unknown type arguments.
|
417
417
|
if ((0, types_1.isClass)(exprType) && !exprType.typeAliasInfo) {
|
418
418
|
exprType = types_1.ClassType.cloneRemoveTypePromotions(exprType);
|
419
|
-
exprType = (0, typeUtils_1.
|
419
|
+
exprType = (0, typeUtils_1.specializeWithUnknownTypeArgs)(exprType);
|
420
420
|
}
|
421
421
|
// Are there any positional arguments? If so, try to get the mappings for
|
422
422
|
// these arguments by fetching the __match_args__ symbol from the class.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"patternMatching.js","sourceRoot":"","sources":["../../../../../src/analyzer/patternMatching.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"patternMatching.js","sourceRoot":"","sources":["../../../../../src/analyzer/patternMatching.ts"],"names":[],"mappings":"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"}
|
package/dist/analyzer/scope.d.ts
CHANGED
@@ -16,6 +16,8 @@ export interface SymbolWithScope {
|
|
16
16
|
scope: Scope;
|
17
17
|
isOutsideCallerModule: boolean;
|
18
18
|
isBeyondExecutionScope: boolean;
|
19
|
+
usesNonlocalBinding: boolean;
|
20
|
+
usesGlobalBinding: boolean;
|
19
21
|
}
|
20
22
|
export interface GlobalScopeResult {
|
21
23
|
scope: Scope;
|
@@ -25,6 +27,8 @@ export interface LookupSymbolOptions {
|
|
25
27
|
isOutsideCallerModule?: boolean;
|
26
28
|
isBeyondExecutionScope?: boolean;
|
27
29
|
useProxyScope?: boolean;
|
30
|
+
usesNonlocalBinding?: boolean;
|
31
|
+
usesGlobalBinding?: boolean;
|
28
32
|
}
|
29
33
|
export declare class Scope {
|
30
34
|
readonly type: ScopeType;
|
package/dist/analyzer/scope.js
CHANGED
@@ -94,12 +94,15 @@ class Scope {
|
|
94
94
|
isOutsideCallerModule: !!(options === null || options === void 0 ? void 0 : options.isOutsideCallerModule),
|
95
95
|
isBeyondExecutionScope: !!(options === null || options === void 0 ? void 0 : options.isBeyondExecutionScope),
|
96
96
|
scope: effectiveScope,
|
97
|
+
usesNonlocalBinding: !!(options === null || options === void 0 ? void 0 : options.usesNonlocalBinding),
|
98
|
+
usesGlobalBinding: !!(options === null || options === void 0 ? void 0 : options.usesGlobalBinding),
|
97
99
|
};
|
98
100
|
}
|
99
101
|
}
|
100
102
|
let parentScope;
|
101
103
|
let isNextScopeBeyondExecutionScope = (options === null || options === void 0 ? void 0 : options.isBeyondExecutionScope) || this.isIndependentlyExecutable();
|
102
|
-
|
104
|
+
const notLocalBinding = this.notLocalBindings.get(name);
|
105
|
+
if (notLocalBinding === 1 /* NameBindingType.Global */) {
|
103
106
|
const globalScopeResult = this.getGlobalScope();
|
104
107
|
if (globalScopeResult.scope !== this) {
|
105
108
|
parentScope = globalScopeResult.scope;
|
@@ -118,6 +121,8 @@ class Scope {
|
|
118
121
|
return parentScope.lookUpSymbolRecursive(name, {
|
119
122
|
isOutsideCallerModule: !!(options === null || options === void 0 ? void 0 : options.isOutsideCallerModule) || this.type === 4 /* ScopeType.Module */,
|
120
123
|
isBeyondExecutionScope: isNextScopeBeyondExecutionScope,
|
124
|
+
usesNonlocalBinding: notLocalBinding === 0 /* NameBindingType.Nonlocal */ || !!(options === null || options === void 0 ? void 0 : options.usesNonlocalBinding),
|
125
|
+
usesGlobalBinding: notLocalBinding === 1 /* NameBindingType.Global */ || !!(options === null || options === void 0 ? void 0 : options.usesGlobalBinding),
|
121
126
|
});
|
122
127
|
}
|
123
128
|
return undefined;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../../../src/analyzer/scope.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,2CAAuC;AAEvC,qCAA4D;AAE5D,IAAkB,SAmBjB;AAnBD,WAAkB,SAAS;IACvB,0CAA0C;IAC1C,2DAAa,CAAA;IAEb,qCAAqC;IACrC,mEAAiB,CAAA;IAEjB,sDAAsD;IACtD,iDAAQ,CAAA;IAER,qCAAqC;IACrC,2CAAK,CAAA;IAEL,sCAAsC;IACtC,6CAAM,CAAA;IAEN,4DAA4D;IAC5D,6BAA6B;IAC7B,+CAAO,CAAA;AACX,CAAC,EAnBiB,SAAS,yBAAT,SAAS,QAmB1B;AAED,IAAkB,eAMjB;AAND,WAAkB,eAAe;IAC7B,0BAA0B;IAC1B,6DAAQ,CAAA;IAER,wBAAwB;IACxB,yDAAM,CAAA;AACV,CAAC,EANiB,eAAe,+BAAf,eAAe,QAMhC;
|
1
|
+
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../../../src/analyzer/scope.ts"],"names":[],"mappings":"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"}
|
@@ -776,7 +776,9 @@ class SourceFile {
|
|
776
776
|
const rangeEnd = rangeStart + this._writableData.typeIgnoreAll.range.length;
|
777
777
|
const range = (0, positionUtils_1.convertOffsetsToRange)(rangeStart, rangeEnd, this._writableData.tokenizerLines);
|
778
778
|
if (!isUnreachableCodeRange(range) && this._diagnosticRuleSet.enableTypeIgnoreComments) {
|
779
|
-
|
779
|
+
const diag = new diagnostic_1.Diagnostic(diagCategory, localize_1.LocMessage.unnecessaryTypeIgnore(), range);
|
780
|
+
diag.setRule(diagnosticRules_1.DiagnosticRule.reportUnnecessaryTypeIgnoreComment);
|
781
|
+
unnecessaryTypeIgnoreDiags.push(diag);
|
780
782
|
}
|
781
783
|
}
|
782
784
|
typeIgnoreLinesClone.forEach((ignoreComment) => {
|
@@ -785,7 +787,9 @@ class SourceFile {
|
|
785
787
|
const rangeEnd = rangeStart + ignoreComment.range.length;
|
786
788
|
const range = (0, positionUtils_1.convertOffsetsToRange)(rangeStart, rangeEnd, this._writableData.tokenizerLines);
|
787
789
|
if (!isUnreachableCodeRange(range) && this._diagnosticRuleSet.enableTypeIgnoreComments) {
|
788
|
-
|
790
|
+
const diag = new diagnostic_1.Diagnostic(diagCategory, localize_1.LocMessage.unnecessaryTypeIgnore(), range);
|
791
|
+
diag.setRule(diagnosticRules_1.DiagnosticRule.reportUnnecessaryTypeIgnoreComment);
|
792
|
+
unnecessaryTypeIgnoreDiags.push(diag);
|
789
793
|
}
|
790
794
|
}
|
791
795
|
});
|
@@ -796,7 +800,9 @@ class SourceFile {
|
|
796
800
|
const rangeEnd = rangeStart + ignoreComment.range.length;
|
797
801
|
const range = (0, positionUtils_1.convertOffsetsToRange)(rangeStart, rangeEnd, this._writableData.tokenizerLines);
|
798
802
|
if (!isUnreachableCodeRange(range)) {
|
799
|
-
|
803
|
+
const diag = new diagnostic_1.Diagnostic(diagCategory, localize_1.LocMessage.unnecessaryTypeIgnore(), range);
|
804
|
+
diag.setRule(diagnosticRules_1.DiagnosticRule.reportUnnecessaryTypeIgnoreComment);
|
805
|
+
unnecessaryTypeIgnoreDiags.push(diag);
|
800
806
|
}
|
801
807
|
}
|
802
808
|
else {
|
@@ -805,9 +811,11 @@ class SourceFile {
|
|
805
811
|
const rangeEnd = rangeStart + unusedRule.range.length;
|
806
812
|
const range = (0, positionUtils_1.convertOffsetsToRange)(rangeStart, rangeEnd, this._writableData.tokenizerLines);
|
807
813
|
if (!isUnreachableCodeRange(range)) {
|
808
|
-
|
814
|
+
const diag = new diagnostic_1.Diagnostic(diagCategory, localize_1.LocMessage.unnecessaryPyrightIgnoreRule().format({
|
809
815
|
name: unusedRule.text,
|
810
|
-
}), range)
|
816
|
+
}), range);
|
817
|
+
diag.setRule(diagnosticRules_1.DiagnosticRule.reportUnnecessaryTypeIgnoreComment);
|
818
|
+
unnecessaryTypeIgnoreDiags.push(diag);
|
811
819
|
}
|
812
820
|
});
|
813
821
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sourceFile.js","sourceRoot":"","sources":["../../../../../src/analyzer/sourceFile.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"sourceFile.js","sourceRoot":"","sources":["../../../../../src/analyzer/sourceFile.ts"],"names":[],"mappings":"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"}
|
@@ -3118,6 +3118,11 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
|
|
3118
3118
|
// Handles the case where a variable or parameter is defined in an outer
|
3119
3119
|
// scope and captured by an inner scope (a function, lambda, or comprehension).
|
3120
3120
|
function getCodeFlowTypeForCapturedVariable(node, symbolWithScope, effectiveType) {
|
3121
|
+
// This function applies only to captured variables, not those that
|
3122
|
+
// are accessed via an explicit nonlocal or global binding.
|
3123
|
+
if (symbolWithScope.usesGlobalBinding || symbolWithScope.usesNonlocalBinding) {
|
3124
|
+
return undefined;
|
3125
|
+
}
|
3121
3126
|
// This function applies only to variables, parameters, and imports, not to other
|
3122
3127
|
// types of symbols.
|
3123
3128
|
const decls = symbolWithScope.symbol.getDeclarations();
|
@@ -10591,7 +10596,11 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
|
|
10591
10596
|
}
|
10592
10597
|
literalTypes.push(type);
|
10593
10598
|
}
|
10594
|
-
|
10599
|
+
let result = (0, types_1.combineTypes)(literalTypes);
|
10600
|
+
if ((0, types_1.isUnion)(result) && unionClassType && (0, types_1.isInstantiableClass)(unionClassType)) {
|
10601
|
+
result = types_1.TypeBase.cloneAsSpecialForm(result, types_1.ClassType.cloneAsInstance(unionClassType));
|
10602
|
+
}
|
10603
|
+
return result;
|
10595
10604
|
}
|
10596
10605
|
// Creates a ClassVar type.
|
10597
10606
|
function createClassVarType(classType, errorNode, typeArgs, flags) {
|
@@ -12378,9 +12387,19 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
|
|
12378
12387
|
});
|
12379
12388
|
const errorNode = argList.length > 0 ? (_b = (_a = argList[0].node) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : node.name : node.name;
|
12380
12389
|
let newMethodMember;
|
12390
|
+
// See if the class has a metaclass that overrides `__new__`. If so, we
|
12391
|
+
// will validate the signature of the `__new__` method.
|
12381
12392
|
if (classType.details.effectiveMetaclass && (0, types_1.isClass)(classType.details.effectiveMetaclass)) {
|
12382
|
-
//
|
12383
|
-
|
12393
|
+
// If the metaclass is 'type' or 'ABCMeta', we'll assume it will call through to
|
12394
|
+
// __init_subclass__, so we'll skip the `__new__` method check. We need to exclude
|
12395
|
+
// TypedDict classes here because _TypedDict uses ABCMeta as its metaclass, but its
|
12396
|
+
// typeshed definition doesn't override __init_subclass__.
|
12397
|
+
const metaclassCallsInitSubclass = types_1.ClassType.isBuiltIn(classType.details.effectiveMetaclass, ['ABCMeta', 'type']) &&
|
12398
|
+
!types_1.ClassType.isTypedDictClass(classType);
|
12399
|
+
if (!metaclassCallsInitSubclass) {
|
12400
|
+
// See if the metaclass has a `__new__` method that accepts keyword parameters.
|
12401
|
+
newMethodMember = (0, typeUtils_1.lookUpClassMember)(classType.details.effectiveMetaclass, '__new__', 8 /* MemberAccessFlags.SkipTypeBaseClass */);
|
12402
|
+
}
|
12384
12403
|
}
|
12385
12404
|
if (newMethodMember) {
|
12386
12405
|
const newMethodType = getTypeOfMember(newMethodMember);
|
@@ -12824,6 +12843,13 @@ function createTypeEvaluator(importLookup, evaluatorOptions, wrapWithLogger) {
|
|
12824
12843
|
functionType.details.flags |= 32768 /* FunctionTypeFlags.SkipArgsKwargsCompatibilityCheck */;
|
12825
12844
|
}
|
12826
12845
|
}
|
12846
|
+
// If the function contains an *args and a **kwargs parameter and both
|
12847
|
+
// are annotated as Any or are unannotated, make it exempt from
|
12848
|
+
// args/kwargs compatibility checks.
|
12849
|
+
const variadicsWithAnyType = functionType.details.parameters.filter((param) => param.category !== 0 /* ParameterCategory.Simple */ && param.name && (0, types_1.isAnyOrUnknown)(param.type));
|
12850
|
+
if (variadicsWithAnyType.length >= 2) {
|
12851
|
+
functionType.details.flags |= 32768 /* FunctionTypeFlags.SkipArgsKwargsCompatibilityCheck */;
|
12852
|
+
}
|
12827
12853
|
// If there was a defined return type, analyze that first so when we
|
12828
12854
|
// walk the contents of the function, return statements can be
|
12829
12855
|
// validated against this type.
|