diff --git a/src/client/activation/activationService.ts b/src/client/activation/activationService.ts index cacc74ddd577..f825a5235dc5 100644 --- a/src/client/activation/activationService.ts +++ b/src/client/activation/activationService.ts @@ -287,7 +287,7 @@ export class LanguageServerExtensionActivationService outputLine = 'Starting Microsoft Python language server.'; break; case LanguageServerType.Node: - outputLine = 'Starting Node.js language server.'; + outputLine = 'Starting Pylance language server.'; break; case LanguageServerType.None: outputLine = 'Editor support is inactive since language server is set to None.'; diff --git a/src/client/activation/node/languageServerFolderService.ts b/src/client/activation/node/languageServerFolderService.ts index f89d3f9a78ac..44922a052970 100644 --- a/src/client/activation/node/languageServerFolderService.ts +++ b/src/client/activation/node/languageServerFolderService.ts @@ -14,6 +14,8 @@ import { IServiceContainer } from '../../ioc/types'; import { LanguageServerFolderService } from '../common/languageServerFolderService'; import { FolderVersionPair, ILanguageServerFolderService, NodeLanguageServerFolder } from '../types'; +export const PylanceExtensionName = 'ms-python.vscode-pylance'; + class FallbackNodeLanguageServerFolderService extends LanguageServerFolderService { constructor(serviceContainer: IServiceContainer) { super(serviceContainer, NodeLanguageServerFolder); @@ -99,12 +101,7 @@ export class NodeLanguageServerFolderService implements ILanguageServerFolderSer return undefined; } - const extensionName = this.workspaceService.getConfiguration('python').get('lsExtensionName'); - if (!extensionName) { - return undefined; - } - - const extension = this.extensions.getExtension(extensionName); + const extension = this.extensions.getExtension(PylanceExtensionName); if (!extension) { return undefined; } diff --git a/src/client/activation/types.ts b/src/client/activation/types.ts index 81bb69e5a244..b51ad0c42fbe 100644 --- a/src/client/activation/types.ts +++ b/src/client/activation/types.ts @@ -66,7 +66,7 @@ export interface IExtensionActivationService { export enum LanguageServerType { Jedi = 'Jedi', Microsoft = 'Microsoft', - Node = 'Node', + Node = 'Pylance', None = 'None' } diff --git a/src/test/activation/node/languageServerFolderService.unit.test.ts b/src/test/activation/node/languageServerFolderService.unit.test.ts index 0804c997ff2a..115bdecc7eda 100644 --- a/src/test/activation/node/languageServerFolderService.unit.test.ts +++ b/src/test/activation/node/languageServerFolderService.unit.test.ts @@ -9,7 +9,8 @@ import { Extension, Uri, WorkspaceConfiguration } from 'vscode'; import { ILanguageServerFolder, ILSExtensionApi, - NodeLanguageServerFolderService + NodeLanguageServerFolderService, + PylanceExtensionName } from '../../../client/activation/node/languageServerFolderService'; import { IWorkspaceService } from '../../../client/common/application/types'; import { IConfigurationService, IExtensions, IPythonSettings } from '../../../client/common/types'; @@ -19,7 +20,6 @@ import { IServiceContainer } from '../../../client/ioc/types'; suite('Node Language Server Folder Service', () => { const resource = Uri.parse('a'); - const extensionName = 'some.extension'; let serviceContainer: TypeMoq.IMock; let pythonSettings: TypeMoq.IMock; @@ -99,7 +99,6 @@ suite('Node Language Server Folder Service', () => { test('lsExtensionName is undefined', async () => { pythonSettings.setup((p) => p.downloadLanguageServer).returns(() => true); workspaceConfiguration.setup((wc) => wc.get('packageName')).returns(() => undefined); - workspaceConfiguration.setup((wc) => wc.get('lsExtensionName')).returns(() => undefined); const folderService = new TestService( serviceContainer.object, @@ -116,8 +115,7 @@ suite('Node Language Server Folder Service', () => { test('lsExtension not installed', async () => { pythonSettings.setup((p) => p.downloadLanguageServer).returns(() => true); workspaceConfiguration.setup((wc) => wc.get('packageName')).returns(() => undefined); - workspaceConfiguration.setup((wc) => wc.get('lsExtensionName')).returns(() => extensionName); - extensions.setup((e) => e.getExtension(extensionName)).returns(() => undefined); + extensions.setup((e) => e.getExtension(PylanceExtensionName)).returns(() => undefined); const folderService = new TestService( serviceContainer.object, @@ -150,8 +148,7 @@ suite('Node Language Server Folder Service', () => { extension.setup((e) => e.exports).returns(() => extensionApi); pythonSettings.setup((p) => p.downloadLanguageServer).returns(() => true); workspaceConfiguration.setup((wc) => wc.get('packageName')).returns(() => undefined); - workspaceConfiguration.setup((wc) => wc.get('lsExtensionName')).returns(() => extensionName); - extensions.setup((e) => e.getExtension(extensionName)).returns(() => extension.object); + extensions.setup((e) => e.getExtension(PylanceExtensionName)).returns(() => extension.object); folderService = new TestService( serviceContainer.object, configService.object,