@zzzen/pyright-internal 1.2.0-dev.20231126 → 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 +59 -52
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.d.ts +4 -1
- package/dist/analyzer/checker.js +189 -42
- 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 +36 -36
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/commentUtils.js +7 -0
- package/dist/analyzer/commentUtils.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +14 -5
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/constructors.js +2 -1
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/dataClasses.js +58 -47
- 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/operations.js +16 -14
- package/dist/analyzer/operations.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/protocols.js +27 -13
- package/dist/analyzer/protocols.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 +298 -231
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -1
- package/dist/analyzer/typeEvaluatorTypes.js +1 -1
- package/dist/analyzer/typeEvaluatorTypes.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 +5 -3
- package/dist/analyzer/typeUtils.js +32 -17
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typeVarContext.d.ts +2 -0
- package/dist/analyzer/typeVarContext.js +27 -0
- package/dist/analyzer/typeVarContext.js.map +1 -1
- package/dist/analyzer/typedDicts.js +6 -36
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +8 -12
- package/dist/analyzer/types.js +13 -20
- 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/commandController.js +1 -2
- package/dist/commands/commandController.js.map +1 -1
- package/dist/commands/commands.d.ts +0 -1
- package/dist/commands/commands.js +0 -1
- package/dist/commands/commands.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 +15 -13
- package/dist/common/configOptions.js +120 -30
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/diagnostic.d.ts +6 -9
- 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 -24
- 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 -2
- package/dist/languageService/quickActions.js +3 -83
- 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 +13 -9
- package/dist/localization/localize.js +7 -4
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.cs.json +0 -4
- package/dist/localization/package.nls.de.json +0 -4
- package/dist/localization/package.nls.en-us.json +9 -6
- package/dist/localization/package.nls.es.json +2 -6
- package/dist/localization/package.nls.fr.json +0 -4
- package/dist/localization/package.nls.it.json +0 -4
- package/dist/localization/package.nls.ja.json +0 -4
- package/dist/localization/package.nls.ko.json +0 -4
- package/dist/localization/package.nls.pl.json +0 -4
- package/dist/localization/package.nls.pt-br.json +0 -4
- package/dist/localization/package.nls.qps-ploc.json +0 -4
- package/dist/localization/package.nls.ru.json +0 -4
- package/dist/localization/package.nls.tr.json +0 -4
- package/dist/localization/package.nls.zh-cn.json +0 -4
- package/dist/localization/package.nls.zh-tw.json +0 -4
- package/dist/pyright.js +18 -17
- package/dist/pyright.js.map +1 -1
- package/dist/pyrightFileSystem.d.ts +13 -13
- package/dist/pyrightFileSystem.js +39 -44
- package/dist/pyrightFileSystem.js.map +1 -1
- package/dist/readonlyAugmentedFileSystem.d.ts +29 -28
- package/dist/readonlyAugmentedFileSystem.js +68 -61
- package/dist/readonlyAugmentedFileSystem.js.map +1 -1
- package/dist/server.js +22 -21
- 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 +38 -29
- 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/fourslash.d.ts +1 -2
- 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.Consts.d.ts +1 -2
- package/dist/tests/harness/fourslash/testState.Consts.js +0 -1
- package/dist/tests/harness/fourslash/testState.Consts.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.d.ts +4 -4
- package/dist/tests/harness/fourslash/testState.js +92 -52
- 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 +76 -25
- 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 +23 -19
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +21 -12
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +84 -70
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +26 -21
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +36 -31
- 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
@@ -32,40 +32,32 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
32
32
|
Object.defineProperty(exports, "__esModule", { value: true });
|
33
33
|
exports.expandPathVariables = void 0;
|
34
34
|
const os = __importStar(require("os"));
|
35
|
-
const pathUtils_1 = require("./pathUtils");
|
36
35
|
// Expands certain predefined variables supported within VS Code settings.
|
37
36
|
// Ideally, VS Code would provide an API for doing this expansion, but
|
38
37
|
// it doesn't. We'll handle the most common variables here as a convenience.
|
39
38
|
function expandPathVariables(rootPath, path) {
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
}
|
50
|
-
else if (trimmedPart === '${env:USERNAME}' && process.env.USERNAME !== undefined) {
|
51
|
-
expandedParts.push(process.env.USERNAME);
|
52
|
-
}
|
53
|
-
else if (trimmedPart === '${env:VIRTUAL_ENV}' && process.env.VIRTUAL_ENV !== undefined) {
|
54
|
-
expandedParts.push(process.env.VIRTUAL_ENV);
|
55
|
-
}
|
56
|
-
else if (trimmedPart === '~' && os.homedir) {
|
57
|
-
expandedParts.push(os.homedir() || process.env.HOME || process.env.USERPROFILE || '~');
|
58
|
-
}
|
59
|
-
else {
|
60
|
-
expandedParts.push(part);
|
61
|
-
}
|
39
|
+
// Make sure the pathStr looks like a URI path.
|
40
|
+
let pathStr = path.replace(/\\/g, '/');
|
41
|
+
// Make sure all replacements look like URI paths too.
|
42
|
+
const replace = (match, replaceValue) => {
|
43
|
+
pathStr = pathStr.replace(match, replaceValue.replace(/\\/g, '/'));
|
44
|
+
};
|
45
|
+
// Replace everything inline.
|
46
|
+
pathStr = pathStr.replace(/\$\{workspaceFolder\}/g, rootPath.getPath());
|
47
|
+
if (process.env.HOME !== undefined) {
|
48
|
+
replace(/\$\{env:HOME\}/g, process.env.HOME || '');
|
62
49
|
}
|
63
|
-
if (
|
64
|
-
|
50
|
+
if (process.env.USERNAME !== undefined) {
|
51
|
+
replace(/\$\{env:USERNAME\}/g, process.env.USERNAME || '');
|
65
52
|
}
|
66
|
-
|
67
|
-
|
68
|
-
|
53
|
+
if (process.env.VIRTUAL_ENV !== undefined) {
|
54
|
+
replace(/\$\{env:VIRTUAL_ENV\}/g, process.env.VIRTUAL_ENV || '');
|
55
|
+
}
|
56
|
+
if (os.homedir) {
|
57
|
+
replace(/\/~/g, os.homedir() || process.env.HOME || process.env.USERPROFILE || '~');
|
58
|
+
replace(/^~/g, os.homedir() || process.env.HOME || process.env.USERPROFILE || '~');
|
59
|
+
}
|
60
|
+
return pathStr;
|
69
61
|
}
|
70
62
|
exports.expandPathVariables = expandPathVariables;
|
71
63
|
//# sourceMappingURL=envVarUtils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"envVarUtils.js","sourceRoot":"","sources":["../../../src/common/envVarUtils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;
|
1
|
+
{"version":3,"file":"envVarUtils.js","sourceRoot":"","sources":["../../../src/common/envVarUtils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AAIzB,0EAA0E;AAC1E,sEAAsE;AACtE,4EAA4E;AAC5E,SAAgB,mBAAmB,CAAC,QAAa,EAAE,IAAY;IAC3D,+CAA+C;IAC/C,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAEvC,sDAAsD;IACtD,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,YAAoB,EAAE,EAAE;QACpD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC;IAEF,6BAA6B;IAC7B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE;QAChC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;KACtD;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;KAC9D;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE;QACvC,OAAO,CAAC,wBAAwB,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;KACpE;IACD,IAAI,EAAE,CAAC,OAAO,EAAE;QACZ,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;QACpF,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;KACtF;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AA1BD,kDA0BC"}
|
@@ -2,26 +2,26 @@ import { CancellationToken } from 'vscode-languageserver';
|
|
2
2
|
import { Declaration } from '../analyzer/declaration';
|
3
3
|
import { ImportResolver } from '../analyzer/importResolver';
|
4
4
|
import * as prog from '../analyzer/program';
|
5
|
+
import { IPythonMode } from '../analyzer/sourceFile';
|
5
6
|
import { SourceMapper } from '../analyzer/sourceMapper';
|
7
|
+
import { SymbolTable } from '../analyzer/symbol';
|
6
8
|
import { TypeEvaluator } from '../analyzer/typeEvaluatorTypes';
|
9
|
+
import { Diagnostic } from '../common/diagnostic';
|
7
10
|
import { ServerSettings } from '../languageServerBase';
|
8
11
|
import { ParseNode } from '../parser/parseNodes';
|
9
12
|
import { ParseResults } from '../parser/parser';
|
10
13
|
import { ConfigOptions } from './configOptions';
|
11
14
|
import { ConsoleInterface } from './console';
|
12
15
|
import { ReadOnlyFileSystem } from './fileSystem';
|
13
|
-
import { Range } from './textRange';
|
14
|
-
import { SymbolTable } from '../analyzer/symbol';
|
15
|
-
import { Diagnostic } from '../common/diagnostic';
|
16
|
-
import { IPythonMode } from '../analyzer/sourceFile';
|
17
16
|
import { GroupServiceKey, ServiceKey } from './serviceProvider';
|
17
|
+
import { Range } from './textRange';
|
18
|
+
import { Uri } from './uri/uri';
|
18
19
|
export interface SourceFile {
|
19
20
|
isStubFile(): boolean;
|
20
21
|
isThirdPartyPyTypedPresent(): boolean;
|
21
22
|
getIPythonMode(): IPythonMode;
|
22
|
-
|
23
|
+
getUri(): Uri;
|
23
24
|
getFileContent(): string | undefined;
|
24
|
-
getRealFilePath(): string | undefined;
|
25
25
|
getClientVersion(): number | undefined;
|
26
26
|
getOpenFileContents(): string | undefined;
|
27
27
|
getModuleSymbolTable(): SymbolTable | undefined;
|
@@ -47,32 +47,32 @@ export interface ServiceProvider {
|
|
47
47
|
}
|
48
48
|
export interface ProgramView {
|
49
49
|
readonly id: string;
|
50
|
-
readonly rootPath:
|
50
|
+
readonly rootPath: Uri;
|
51
51
|
readonly console: ConsoleInterface;
|
52
52
|
readonly evaluator: TypeEvaluator | undefined;
|
53
53
|
readonly configOptions: ConfigOptions;
|
54
54
|
readonly importResolver: ImportResolver;
|
55
55
|
readonly fileSystem: ReadOnlyFileSystem;
|
56
56
|
readonly serviceProvider: ServiceProvider;
|
57
|
-
owns(
|
57
|
+
owns(uri: Uri): boolean;
|
58
58
|
getSourceFileInfoList(): readonly SourceFileInfo[];
|
59
|
-
getParseResults(
|
60
|
-
getSourceFileInfo(
|
61
|
-
|
62
|
-
getSourceMapper(
|
63
|
-
analyzeFile(
|
64
|
-
getDiagnosticsForRange(
|
59
|
+
getParseResults(fileUri: Uri): ParseResults | undefined;
|
60
|
+
getSourceFileInfo(fileUri: Uri): SourceFileInfo | undefined;
|
61
|
+
getChainedUri(fileUri: Uri): Uri | undefined;
|
62
|
+
getSourceMapper(fileUri: Uri, token: CancellationToken, mapCompiled?: boolean, preferStubs?: boolean): SourceMapper;
|
63
|
+
analyzeFile(fileUri: Uri, token: CancellationToken): boolean;
|
64
|
+
getDiagnosticsForRange(fileUri: Uri, range: Range): Diagnostic[];
|
65
65
|
handleMemoryHighUsage(): void;
|
66
66
|
clone(): prog.Program;
|
67
67
|
}
|
68
68
|
export interface EditableProgram extends ProgramView {
|
69
|
-
addInterimFile(
|
70
|
-
setFileOpened(
|
71
|
-
|
69
|
+
addInterimFile(uri: Uri): void;
|
70
|
+
setFileOpened(fileUri: Uri, version: number | null, contents: string, options?: prog.OpenFileOptions): void;
|
71
|
+
updateChainedUri(fileUri: Uri, chainedUri: Uri | undefined): void;
|
72
72
|
}
|
73
73
|
export interface ProgramMutator {
|
74
74
|
addInterimFile(file: string): void;
|
75
|
-
setFileOpened(
|
75
|
+
setFileOpened(fileUri: Uri, version: number | null, contents: string, ipythonMode: IPythonMode, chainedFilePath?: string, realFilePath?: string): void;
|
76
76
|
updateOpenFileContents(path: string, version: number | null, contents: string, ipythonMode: IPythonMode, realFilePath?: string): void;
|
77
77
|
}
|
78
78
|
export declare enum ReferenceUseCase {
|
@@ -97,7 +97,7 @@ export interface SymbolUsageProvider {
|
|
97
97
|
appendDeclarationsAt(context: ParseNode, from: readonly Declaration[], to: Declaration[]): void;
|
98
98
|
}
|
99
99
|
export interface StatusMutationListener {
|
100
|
-
fileDirty?: (
|
100
|
+
fileDirty?: (fileUri: Uri) => void;
|
101
101
|
clearCache?: () => void;
|
102
102
|
updateSettings?: <T extends ServerSettings>(settings: T) => void;
|
103
103
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"extensibility.js","sourceRoot":"","sources":["../../../src/common/extensibility.ts"],"names":[],"mappings":";AAAA;;;;;;EAME;;;
|
1
|
+
{"version":3,"file":"extensibility.js","sourceRoot":"","sources":["../../../src/common/extensibility.ts"],"names":[],"mappings":";AAAA;;;;;;EAME;;;AA2HF,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,2DAAM,CAAA;IACN,mEAAU,CAAA;AACd,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
|
@@ -2,6 +2,7 @@
|
|
2
2
|
/// <reference types="node" />
|
3
3
|
import type * as fs from 'fs';
|
4
4
|
import { FileWatcher, FileWatcherEventHandler } from './fileWatcher';
|
5
|
+
import { Uri } from './uri/uri';
|
5
6
|
export interface Stats {
|
6
7
|
size: number;
|
7
8
|
mtimeMs: number;
|
@@ -18,42 +19,42 @@ export interface MkDirOptions {
|
|
18
19
|
recursive: boolean;
|
19
20
|
}
|
20
21
|
export interface ReadOnlyFileSystem {
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
readFileSync(
|
27
|
-
readFileSync(
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
isInZip(
|
22
|
+
readonly isCaseSensitive: boolean;
|
23
|
+
existsSync(uri: Uri): boolean;
|
24
|
+
chdir(uri: Uri): void;
|
25
|
+
readdirEntriesSync(uri: Uri): fs.Dirent[];
|
26
|
+
readdirSync(uri: Uri): string[];
|
27
|
+
readFileSync(uri: Uri, encoding?: null): Buffer;
|
28
|
+
readFileSync(uri: Uri, encoding: BufferEncoding): string;
|
29
|
+
readFileSync(uri: Uri, encoding?: BufferEncoding | null): string | Buffer;
|
30
|
+
statSync(uri: Uri): Stats;
|
31
|
+
realpathSync(uri: Uri): Uri;
|
32
|
+
getModulePath(): Uri;
|
33
|
+
readFile(uri: Uri): Promise<Buffer>;
|
34
|
+
readFileText(uri: Uri, encoding?: BufferEncoding): Promise<string>;
|
35
|
+
realCasePath(uri: Uri): Uri;
|
36
|
+
isMappedUri(uri: Uri): boolean;
|
37
|
+
getOriginalUri(mappedUri: Uri): Uri;
|
38
|
+
getMappedUri(originalUri: Uri): Uri;
|
39
|
+
isInZip(uri: Uri): boolean;
|
39
40
|
}
|
40
41
|
export interface FileSystem extends ReadOnlyFileSystem {
|
41
|
-
mkdirSync(
|
42
|
-
writeFileSync(
|
43
|
-
unlinkSync(
|
44
|
-
rmdirSync(
|
45
|
-
createFileSystemWatcher(
|
46
|
-
createReadStream(
|
47
|
-
createWriteStream(
|
48
|
-
copyFileSync(
|
42
|
+
mkdirSync(uri: Uri, options?: MkDirOptions): void;
|
43
|
+
writeFileSync(uri: Uri, data: string | Buffer, encoding: BufferEncoding | null): void;
|
44
|
+
unlinkSync(uri: Uri): void;
|
45
|
+
rmdirSync(uri: Uri): void;
|
46
|
+
createFileSystemWatcher(uris: Uri[], listener: FileWatcherEventHandler): FileWatcher;
|
47
|
+
createReadStream(uri: Uri): fs.ReadStream;
|
48
|
+
createWriteStream(uri: Uri): fs.WriteStream;
|
49
|
+
copyFileSync(uri: Uri, dst: Uri): void;
|
49
50
|
}
|
50
51
|
export interface TmpfileOptions {
|
51
52
|
postfix?: string;
|
52
53
|
prefix?: string;
|
53
54
|
}
|
54
55
|
export interface TempFile {
|
55
|
-
tmpdir():
|
56
|
-
tmpfile(options?: TmpfileOptions):
|
56
|
+
tmpdir(): Uri;
|
57
|
+
tmpfile(options?: TmpfileOptions): Uri;
|
57
58
|
dispose(): void;
|
58
59
|
}
|
59
60
|
export declare namespace FileSystem {
|
@@ -1,11 +1,12 @@
|
|
1
1
|
import { Stats } from './fileSystem';
|
2
|
+
import { Uri } from './uri/uri';
|
2
3
|
export type FileWatcherEventType = 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir';
|
3
|
-
export type FileWatcherEventHandler = (eventName: FileWatcherEventType,
|
4
|
+
export type FileWatcherEventHandler = (eventName: FileWatcherEventType, uri: Uri, stats?: Stats) => void;
|
4
5
|
export interface FileWatcher {
|
5
6
|
close(): void;
|
6
7
|
}
|
7
8
|
export interface FileWatcherHandler {
|
8
|
-
onFileChange(eventType: FileWatcherEventType,
|
9
|
+
onFileChange(eventType: FileWatcherEventType, uri: Uri): void;
|
9
10
|
}
|
10
11
|
export interface FileWatcherProvider {
|
11
12
|
createFileWatcher(paths: string[], listener: FileWatcherEventHandler): FileWatcher;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fileWatcher.js","sourceRoot":"","sources":["../../../src/common/fileWatcher.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"fileWatcher.js","sourceRoot":"","sources":["../../../src/common/fileWatcher.ts"],"names":[],"mappings":";;;AAyBa,QAAA,sBAAsB,GAAuB;IACtD,YAAY,CAAC,EAAwB,EAAE,EAAO;QAC1C,aAAa;IACjB,CAAC;CACJ,CAAC;AAEW,QAAA,uBAAuB,GAAwB;IACxD,iBAAiB,CAAC,EAAY,EAAE,EAA2B;QACvD,OAAO,eAAe,CAAC;IAC3B,CAAC;CACJ,CAAC;AAEF,oFAAoF;AACpF,kFAAkF;AAClF,gFAAgF;AAChF,oHAAoH;AACpH,SAAgB,yBAAyB,CAAC,KAAe;IACrD,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1D,OAAO,CAAC,IAAY,EAAW,EAAE;QAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC3C,OAAO,IAAI,CAAC;SACf;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC;AACN,CAAC;AATD,8DASC;AAED,MAAM,eAAe,GAAgB;IACjC,KAAK;QACD,SAAS;IACb,CAAC;CACJ,CAAC"}
|
@@ -1,21 +1,22 @@
|
|
1
1
|
import { CancellationToken } from 'vscode-languageserver';
|
2
2
|
import { PythonPathResult } from '../analyzer/pythonPathUtils';
|
3
3
|
import { PythonPlatform } from './configOptions';
|
4
|
-
import { FileSystem } from './fileSystem';
|
5
4
|
import { HostKind, NoAccessHost, ScriptOutput } from './host';
|
6
5
|
import { PythonVersion } from './pythonVersion';
|
6
|
+
import { ServiceProvider } from './serviceProvider';
|
7
|
+
import { Uri } from './uri/uri';
|
7
8
|
export declare class LimitedAccessHost extends NoAccessHost {
|
8
9
|
get kind(): HostKind;
|
9
10
|
getPythonPlatform(logInfo?: string[]): PythonPlatform | undefined;
|
10
11
|
}
|
11
12
|
export declare class FullAccessHost extends LimitedAccessHost {
|
12
|
-
protected
|
13
|
-
constructor(
|
13
|
+
protected serviceProvider: ServiceProvider;
|
14
|
+
constructor(serviceProvider: ServiceProvider);
|
14
15
|
get kind(): HostKind;
|
15
|
-
static createHost(kind: HostKind,
|
16
|
-
getPythonSearchPaths(pythonPath?:
|
17
|
-
getPythonVersion(pythonPath?:
|
18
|
-
runScript(pythonPath:
|
16
|
+
static createHost(kind: HostKind, serviceProvider: ServiceProvider): NoAccessHost;
|
17
|
+
getPythonSearchPaths(pythonPath?: Uri, logInfo?: string[]): PythonPathResult;
|
18
|
+
getPythonVersion(pythonPath?: Uri, logInfo?: string[]): PythonVersion | undefined;
|
19
|
+
runScript(pythonPath: Uri | undefined, script: Uri, args: string[], cwd: string, token: CancellationToken): Promise<ScriptOutput>;
|
19
20
|
private _executePythonInterpreter;
|
20
21
|
private _getSearchPathResultFromInterpreter;
|
21
22
|
}
|
@@ -38,6 +38,8 @@ const debug_1 = require("./debug");
|
|
38
38
|
const host_1 = require("./host");
|
39
39
|
const pathUtils_1 = require("./pathUtils");
|
40
40
|
const pythonVersion_1 = require("./pythonVersion");
|
41
|
+
const uri_1 = require("./uri/uri");
|
42
|
+
const uriUtils_1 = require("./uri/uriUtils");
|
41
43
|
// preventLocalImports removes the working directory from sys.path.
|
42
44
|
// The -c flag adds it automatically, which can allow some stdlib
|
43
45
|
// modules (like json) to be overridden by other files (like json.py).
|
@@ -77,32 +79,32 @@ class LimitedAccessHost extends host_1.NoAccessHost {
|
|
77
79
|
}
|
78
80
|
exports.LimitedAccessHost = LimitedAccessHost;
|
79
81
|
class FullAccessHost extends LimitedAccessHost {
|
80
|
-
constructor(
|
82
|
+
constructor(serviceProvider) {
|
81
83
|
super();
|
82
|
-
this.
|
84
|
+
this.serviceProvider = serviceProvider;
|
83
85
|
}
|
84
86
|
get kind() {
|
85
87
|
return 0 /* HostKind.FullAccess */;
|
86
88
|
}
|
87
|
-
static createHost(kind,
|
89
|
+
static createHost(kind, serviceProvider) {
|
88
90
|
switch (kind) {
|
89
91
|
case 2 /* HostKind.NoAccess */:
|
90
92
|
return new host_1.NoAccessHost();
|
91
93
|
case 1 /* HostKind.LimitedAccess */:
|
92
94
|
return new LimitedAccessHost();
|
93
95
|
case 0 /* HostKind.FullAccess */:
|
94
|
-
return new FullAccessHost(
|
96
|
+
return new FullAccessHost(serviceProvider);
|
95
97
|
default:
|
96
98
|
(0, debug_1.assertNever)(kind);
|
97
99
|
}
|
98
100
|
}
|
99
101
|
getPythonSearchPaths(pythonPath, logInfo) {
|
100
102
|
const importFailureInfo = logInfo !== null && logInfo !== void 0 ? logInfo : [];
|
101
|
-
let result = this._executePythonInterpreter(pythonPath, (p) => this._getSearchPathResultFromInterpreter(
|
103
|
+
let result = this._executePythonInterpreter(pythonPath === null || pythonPath === void 0 ? void 0 : pythonPath.getFilePath(), (p) => this._getSearchPathResultFromInterpreter(p, importFailureInfo));
|
102
104
|
if (!result) {
|
103
105
|
result = {
|
104
106
|
paths: [],
|
105
|
-
prefix:
|
107
|
+
prefix: undefined,
|
106
108
|
};
|
107
109
|
}
|
108
110
|
importFailureInfo.push(`Received ${result.paths.length} paths from interpreter`);
|
@@ -115,7 +117,7 @@ class FullAccessHost extends LimitedAccessHost {
|
|
115
117
|
const importFailureInfo = logInfo !== null && logInfo !== void 0 ? logInfo : [];
|
116
118
|
try {
|
117
119
|
const commandLineArgs = ['-c', extractVersion];
|
118
|
-
const execOutput = this._executePythonInterpreter(pythonPath, (p) => child_process.execFileSync(p, commandLineArgs, { encoding: 'utf8' }));
|
120
|
+
const execOutput = this._executePythonInterpreter(pythonPath === null || pythonPath === void 0 ? void 0 : pythonPath.getFilePath(), (p) => child_process.execFileSync(p, commandLineArgs, { encoding: 'utf8' }));
|
119
121
|
const versionJson = JSON.parse(execOutput);
|
120
122
|
const version = (0, pythonVersion_1.versionFromMajorMinor)(versionJson.major, versionJson.minor);
|
121
123
|
if (version === undefined) {
|
@@ -136,8 +138,8 @@ class FullAccessHost extends LimitedAccessHost {
|
|
136
138
|
return new Promise((resolve, reject) => {
|
137
139
|
let stdout = '';
|
138
140
|
let stderr = '';
|
139
|
-
const commandLineArgs = [script, ...args];
|
140
|
-
const child = this._executePythonInterpreter(pythonPath, (p) => child_process.spawn(p, commandLineArgs, { cwd }));
|
141
|
+
const commandLineArgs = [script.getFilePath(), ...args];
|
142
|
+
const child = this._executePythonInterpreter(pythonPath === null || pythonPath === void 0 ? void 0 : pythonPath.getFilePath(), (p) => child_process.spawn(p, commandLineArgs, { cwd }));
|
141
143
|
const tokenWatch = token.onCancellationRequested(() => {
|
142
144
|
if (child) {
|
143
145
|
try {
|
@@ -199,15 +201,16 @@ class FullAccessHost extends LimitedAccessHost {
|
|
199
201
|
return execute('python');
|
200
202
|
}
|
201
203
|
}
|
202
|
-
_getSearchPathResultFromInterpreter(
|
204
|
+
_getSearchPathResultFromInterpreter(interpreterPath, importFailureInfo) {
|
203
205
|
const result = {
|
204
206
|
paths: [],
|
205
|
-
prefix:
|
207
|
+
prefix: undefined,
|
206
208
|
};
|
207
209
|
try {
|
208
210
|
const commandLineArgs = ['-c', extractSys];
|
209
|
-
importFailureInfo.push(`Executing interpreter: '${
|
210
|
-
const execOutput = child_process.execFileSync(
|
211
|
+
importFailureInfo.push(`Executing interpreter: '${interpreterPath}'`);
|
212
|
+
const execOutput = child_process.execFileSync(interpreterPath, commandLineArgs, { encoding: 'utf8' });
|
213
|
+
const isCaseSensitive = this.serviceProvider.fs().isCaseSensitive;
|
211
214
|
// Parse the execOutput. It should be a JSON-encoded array of paths.
|
212
215
|
try {
|
213
216
|
const execSplit = JSON.parse(execOutput);
|
@@ -215,16 +218,18 @@ class FullAccessHost extends LimitedAccessHost {
|
|
215
218
|
execSplitEntry = execSplitEntry.trim();
|
216
219
|
if (execSplitEntry) {
|
217
220
|
const normalizedPath = (0, pathUtils_1.normalizePath)(execSplitEntry);
|
221
|
+
const normalizedUri = uri_1.Uri.file(normalizedPath, isCaseSensitive);
|
218
222
|
// Skip non-existent paths and broken zips/eggs.
|
219
|
-
if (fs.existsSync(
|
220
|
-
|
223
|
+
if (this.serviceProvider.fs().existsSync(normalizedUri) &&
|
224
|
+
(0, uriUtils_1.isDirectory)(this.serviceProvider.fs(), normalizedUri)) {
|
225
|
+
result.paths.push(normalizedUri);
|
221
226
|
}
|
222
227
|
else {
|
223
228
|
importFailureInfo.push(`Skipping '${normalizedPath}' because it is not a valid directory`);
|
224
229
|
}
|
225
230
|
}
|
226
231
|
}
|
227
|
-
result.prefix = execSplit.prefix;
|
232
|
+
result.prefix = uri_1.Uri.file(execSplit.prefix, isCaseSensitive);
|
228
233
|
if (result.paths.length === 0) {
|
229
234
|
importFailureInfo.push(`Found no valid directories`);
|
230
235
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fullAccessHost.js","sourceRoot":"","sources":["../../../src/common/fullAccessHost.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6DAA+C;AAI/C,2DAA+F;AAC/F,mDAAiD;AACjD,mCAAsC;
|
1
|
+
{"version":3,"file":"fullAccessHost.js","sourceRoot":"","sources":["../../../src/common/fullAccessHost.ts"],"names":[],"mappings":"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"}
|
package/dist/common/host.d.ts
CHANGED
@@ -2,6 +2,7 @@ import { CancellationToken } from 'vscode-languageserver';
|
|
2
2
|
import { PythonPathResult } from '../analyzer/pythonPathUtils';
|
3
3
|
import { PythonPlatform } from './configOptions';
|
4
4
|
import { PythonVersion } from './pythonVersion';
|
5
|
+
import { Uri } from './uri/uri';
|
5
6
|
export declare const enum HostKind {
|
6
7
|
FullAccess = 0,
|
7
8
|
LimitedAccess = 1,
|
@@ -13,16 +14,16 @@ export interface ScriptOutput {
|
|
13
14
|
}
|
14
15
|
export interface Host {
|
15
16
|
readonly kind: HostKind;
|
16
|
-
getPythonSearchPaths(pythonPath?:
|
17
|
-
getPythonVersion(pythonPath?:
|
17
|
+
getPythonSearchPaths(pythonPath?: Uri, logInfo?: string[]): PythonPathResult;
|
18
|
+
getPythonVersion(pythonPath?: Uri, logInfo?: string[]): PythonVersion | undefined;
|
18
19
|
getPythonPlatform(logInfo?: string[]): PythonPlatform | undefined;
|
19
|
-
runScript(pythonPath:
|
20
|
+
runScript(pythonPath: Uri | undefined, script: Uri, args: string[], cwd: string, token: CancellationToken): Promise<ScriptOutput>;
|
20
21
|
}
|
21
22
|
export declare class NoAccessHost implements Host {
|
22
23
|
get kind(): HostKind;
|
23
|
-
getPythonSearchPaths(pythonPath?:
|
24
|
-
getPythonVersion(pythonPath?:
|
24
|
+
getPythonSearchPaths(pythonPath?: Uri, logInfo?: string[]): PythonPathResult;
|
25
|
+
getPythonVersion(pythonPath?: Uri, logInfo?: string[]): PythonVersion | undefined;
|
25
26
|
getPythonPlatform(logInfo?: string[]): PythonPlatform | undefined;
|
26
|
-
runScript(pythonPath:
|
27
|
+
runScript(pythonPath: Uri | undefined, scriptPath: Uri, args: string[], cwd: string, token: CancellationToken): Promise<ScriptOutput>;
|
27
28
|
}
|
28
29
|
export type HostFactory = () => Host;
|
package/dist/common/host.js
CHANGED
package/dist/common/host.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/common/host.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/common/host.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AASH,IAAkB,QAIjB;AAJD,WAAkB,QAAQ;IACtB,mDAAU,CAAA;IACV,yDAAa,CAAA;IACb,+CAAQ,CAAA;AACZ,CAAC,EAJiB,QAAQ,wBAAR,QAAQ,QAIzB;AAqBD,MAAa,YAAY;IACrB,IAAI,IAAI;QACJ,iCAAyB;IAC7B,CAAC;IAED,oBAAoB,CAAC,UAAgB,EAAE,OAAkB;QACrD,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAEjD,OAAO;YACH,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,SAAS;SACpB,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,UAAgB,EAAE,OAAkB;QACjD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,OAAkB;QAChC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,SAAS,CACX,UAA2B,EAC3B,UAAe,EACf,IAAc,EACd,GAAW,EACX,KAAwB;QAExB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;CACJ;AA/BD,oCA+BC"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { ConsoleInterface } from './console';
|
2
2
|
import { ReadOnlyFileSystem } from './fileSystem';
|
3
|
-
|
3
|
+
import { Uri } from './uri/uri';
|
4
|
+
export declare function getPathForLogging(fs: ReadOnlyFileSystem, fileUri: Uri): Uri;
|
4
5
|
export declare class LogTracker {
|
5
6
|
private _console;
|
6
7
|
private _prefix;
|
@@ -12,11 +12,11 @@ const console_1 = require("./console");
|
|
12
12
|
const timing_1 = require("./timing");
|
13
13
|
// Consider an operation "long running" if it goes longer than this.
|
14
14
|
const durationThresholdForInfoInMs = 2000;
|
15
|
-
function getPathForLogging(fs,
|
16
|
-
if (fs.
|
17
|
-
return fs.
|
15
|
+
function getPathForLogging(fs, fileUri) {
|
16
|
+
if (fs.isMappedUri(fileUri)) {
|
17
|
+
return fs.getOriginalUri(fileUri);
|
18
18
|
}
|
19
|
-
return
|
19
|
+
return fileUri;
|
20
20
|
}
|
21
21
|
exports.getPathForLogging = getPathForLogging;
|
22
22
|
class LogTracker {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"logTracker.js","sourceRoot":"","sources":["../../../src/common/logTracker.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,uCAAuD;AAEvD,qCAAiD;
|
1
|
+
{"version":3,"file":"logTracker.js","sourceRoot":"","sources":["../../../src/common/logTracker.ts"],"names":[],"mappings":"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"}
|
@@ -1,8 +1,4 @@
|
|
1
|
-
/// <reference types="node" />
|
2
|
-
import type { Dirent } from 'fs';
|
3
1
|
import { GetCanonicalFileName } from './core';
|
4
|
-
import { ServiceProvider } from './extensibility';
|
5
|
-
import { FileSystem, ReadOnlyFileSystem, Stats, TempFile } from './fileSystem';
|
6
2
|
export interface FileSpec {
|
7
3
|
wildcardRoot: string;
|
8
4
|
regExp: RegExp;
|
@@ -18,22 +14,16 @@ export interface FileSystemEntries {
|
|
18
14
|
files: string[];
|
19
15
|
directories: string[];
|
20
16
|
}
|
21
|
-
export declare function forEachAncestorDirectory(directory: string, callback: (directory: string) => string | undefined): string | undefined;
|
22
17
|
export declare function getDirectoryPath(pathString: string): string;
|
23
|
-
export declare function isUri(pathString: string): boolean;
|
24
18
|
/**
|
25
19
|
* Returns length of the root part of a path or URL (i.e. length of "/", "x:/", "//server/").
|
26
20
|
*/
|
27
|
-
export declare function getRootLength(pathString: string,
|
21
|
+
export declare function getRootLength(pathString: string, sep?: string): number;
|
28
22
|
export declare function getPathSeparator(pathString: string): string;
|
29
23
|
export declare function getPathComponents(pathString: string): string[];
|
30
24
|
export declare function reducePathComponents(components: readonly string[]): string[];
|
31
25
|
export declare function combinePathComponents(components: string[]): string;
|
32
26
|
export declare function getRelativePath(dirPath: string, relativeTo: string): string | undefined;
|
33
|
-
export declare function makeDirectories(fs: FileSystem, dirPath: string, startingFromDirPath: string): void;
|
34
|
-
export declare function getFileSize(fs: ReadOnlyFileSystem, path: string): number;
|
35
|
-
export declare function fileExists(fs: ReadOnlyFileSystem, path: string): boolean;
|
36
|
-
export declare function directoryExists(fs: ReadOnlyFileSystem, path: string): boolean;
|
37
27
|
export declare function normalizeSlashes(pathString: string, sep?: string): string;
|
38
28
|
/**
|
39
29
|
* Combines and resolves paths. If a path is absolute, it replaces any previous path. Any
|
@@ -137,19 +127,11 @@ export declare function getFileExtension(fileName: string, multiDotExtension?: b
|
|
137
127
|
export declare function getFileName(pathString: string): string;
|
138
128
|
export declare function getShortenedFileName(pathString: string, maxDirLength?: number): string;
|
139
129
|
export declare function stripFileExtension(fileName: string, multiDotExtension?: boolean): string;
|
140
|
-
export declare function realCasePath(pathString: string, fileSystem: ReadOnlyFileSystem): string;
|
141
130
|
export declare function normalizePath(pathString: string): string;
|
142
|
-
export declare function isDirectory(fs: ReadOnlyFileSystem, path: string): boolean;
|
143
|
-
export declare function isFile(fs: ReadOnlyFileSystem, path: string, treatZipDirectoryAsFile?: boolean): boolean;
|
144
|
-
export declare function tryStat(fs: ReadOnlyFileSystem, path: string): Stats | undefined;
|
145
|
-
export declare function tryRealpath(fs: ReadOnlyFileSystem, path: string): string | undefined;
|
146
|
-
export declare function getFileSystemEntries(fs: ReadOnlyFileSystem, path: string): FileSystemEntries;
|
147
|
-
export declare function getFileSystemEntriesFromDirEntries(dirEntries: Dirent[], fs: ReadOnlyFileSystem, path: string): FileSystemEntries;
|
148
131
|
export declare function getWildcardRegexPattern(rootPath: string, fileSpec: string): string;
|
149
132
|
export declare function isDirectoryWildcardPatternPresent(fileSpec: string): boolean;
|
150
133
|
export declare function getWildcardRoot(rootPath: string, fileSpec: string): string;
|
151
134
|
export declare function hasPythonExtension(path: string): boolean;
|
152
|
-
export declare function getFileSpec(sp: ServiceProvider, rootPath: string, fileSpec: string): FileSpec;
|
153
135
|
export declare function getRegexEscapedSeparator(pathSep?: string): "/" | "\\\\";
|
154
136
|
/**
|
155
137
|
* Determines whether a path is an absolute disk path (e.g. starts with `/`, or a dos path
|
@@ -160,12 +142,3 @@ export declare function isRootedDiskPath(path: string): boolean;
|
|
160
142
|
* Determines whether a path consists only of a path root.
|
161
143
|
*/
|
162
144
|
export declare function isDiskPathRoot(path: string): boolean;
|
163
|
-
export declare function convertUriToPath(fs: ReadOnlyFileSystem, uriString: string): string;
|
164
|
-
export declare function extractPathFromUri(uriString: string): string;
|
165
|
-
export declare function convertPathToUri(fs: ReadOnlyFileSystem, path: string): string;
|
166
|
-
export declare function setTestingMode(underTest: boolean): void;
|
167
|
-
export declare function isFileSystemCaseSensitive(fs: FileSystem, tmp?: TempFile): boolean;
|
168
|
-
export declare function isFileSystemCaseSensitiveInternal(fs: FileSystem, tmp: TempFile): boolean;
|
169
|
-
export declare function getLibraryPathWithoutExtension(libraryFilePath: string): string;
|
170
|
-
export declare function getDirectoryChangeKind(fs: ReadOnlyFileSystem, oldDirectory: string, newDirectory: string): 'Same' | 'Renamed' | 'Moved';
|
171
|
-
export declare function deduplicateFolders(listOfFolders: string[][]): string[];
|