Skip to content

Commit 9f7789a

Browse files
Kartik Rajkarthiknadig
authored andcommitted
Register Jedi regardless of what language server is configured (#15452)
* Register Jedi regardless of what language server is configured * News entry
1 parent 492fc99 commit 9f7789a

File tree

4 files changed

+15
-6
lines changed

4 files changed

+15
-6
lines changed

news/2 Fixes/15452.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Register Jedi regardless of what language server is configured.

src/client/activation/activationService.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,7 @@ export class LanguageServerExtensionActivationService
243243
if (serverType === LanguageServerType.Jedi) {
244244
throw ex;
245245
}
246+
traceError(ex);
246247
this.output.appendLine(LanguageService.lsFailedToStart());
247248
serverType = LanguageServerType.Jedi;
248249
server = this.serviceContainer.get<ILanguageServerActivator>(ILanguageServerActivator, serverType);

src/client/activation/serviceRegistry.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -136,12 +136,6 @@ export function registerTypes(serviceManager: IServiceManager, languageServerTyp
136136
ILanguageServerFolderService,
137137
NodeLanguageServerFolderService,
138138
);
139-
} else if (languageServerType === LanguageServerType.Jedi) {
140-
serviceManager.add<ILanguageServerActivator>(
141-
ILanguageServerActivator,
142-
JediExtensionActivator,
143-
LanguageServerType.Jedi,
144-
);
145139
} else if (languageServerType === LanguageServerType.JediLSP) {
146140
serviceManager.add<ILanguageServerActivator>(
147141
ILanguageServerActivator,
@@ -165,6 +159,11 @@ export function registerTypes(serviceManager: IServiceManager, languageServerTyp
165159
LanguageServerType.None,
166160
);
167161
}
162+
serviceManager.add<ILanguageServerActivator>(
163+
ILanguageServerActivator,
164+
JediExtensionActivator,
165+
LanguageServerType.Jedi,
166+
); // We fallback to Jedi if for some reason we're unable to use other language servers, hence register this always.
168167

169168
serviceManager.addSingleton<IDownloadChannelRule>(
170169
IDownloadChannelRule,

src/test/activation/serviceRegistry.unit.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { DownloadBetaChannelRule, DownloadDailyChannelRule } from '../../client/
99
import { LanguageServerDownloader } from '../../client/activation/common/downloader';
1010
import { LanguageServerDownloadChannel } from '../../client/activation/common/packageRepository';
1111
import { ExtensionSurveyPrompt } from '../../client/activation/extensionSurvey';
12+
import { JediExtensionActivator } from '../../client/activation/jedi';
1213
import { DotNetLanguageServerActivator } from '../../client/activation/languageServer/activator';
1314
import { DotNetLanguageServerAnalysisOptions } from '../../client/activation/languageServer/analysisOptions';
1415
import { DotNetLanguageClientFactory } from '../../client/activation/languageServer/languageClientFactory';
@@ -161,6 +162,13 @@ suite('Unit Tests - Language Server Activation Service Registry', () => {
161162
LanguageServerType.Microsoft,
162163
),
163164
).once();
165+
verify(
166+
serviceManager.add<ILanguageServerActivator>(
167+
ILanguageServerActivator,
168+
JediExtensionActivator,
169+
LanguageServerType.Jedi,
170+
),
171+
).once();
164172
verify(serviceManager.add<ILanguageServerProxy>(ILanguageServerProxy, DotNetLanguageServerProxy)).once();
165173
verify(serviceManager.add<ILanguageServerManager>(ILanguageServerManager, DotNetLanguageServerManager)).once();
166174
verify(

0 commit comments

Comments
 (0)