@zzzen/pyright-internal 1.2.0-dev.20231203 → 1.2.0-dev.20231210
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.d.ts +4 -3
- package/dist/analyzer/analyzerFileInfo.js.map +1 -1
- package/dist/analyzer/backgroundAnalysisProgram.d.ts +15 -14
- package/dist/analyzer/backgroundAnalysisProgram.js +38 -38
- package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
- package/dist/analyzer/binder.js +56 -52
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +43 -33
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/circularDependency.d.ts +3 -2
- package/dist/analyzer/circularDependency.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +29 -36
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +3 -5
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/dataClasses.js +1 -1
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +5 -3
- package/dist/analyzer/declaration.js +3 -2
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/declarationUtils.d.ts +3 -2
- package/dist/analyzer/declarationUtils.js +14 -12
- package/dist/analyzer/declarationUtils.js.map +1 -1
- package/dist/analyzer/enums.js +1 -1
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/importResolver.d.ts +29 -25
- package/dist/analyzer/importResolver.js +300 -301
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/importResult.d.ts +5 -4
- package/dist/analyzer/importResult.js.map +1 -1
- package/dist/analyzer/importStatementUtils.d.ts +5 -4
- package/dist/analyzer/importStatementUtils.js +23 -22
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/namedTuples.js +3 -3
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/packageTypeReport.d.ts +7 -6
- package/dist/analyzer/packageTypeReport.js +4 -4
- package/dist/analyzer/packageTypeReport.js.map +1 -1
- package/dist/analyzer/packageTypeVerifier.js +68 -64
- package/dist/analyzer/packageTypeVerifier.js.map +1 -1
- package/dist/analyzer/parentDirectoryCache.d.ts +7 -6
- package/dist/analyzer/parentDirectoryCache.js +9 -10
- package/dist/analyzer/parentDirectoryCache.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.d.ts +1 -1
- package/dist/analyzer/parseTreeUtils.js +6 -3
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +79 -14
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +27 -26
- package/dist/analyzer/program.js +162 -156
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/properties.js +3 -3
- package/dist/analyzer/properties.js.map +1 -1
- package/dist/analyzer/pyTypedUtils.d.ts +3 -2
- package/dist/analyzer/pyTypedUtils.js +4 -5
- package/dist/analyzer/pyTypedUtils.js.map +1 -1
- package/dist/analyzer/pythonPathUtils.d.ts +7 -6
- package/dist/analyzer/pythonPathUtils.js +21 -23
- package/dist/analyzer/pythonPathUtils.js.map +1 -1
- package/dist/analyzer/service.d.ts +24 -23
- package/dist/analyzer/service.js +187 -183
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +4 -5
- package/dist/analyzer/sourceFile.js +68 -56
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/sourceFileInfoUtils.js +3 -3
- package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
- package/dist/analyzer/sourceMapper.d.ts +11 -10
- package/dist/analyzer/sourceMapper.js +59 -62
- package/dist/analyzer/sourceMapper.js.map +1 -1
- package/dist/analyzer/sourceMapperUtils.d.ts +2 -1
- package/dist/analyzer/sourceMapperUtils.js +2 -2
- package/dist/analyzer/sourceMapperUtils.js.map +1 -1
- package/dist/analyzer/tracePrinter.d.ts +3 -2
- package/dist/analyzer/tracePrinter.js +21 -23
- package/dist/analyzer/tracePrinter.js.map +1 -1
- package/dist/analyzer/typeDocStringUtils.d.ts +2 -1
- package/dist/analyzer/typeDocStringUtils.js +14 -17
- package/dist/analyzer/typeDocStringUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +172 -102
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeGuards.js +3 -3
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.d.ts +2 -0
- package/dist/analyzer/typePrinter.js +48 -8
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeStubWriter.d.ts +2 -1
- package/dist/analyzer/typeStubWriter.js +2 -2
- package/dist/analyzer/typeStubWriter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +4 -2
- package/dist/analyzer/typeUtils.js +16 -5
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typedDicts.js +4 -4
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +5 -4
- package/dist/analyzer/types.js +4 -4
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysis.d.ts +1 -2
- package/dist/backgroundAnalysis.js +6 -4
- package/dist/backgroundAnalysis.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +22 -20
- package/dist/backgroundAnalysisBase.js +76 -55
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.d.ts +1 -1
- package/dist/backgroundThreadBase.js +20 -11
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/commands/createTypeStub.js +3 -2
- package/dist/commands/createTypeStub.js.map +1 -1
- package/dist/commands/dumpFileDebugInfoCommand.js +21 -20
- package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
- package/dist/commands/quickActionCommand.js +5 -5
- package/dist/commands/quickActionCommand.js.map +1 -1
- package/dist/common/configOptions.d.ts +14 -13
- package/dist/common/configOptions.js +29 -27
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/diagnostic.d.ts +6 -5
- package/dist/common/diagnostic.js +2 -2
- package/dist/common/diagnostic.js.map +1 -1
- package/dist/common/diagnosticSink.d.ts +2 -1
- package/dist/common/diagnosticSink.js.map +1 -1
- package/dist/common/editAction.d.ts +6 -5
- package/dist/common/editAction.js +2 -2
- package/dist/common/editAction.js.map +1 -1
- package/dist/common/envVarUtils.d.ts +2 -1
- package/dist/common/envVarUtils.js +20 -28
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/extensibility.d.ts +19 -19
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/fileSystem.d.ts +29 -28
- package/dist/common/fileWatcher.d.ts +3 -2
- package/dist/common/fileWatcher.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +8 -7
- package/dist/common/fullAccessHost.js +21 -16
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +7 -6
- package/dist/common/host.js +1 -1
- package/dist/common/host.js.map +1 -1
- package/dist/common/logTracker.d.ts +2 -1
- package/dist/common/logTracker.js +4 -4
- package/dist/common/logTracker.js.map +1 -1
- package/dist/common/pathUtils.d.ts +1 -28
- package/dist/common/pathUtils.js +17 -366
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/realFileSystem.d.ts +7 -3
- package/dist/common/realFileSystem.js +78 -60
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProviderExtensions.d.ts +2 -1
- package/dist/common/serviceProviderExtensions.js +5 -2
- package/dist/common/serviceProviderExtensions.js.map +1 -1
- package/dist/common/textEditTracker.d.ts +2 -1
- package/dist/common/textEditTracker.js +28 -28
- package/dist/common/textEditTracker.js.map +1 -1
- package/dist/common/textRange.d.ts +2 -1
- package/dist/common/textRange.js.map +1 -1
- package/dist/common/uri/baseUri.d.ts +51 -0
- package/dist/common/uri/baseUri.js +194 -0
- package/dist/common/uri/baseUri.js.map +1 -0
- package/dist/common/uri/emptyUri.d.ts +32 -0
- package/dist/common/uri/emptyUri.js +122 -0
- package/dist/common/uri/emptyUri.js.map +1 -0
- package/dist/common/uri/fileUri.d.ts +36 -0
- package/dist/common/uri/fileUri.js +180 -0
- package/dist/common/uri/fileUri.js.map +1 -0
- package/dist/common/uri/memoization.d.ts +3 -0
- package/dist/common/uri/memoization.js +72 -0
- package/dist/common/uri/memoization.js.map +1 -0
- package/dist/common/uri/uri.d.ts +50 -0
- package/dist/common/uri/uri.js +104 -0
- package/dist/common/uri/uri.js.map +1 -0
- package/dist/common/uri/uriUtils.d.ts +39 -0
- package/dist/common/uri/uriUtils.js +362 -0
- package/dist/common/uri/uriUtils.js.map +1 -0
- package/dist/common/uri/webUri.d.ts +36 -0
- package/dist/common/uri/webUri.js +207 -0
- package/dist/common/uri/webUri.js.map +1 -0
- package/dist/common/workspaceEditUtils.d.ts +8 -8
- package/dist/common/workspaceEditUtils.js +34 -37
- package/dist/common/workspaceEditUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +19 -22
- package/dist/languageServerBase.js +91 -95
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/analyzerServiceExecutor.d.ts +2 -1
- package/dist/languageService/analyzerServiceExecutor.js +14 -16
- package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
- package/dist/languageService/autoImporter.d.ts +11 -9
- package/dist/languageService/autoImporter.js +45 -44
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.d.ts +3 -2
- package/dist/languageService/callHierarchyProvider.js +23 -35
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/codeActionProvider.d.ts +2 -1
- package/dist/languageService/codeActionProvider.js +8 -10
- package/dist/languageService/codeActionProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +7 -6
- package/dist/languageService/completionProvider.js +32 -30
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +2 -1
- package/dist/languageService/completionProviderUtils.js +1 -1
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/definitionProvider.d.ts +4 -3
- package/dist/languageService/definitionProvider.js +26 -24
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentHighlightProvider.d.ts +3 -2
- package/dist/languageService/documentHighlightProvider.js +3 -3
- package/dist/languageService/documentHighlightProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +8 -7
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.d.ts +5 -4
- package/dist/languageService/documentSymbolProvider.js +9 -11
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/hoverProvider.d.ts +4 -3
- package/dist/languageService/hoverProvider.js +6 -5
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/navigationUtils.d.ts +2 -1
- package/dist/languageService/navigationUtils.js +2 -3
- package/dist/languageService/navigationUtils.js.map +1 -1
- package/dist/languageService/quickActions.d.ts +2 -1
- package/dist/languageService/quickActions.js +3 -3
- package/dist/languageService/quickActions.js.map +1 -1
- package/dist/languageService/referencesProvider.d.ts +10 -9
- package/dist/languageService/referencesProvider.js +28 -28
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/renameProvider.d.ts +4 -3
- package/dist/languageService/renameProvider.js +17 -18
- package/dist/languageService/renameProvider.js.map +1 -1
- package/dist/languageService/signatureHelpProvider.d.ts +3 -2
- package/dist/languageService/signatureHelpProvider.js +4 -4
- package/dist/languageService/signatureHelpProvider.js.map +1 -1
- package/dist/languageService/symbolIndexer.d.ts +2 -1
- package/dist/languageService/symbolIndexer.js +1 -1
- package/dist/languageService/symbolIndexer.js.map +1 -1
- package/dist/languageService/tooltipUtils.js +10 -4
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/languageService/workspaceSymbolProvider.d.ts +4 -3
- package/dist/languageService/workspaceSymbolProvider.js +10 -11
- package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +1 -0
- package/dist/localization/localize.js +1 -0
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +2 -1
- package/dist/pyright.js +18 -17
- package/dist/pyright.js.map +1 -1
- package/dist/pyrightFileSystem.d.ts +13 -13
- package/dist/pyrightFileSystem.js +38 -43
- package/dist/pyrightFileSystem.js.map +1 -1
- package/dist/readonlyAugmentedFileSystem.d.ts +29 -28
- package/dist/readonlyAugmentedFileSystem.js +62 -65
- package/dist/readonlyAugmentedFileSystem.js.map +1 -1
- package/dist/server.js +21 -20
- package/dist/server.js.map +1 -1
- package/dist/tests/chainedSourceFiles.test.js +39 -30
- package/dist/tests/chainedSourceFiles.test.js.map +1 -1
- package/dist/tests/checker.test.js +31 -30
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/completions.test.js +7 -3
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/config.test.js +24 -22
- package/dist/tests/config.test.js.map +1 -1
- package/dist/tests/documentSymbolCollector.test.js +3 -2
- package/dist/tests/documentSymbolCollector.test.js.map +1 -1
- package/dist/tests/filesystem.test.js +37 -35
- package/dist/tests/filesystem.test.js.map +1 -1
- package/dist/tests/fourSlashParser.test.js +4 -4
- package/dist/tests/fourSlashParser.test.js.map +1 -1
- package/dist/tests/fourslash/hover.docstring.alias.fourslash.js +27 -11
- package/dist/tests/fourslash/hover.docstring.alias.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/fourSlashParser.js +2 -2
- package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.d.ts +4 -5
- package/dist/tests/harness/fourslash/testLanguageService.js +9 -15
- package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.d.ts +4 -4
- package/dist/tests/harness/fourslash/testState.js +91 -51
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/harness/testAccessHost.d.ts +3 -2
- package/dist/tests/harness/testAccessHost.js +2 -1
- package/dist/tests/harness/testAccessHost.js.map +1 -1
- package/dist/tests/harness/testHost.js +13 -11
- package/dist/tests/harness/testHost.js.map +1 -1
- package/dist/tests/harness/vfs/factory.d.ts +3 -2
- package/dist/tests/harness/vfs/factory.js +5 -4
- package/dist/tests/harness/vfs/factory.js.map +1 -1
- package/dist/tests/harness/vfs/filesystem.d.ts +32 -31
- package/dist/tests/harness/vfs/filesystem.js +47 -49
- package/dist/tests/harness/vfs/filesystem.js.map +1 -1
- package/dist/tests/harness/vfs/pathValidation.js +1 -10
- package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
- package/dist/tests/importResolver.test.js +81 -58
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/importStatementUtils.test.js +10 -9
- package/dist/tests/importStatementUtils.test.js.map +1 -1
- package/dist/tests/ipythonMode.test.js +12 -11
- package/dist/tests/ipythonMode.test.js.map +1 -1
- package/dist/tests/logger.test.js +2 -1
- package/dist/tests/logger.test.js.map +1 -1
- package/dist/tests/parseTreeUtils.test.js +2 -1
- package/dist/tests/parseTreeUtils.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js +3 -138
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/pyrightFileSystem.test.js +38 -34
- package/dist/tests/pyrightFileSystem.test.js.map +1 -1
- package/dist/tests/service.test.js +37 -42
- package/dist/tests/service.test.js.map +1 -1
- package/dist/tests/signatureHelp.test.js +3 -2
- package/dist/tests/signatureHelp.test.js.map +1 -1
- package/dist/tests/sourceFile.test.js +8 -7
- package/dist/tests/sourceFile.test.js.map +1 -1
- package/dist/tests/sourceMapperUtils.test.js +13 -6
- package/dist/tests/sourceMapperUtils.test.js.map +1 -1
- package/dist/tests/testState.test.js +13 -9
- package/dist/tests/testState.test.js.map +1 -1
- package/dist/tests/testStateUtils.d.ts +2 -5
- package/dist/tests/testStateUtils.js +27 -64
- package/dist/tests/testStateUtils.js.map +1 -1
- package/dist/tests/testUtils.d.ts +3 -5
- package/dist/tests/testUtils.js +15 -64
- package/dist/tests/testUtils.js.map +1 -1
- package/dist/tests/textEditUtil.test.js +4 -3
- package/dist/tests/textEditUtil.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +16 -15
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +18 -9
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +73 -62
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +20 -19
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +28 -27
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/dist/tests/typePrinter.test.js +4 -3
- package/dist/tests/typePrinter.test.js.map +1 -1
- package/dist/tests/uri.test.d.ts +1 -0
- package/dist/tests/uri.test.js +695 -0
- package/dist/tests/uri.test.js.map +1 -0
- package/dist/tests/workspaceEditUtils.test.js +28 -28
- package/dist/tests/workspaceEditUtils.test.js.map +1 -1
- package/dist/tests/zipfs.test.js +11 -11
- package/dist/tests/zipfs.test.js.map +1 -1
- package/dist/workspaceFactory.d.ts +13 -14
- package/dist/workspaceFactory.js +54 -55
- package/dist/workspaceFactory.js.map +1 -1
- package/package.json +2 -2
- package/dist/common/uriParser.d.ts +0 -24
- package/dist/common/uriParser.js +0 -45
- package/dist/common/uriParser.js.map +0 -1
package/dist/analyzer/checker.js
CHANGED
@@ -42,9 +42,9 @@ const collectionUtils_1 = require("../common/collectionUtils");
|
|
42
42
|
const debug_1 = require("../common/debug");
|
43
43
|
const diagnostic_1 = require("../common/diagnostic");
|
44
44
|
const diagnosticRules_1 = require("../common/diagnosticRules");
|
45
|
-
const pathUtils_1 = require("../common/pathUtils");
|
46
45
|
const pythonVersion_1 = require("../common/pythonVersion");
|
47
46
|
const textRange_1 = require("../common/textRange");
|
47
|
+
const uri_1 = require("../common/uri/uri");
|
48
48
|
const definitionProvider_1 = require("../languageService/definitionProvider");
|
49
49
|
const localize_1 = require("../localization/localize");
|
50
50
|
const parseNodes_1 = require("../parser/parseNodes");
|
@@ -98,7 +98,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
98
98
|
// Report code complexity issues for the module.
|
99
99
|
const codeComplexity = AnalyzerNodeInfo.getCodeFlowComplexity(this._moduleNode);
|
100
100
|
if (isPrintCodeComplexityEnabled) {
|
101
|
-
console.log(`Code complexity of module ${this._fileInfo.
|
101
|
+
console.log(`Code complexity of module ${this._fileInfo.fileUri.toUserVisibleString()} is ${codeComplexity.toString()}`);
|
102
102
|
}
|
103
103
|
if (codeComplexity > typeEvaluator_1.maxCodeComplexity) {
|
104
104
|
this._evaluator.addDiagnosticForTextRange(this._fileInfo, this._fileInfo.diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.codeTooComplexToAnalyze(), { start: 0, length: 0 });
|
@@ -994,10 +994,11 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
994
994
|
continue;
|
995
995
|
}
|
996
996
|
const resolvedAlias = this._evaluator.resolveAliasDeclaration(decl, /* resolveLocalNames */ true);
|
997
|
-
|
997
|
+
const resolvedAliasUri = resolvedAlias === null || resolvedAlias === void 0 ? void 0 : resolvedAlias.uri;
|
998
|
+
if (!resolvedAliasUri || !(0, sourceMapper_1.isStubFile)(resolvedAliasUri)) {
|
998
999
|
continue;
|
999
1000
|
}
|
1000
|
-
const importResult = this._getImportResult(node,
|
1001
|
+
const importResult = this._getImportResult(node, resolvedAliasUri);
|
1001
1002
|
if (!importResult) {
|
1002
1003
|
continue;
|
1003
1004
|
}
|
@@ -1074,17 +1075,17 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
1074
1075
|
// Don't explore further.
|
1075
1076
|
return false;
|
1076
1077
|
}
|
1077
|
-
_getImportResult(node,
|
1078
|
-
const execEnv = this._importResolver.getConfigOptions().findExecEnvironment(
|
1078
|
+
_getImportResult(node, uri) {
|
1079
|
+
const execEnv = this._importResolver.getConfigOptions().findExecEnvironment(uri);
|
1079
1080
|
const moduleNameNode = node.parent.module;
|
1080
1081
|
// Handle both absolute and relative imports.
|
1081
1082
|
const moduleName = moduleNameNode.leadingDots === 0
|
1082
|
-
? this._importResolver.getModuleNameForImport(
|
1083
|
-
: (0, importStatementUtils_1.getRelativeModuleName)(this._importResolver.fileSystem, this._fileInfo.
|
1083
|
+
? this._importResolver.getModuleNameForImport(uri, execEnv).moduleName
|
1084
|
+
: (0, importStatementUtils_1.getRelativeModuleName)(this._importResolver.fileSystem, this._fileInfo.fileUri, uri);
|
1084
1085
|
if (!moduleName) {
|
1085
1086
|
return undefined;
|
1086
1087
|
}
|
1087
|
-
return this._importResolver.resolveImport(this._fileInfo.
|
1088
|
+
return this._importResolver.resolveImport(this._fileInfo.fileUri, execEnv, (0, importResolver_1.createImportedModuleDescriptor)(moduleName));
|
1088
1089
|
}
|
1089
1090
|
_addMissingModuleSourceDiagnosticIfNeeded(importResult, node) {
|
1090
1091
|
if (importResult.isNativeLib ||
|
@@ -2078,7 +2079,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
2078
2079
|
index: index + 1,
|
2079
2080
|
}) + diag.getString(), implementationFunction.details.declaration.node.name);
|
2080
2081
|
if (diagnostic && overload.details.declaration) {
|
2081
|
-
diagnostic.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overloadSignature(), (_b = (_a = overload.details.declaration) === null || _a === void 0 ? void 0 : _a.
|
2082
|
+
diagnostic.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overloadSignature(), (_b = (_a = overload.details.declaration) === null || _a === void 0 ? void 0 : _a.uri) !== null && _b !== void 0 ? _b : primaryDecl.uri, (_d = (_c = overload.details.declaration) === null || _c === void 0 ? void 0 : _c.range) !== null && _d !== void 0 ? _d : primaryDecl.range);
|
2082
2083
|
}
|
2083
2084
|
}
|
2084
2085
|
}
|
@@ -2248,7 +2249,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
2248
2249
|
}
|
2249
2250
|
}
|
2250
2251
|
if (primaryDeclNode) {
|
2251
|
-
diag.addRelatedInfo(primaryDeclInfo, primaryDecl.
|
2252
|
+
diag.addRelatedInfo(primaryDeclInfo, primaryDecl.uri, primaryDecl.range);
|
2252
2253
|
}
|
2253
2254
|
}
|
2254
2255
|
};
|
@@ -2881,6 +2882,15 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
2881
2882
|
// the call expression and determine whether any of them
|
2882
2883
|
// are deprecated.
|
2883
2884
|
getDeprecatedMessageForOverloadedCall(this._evaluator, subtype);
|
2885
|
+
// If there the implementation itself is deprecated, assume it
|
2886
|
+
// is deprecated even if it's outside of a call expression.
|
2887
|
+
const overloadImpl = types_1.OverloadedFunctionType.getImplementation(subtype);
|
2888
|
+
if ((overloadImpl === null || overloadImpl === void 0 ? void 0 : overloadImpl.details.deprecatedMessage) !== undefined) {
|
2889
|
+
if (!overloadImpl.details.name || node.value === overloadImpl.details.name) {
|
2890
|
+
deprecatedMessage = overloadImpl.details.deprecatedMessage;
|
2891
|
+
errorMessage = getDeprecatedMessageForFunction(overloadImpl);
|
2892
|
+
}
|
2893
|
+
}
|
2884
2894
|
}
|
2885
2895
|
});
|
2886
2896
|
if (errorMessage) {
|
@@ -2953,18 +2963,18 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
2953
2963
|
const stdlibPath = this._importResolver.getTypeshedStdLibPath(this._fileInfo.executionEnvironment);
|
2954
2964
|
if (stdlibPath &&
|
2955
2965
|
this._importResolver.isStdlibModule(desc, this._fileInfo.executionEnvironment) &&
|
2956
|
-
this._sourceMapper.isUserCode(this._fileInfo.
|
2966
|
+
this._sourceMapper.isUserCode(this._fileInfo.fileUri)) {
|
2957
2967
|
// This means the user has a module that is overwriting the stdlib module.
|
2958
2968
|
const diag = this._evaluator.addDiagnosticForTextRange(this._fileInfo, this._fileInfo.diagnosticRuleSet.reportShadowedImports, diagnosticRules_1.DiagnosticRule.reportShadowedImports, localize_1.Localizer.Diagnostic.stdlibModuleOverridden().format({
|
2959
2969
|
name: moduleName,
|
2960
|
-
path: this._fileInfo.
|
2970
|
+
path: this._fileInfo.fileUri.toUserVisibleString(),
|
2961
2971
|
}), this._moduleNode);
|
2962
2972
|
// Add a quick action that renames the file.
|
2963
2973
|
if (diag) {
|
2964
2974
|
const renameAction = {
|
2965
2975
|
action: "renameShadowedFile" /* ActionKind.RenameShadowedFileAction */,
|
2966
|
-
|
2967
|
-
|
2976
|
+
oldUri: this._fileInfo.fileUri,
|
2977
|
+
newUri: this._sourceMapper.getNextFileName(this._fileInfo.fileUri),
|
2968
2978
|
};
|
2969
2979
|
diag.addAction(renameAction);
|
2970
2980
|
}
|
@@ -3002,20 +3012,20 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
3002
3012
|
if (stdlibPath && this._importResolver.isStdlibModule(module, this._fileInfo.executionEnvironment)) {
|
3003
3013
|
// If the definition for this name is in 'user' module, it is overwriting the stdlib module.
|
3004
3014
|
const definitions = definitionProvider_1.DefinitionProvider.getDefinitionsForNode(this._sourceMapper, this._evaluator, namePartNodes[namePartNodes.length - 1], namePartNodes[namePartNodes.length - 1].start, vscode_languageserver_1.CancellationToken.None);
|
3005
|
-
const paths = definitions ? definitions.map((d) => d.
|
3015
|
+
const paths = definitions ? definitions.map((d) => d.uri) : [];
|
3006
3016
|
paths.forEach((p) => {
|
3007
3017
|
if (!p.startsWith(stdlibPath) && !(0, sourceMapper_1.isStubFile)(p) && this._sourceMapper.isUserCode(p)) {
|
3008
3018
|
// This means the user has a module that is overwriting the stdlib module.
|
3009
3019
|
const diag = this._evaluator.addDiagnostic(this._fileInfo.diagnosticRuleSet.reportShadowedImports, diagnosticRules_1.DiagnosticRule.reportShadowedImports, localize_1.Localizer.Diagnostic.stdlibModuleOverridden().format({
|
3010
3020
|
name: nameParts.join('.'),
|
3011
|
-
path: p,
|
3021
|
+
path: p.toUserVisibleString(),
|
3012
3022
|
}), node);
|
3013
3023
|
// Add a quick action that renames the file.
|
3014
3024
|
if (diag) {
|
3015
3025
|
const renameAction = {
|
3016
3026
|
action: "renameShadowedFile" /* ActionKind.RenameShadowedFileAction */,
|
3017
|
-
|
3018
|
-
|
3027
|
+
oldUri: p,
|
3028
|
+
newUri: this._sourceMapper.getNextFileName(p),
|
3019
3029
|
};
|
3020
3030
|
diag.addAction(renameAction);
|
3021
3031
|
}
|
@@ -3371,7 +3381,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
3371
3381
|
}
|
3372
3382
|
else if (decls[0].type === 5 /* DeclarationType.Function */) {
|
3373
3383
|
if (decls.every((decl) => decl.type !== 5 /* DeclarationType.Function */ || ParseTreeUtils.isSuiteEmpty(decl.node.suite))) {
|
3374
|
-
if (
|
3384
|
+
if (!decls[0].uri.hasExtension('.pyi')) {
|
3375
3385
|
if (!isSymbolImplemented(name)) {
|
3376
3386
|
diagAddendum.addMessage(localize_1.Localizer.DiagnosticAddendum.missingProtocolMember().format({
|
3377
3387
|
name,
|
@@ -3451,7 +3461,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
3451
3461
|
if (diagnostic) {
|
3452
3462
|
const fieldDecls = symbol.getTypedDeclarations();
|
3453
3463
|
if (fieldDecls.length > 0) {
|
3454
|
-
diagnostic.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.dataClassFieldLocation(), fieldDecls[0].
|
3464
|
+
diagnostic.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.dataClassFieldLocation(), fieldDecls[0].uri, fieldDecls[0].range);
|
3455
3465
|
}
|
3456
3466
|
}
|
3457
3467
|
}
|
@@ -3613,7 +3623,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
3613
3623
|
const updatedTypeParams = classType.details.typeParameters.map((typeParam) => types_1.TypeVarType.cloneAsInvariant(typeParam));
|
3614
3624
|
const updatedClassType = types_1.ClassType.cloneWithNewTypeParameters(classType, updatedTypeParams);
|
3615
3625
|
const objectObject = types_1.ClassType.cloneAsInstance(objectType);
|
3616
|
-
const dummyTypeObject = types_1.ClassType.createInstantiable('__varianceDummy', '', '',
|
3626
|
+
const dummyTypeObject = types_1.ClassType.createInstantiable('__varianceDummy', '', '', uri_1.Uri.empty(), 0, 0, undefined, undefined);
|
3617
3627
|
updatedTypeParams.forEach((param, paramIndex) => {
|
3618
3628
|
// Skip variadics and ParamSpecs.
|
3619
3629
|
if (param.details.isVariadic || param.details.isParamSpec) {
|
@@ -3801,7 +3811,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
3801
3811
|
? localize_1.Localizer.DiagnosticAddendum.newMethodLocation()
|
3802
3812
|
: localize_1.Localizer.DiagnosticAddendum.initMethodLocation()).format({
|
3803
3813
|
type: this._evaluator.printType(types_1.ClassType.cloneAsInstance(displayOnInit ? newMethodResult.classType : initMethodResult.classType)),
|
3804
|
-
}), secondaryDecl.
|
3814
|
+
}), secondaryDecl.uri, secondaryDecl.range);
|
3805
3815
|
}
|
3806
3816
|
}
|
3807
3817
|
}
|
@@ -4061,11 +4071,11 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4061
4071
|
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.baseClassOverriddenType().format({
|
4062
4072
|
baseClass: this._evaluator.printType((0, typeUtils_1.convertToInstance)(overriddenClassAndSymbol.classType)),
|
4063
4073
|
type: this._evaluator.printType(overriddenType),
|
4064
|
-
}), overriddenDecl.
|
4074
|
+
}), overriddenDecl.uri, overriddenDecl.range);
|
4065
4075
|
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.baseClassOverridesType().format({
|
4066
4076
|
baseClass: this._evaluator.printType((0, typeUtils_1.convertToInstance)(overrideClassAndSymbol.classType)),
|
4067
4077
|
type: this._evaluator.printType(overrideType),
|
4068
|
-
}), overrideDecl.
|
4078
|
+
}), overrideDecl.uri, overrideDecl.range);
|
4069
4079
|
}
|
4070
4080
|
}
|
4071
4081
|
// Validates that any overridden methods or variables contain the same
|
@@ -4230,7 +4240,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4230
4240
|
}) + diagAddendum.getString(), decl.type === 5 /* DeclarationType.Function */ ? decl.node.name : decl.node);
|
4231
4241
|
const origDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(baseClassAndSymbol.symbol);
|
4232
4242
|
if (diag && origDecl) {
|
4233
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.
|
4243
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.uri, origDecl.range);
|
4234
4244
|
}
|
4235
4245
|
}
|
4236
4246
|
}
|
@@ -4246,7 +4256,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4246
4256
|
}), decl.node.name);
|
4247
4257
|
const origDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(baseClassAndSymbol.symbol);
|
4248
4258
|
if (diag && origDecl) {
|
4249
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.finalMethod(), origDecl.
|
4259
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.finalMethod(), origDecl.uri, origDecl.range);
|
4250
4260
|
}
|
4251
4261
|
}
|
4252
4262
|
}
|
@@ -4267,7 +4277,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4267
4277
|
}), lastDecl.node);
|
4268
4278
|
const origDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(baseClassAndSymbol.symbol);
|
4269
4279
|
if (diag && origDecl) {
|
4270
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.
|
4280
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.uri, origDecl.range);
|
4271
4281
|
}
|
4272
4282
|
}
|
4273
4283
|
}
|
@@ -4313,7 +4323,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4313
4323
|
}) + diagAddendum.getString(), decls[decls.length - 1].node);
|
4314
4324
|
const origDecl = baseClassMethodType.details.declaration;
|
4315
4325
|
if (diag && origDecl) {
|
4316
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.
|
4326
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.uri, origDecl.range);
|
4317
4327
|
}
|
4318
4328
|
}
|
4319
4329
|
}
|
@@ -4332,7 +4342,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4332
4342
|
}) + diagAddendum.getString(), decl.node.name);
|
4333
4343
|
const origDecl = baseClassMethodType.details.declaration;
|
4334
4344
|
if (diag && origDecl) {
|
4335
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.
|
4345
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenMethod(), origDecl.uri, origDecl.range);
|
4336
4346
|
}
|
4337
4347
|
}
|
4338
4348
|
}
|
@@ -4391,7 +4401,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4391
4401
|
}) + diagAddendum.getString(), (_a = (0, declarationUtils_1.getNameNodeForDeclaration)(lastDecl)) !== null && _a !== void 0 ? _a : lastDecl.node);
|
4392
4402
|
const origDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(baseClassAndSymbol.symbol);
|
4393
4403
|
if (diag && origDecl) {
|
4394
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), origDecl.
|
4404
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), origDecl.uri, origDecl.range);
|
4395
4405
|
}
|
4396
4406
|
}
|
4397
4407
|
else if (overriddenTDEntry && overrideTDEntry) {
|
@@ -4428,7 +4438,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4428
4438
|
className: baseClass.details.name,
|
4429
4439
|
}), lastDecl.node);
|
4430
4440
|
if (diag) {
|
4431
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), overrideFinalVarDecl.
|
4441
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), overrideFinalVarDecl.uri, overrideFinalVarDecl.range);
|
4432
4442
|
}
|
4433
4443
|
}
|
4434
4444
|
// Verify that a class variable isn't overriding an instance
|
@@ -4458,7 +4468,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
|
|
4458
4468
|
}), (_b = (0, declarationUtils_1.getNameNodeForDeclaration)(lastDecl)) !== null && _b !== void 0 ? _b : lastDecl.node);
|
4459
4469
|
const origDecl = (0, symbolUtils_1.getLastTypedDeclaredForSymbol)(baseClassAndSymbol.symbol);
|
4460
4470
|
if (diag && origDecl) {
|
4461
|
-
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), origDecl.
|
4471
|
+
diag.addRelatedInfo(localize_1.Localizer.DiagnosticAddendum.overriddenSymbol(), origDecl.uri, origDecl.range);
|
4462
4472
|
}
|
4463
4473
|
}
|
4464
4474
|
}
|