Skip to content

Commit 9112690

Browse files
committed
Ensure python extension activation is disabled
1 parent 30d92ed commit 9112690

File tree

4 files changed

+19
-3
lines changed

4 files changed

+19
-3
lines changed

src/client/common/terminal/activator/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { IConfigurationService, IExperimentService } from '../../types';
99
import { ITerminalActivationHandler, ITerminalActivator, ITerminalHelper, TerminalActivationOptions } from '../types';
1010
import { BaseTerminalActivator } from './base';
1111
import { inTerminalEnvVarExperiment } from '../../experiments/helpers';
12+
import { useEnvExtension } from '../../../envExt/api.internal';
1213

1314
@injectable()
1415
export class TerminalActivator implements ITerminalActivator {
@@ -41,7 +42,7 @@ export class TerminalActivator implements ITerminalActivator {
4142
const settings = this.configurationService.getSettings(options?.resource);
4243
const activateEnvironment =
4344
settings.terminal.activateEnvironment && !inTerminalEnvVarExperiment(this.experimentService);
44-
if (!activateEnvironment || options?.hideFromUser) {
45+
if (!activateEnvironment || options?.hideFromUser || useEnvExtension()) {
4546
return false;
4647
}
4748

src/client/providers/terminalProvider.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { swallowExceptions } from '../common/utils/decorators';
1111
import { IServiceContainer } from '../ioc/types';
1212
import { captureTelemetry, sendTelemetryEvent } from '../telemetry';
1313
import { EventName } from '../telemetry/constants';
14+
import { useEnvExtension } from '../envExt/api.internal';
1415

1516
export class TerminalProvider implements Disposable {
1617
private disposables: Disposable[] = [];
@@ -31,7 +32,8 @@ export class TerminalProvider implements Disposable {
3132
if (
3233
currentTerminal &&
3334
pythonSettings.terminal.activateEnvInCurrentTerminal &&
34-
!inTerminalEnvVarExperiment(experimentService)
35+
!inTerminalEnvVarExperiment(experimentService) &&
36+
!useEnvExtension()
3537
) {
3638
const hideFromUser =
3739
'hideFromUser' in currentTerminal.creationOptions && currentTerminal.creationOptions.hideFromUser;

src/client/terminals/envCollectionActivation/indicatorPrompt.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import { ITerminalEnvVarCollectionService } from '../types';
2121
import { sleep } from '../../common/utils/async';
2222
import { isTestExecution } from '../../common/constants';
2323
import { PythonEnvType } from '../../pythonEnvironments/base/info';
24+
import { useEnvExtension } from '../../envExt/api.internal';
2425

2526
export const terminalEnvCollectionPromptKey = 'TERMINAL_ENV_COLLECTION_PROMPT_KEY';
2627

@@ -42,7 +43,7 @@ export class TerminalIndicatorPrompt implements IExtensionSingleActivationServic
4243
) {}
4344

4445
public async activate(): Promise<void> {
45-
if (!inTerminalEnvVarExperiment(this.experimentService)) {
46+
if (!inTerminalEnvVarExperiment(this.experimentService) || useEnvExtension()) {
4647
return;
4748
}
4849
if (!isTestExecution()) {

src/client/terminals/envCollectionActivation/service.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ import {
4343
ITerminalEnvVarCollectionService,
4444
} from '../types';
4545
import { ProgressService } from '../../common/application/progressService';
46+
import { useEnvExtension } from '../../envExt/api.internal';
4647

4748
@injectable()
4849
export class TerminalEnvVarCollectionService implements IExtensionActivationService, ITerminalEnvVarCollectionService {
@@ -175,6 +176,12 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ
175176
const workspaceFolder = this.getWorkspaceFolder(resource);
176177
const settings = this.configurationService.getSettings(resource);
177178
const envVarCollection = this.getEnvironmentVariableCollection({ workspaceFolder });
179+
if (useEnvExtension()) {
180+
envVarCollection.clear();
181+
traceVerbose('Do not activate terminal env vars as env extension is being used');
182+
return;
183+
}
184+
178185
if (!settings.terminal.activateEnvironment) {
179186
envVarCollection.clear();
180187
traceVerbose('Activating environments in terminal is disabled for', resource?.fsPath);
@@ -371,6 +378,11 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ
371378
try {
372379
const settings = this.configurationService.getSettings(resource);
373380
const workspaceFolder = this.getWorkspaceFolder(resource);
381+
if (useEnvExtension()) {
382+
this.getEnvironmentVariableCollection({ workspaceFolder }).clear();
383+
traceVerbose('Do not activate microvenv as env extension is being used');
384+
return;
385+
}
374386
if (!settings.terminal.activateEnvironment) {
375387
this.getEnvironmentVariableCollection({ workspaceFolder }).clear();
376388
traceVerbose(

0 commit comments

Comments
 (0)