From 62a16688f544042f41e20ae9e23a2323276687a8 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Tue, 23 May 2023 13:29:00 -0700 Subject: [PATCH 01/11] Update proposed APIs to be used in Terminal activation experiment --- package.json | 5 +- .../terminalEnvVarCollectionService.ts | 36 +++++++---- ...rminalEnvVarCollectionService.unit.test.ts | 59 +++++++++++-------- .../vscode.proposed.envCollectionOptions.d.ts | 56 ++++++++++++++++++ ...scode.proposed.envCollectionWorkspace.d.ts | 44 +++++++------- 5 files changed, 136 insertions(+), 64 deletions(-) create mode 100644 types/src/vscode-dts/vscode.proposed.envCollectionOptions.d.ts diff --git a/package.json b/package.json index 8b364b5d60e6..44a80b223c22 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,8 @@ "testObserver", "quickPickItemTooltip", "envCollectionWorkspace", - "saveEditor" + "saveEditor", + "envCollectionOptions" ], "author": { "name": "Microsoft Corporation" @@ -45,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.78.0" + "vscode": "^1.79.0-20230523" }, "keywords": [ "python", diff --git a/src/client/interpreter/activation/terminalEnvVarCollectionService.ts b/src/client/interpreter/activation/terminalEnvVarCollectionService.ts index 26852303d099..fe4f7b36fca9 100644 --- a/src/client/interpreter/activation/terminalEnvVarCollectionService.ts +++ b/src/client/interpreter/activation/terminalEnvVarCollectionService.ts @@ -3,7 +3,14 @@ import * as path from 'path'; import { inject, injectable } from 'inversify'; -import { ProgressOptions, ProgressLocation, MarkdownString, WorkspaceFolder } from 'vscode'; +import { + ProgressOptions, + ProgressLocation, + MarkdownString, + WorkspaceFolder, + EnvironmentVariableCollection, + EnvironmentVariableScope, +} from 'vscode'; import { pathExists } from 'fs-extra'; import { IExtensionActivationService } from '../../activation/types'; import { IApplicationShell, IApplicationEnvironment, IWorkspaceService } from '../../common/application/types'; @@ -108,6 +115,7 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ undefined, shell, ); + const envVarCollection = this.getEnvironmentVariableCollection({ workspaceFolder }); if (!env) { const shellType = identifyShellFromShellPath(shell); const defaultShell = defaultShells[this.platform.osType]; @@ -117,7 +125,7 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ await this._applyCollection(resource, defaultShell?.shell); return; } - this.context.environmentVariableCollection.clear({ workspaceFolder }); + envVarCollection.clear(); this.previousEnvVars = _normCaseKeys(process.env); return; } @@ -129,10 +137,10 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ if (prevValue !== value) { if (value !== undefined) { traceVerbose(`Setting environment variable ${key} in collection to ${value}`); - this.context.environmentVariableCollection.replace(key, value, { workspaceFolder }); + envVarCollection.replace(key, value, { applyAtShellIntegration: true }); } else { traceVerbose(`Clearing environment variable ${key} from collection`); - this.context.environmentVariableCollection.delete(key, { workspaceFolder }); + envVarCollection.delete(key); } } }); @@ -140,14 +148,19 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ // If the previous env var is not in the current env, clear it from collection. if (!(key in env)) { traceVerbose(`Clearing environment variable ${key} from collection`); - this.context.environmentVariableCollection.delete(key, { workspaceFolder }); + envVarCollection.delete(key); } }); const displayPath = this.pathUtils.getDisplayName(settings.pythonPath, workspaceFolder?.uri.fsPath); const description = new MarkdownString(`${Interpreters.activateTerminalDescription} \`${displayPath}\``); - this.context.environmentVariableCollection.setDescription(description, { - workspaceFolder, - }); + envVarCollection.description = description; + } + + private getEnvironmentVariableCollection(scope?: EnvironmentVariableScope) { + const envVarCollection = this.context.environmentVariableCollection as EnvironmentVariableCollection & { + getScopedEnvironmentVariableCollection(scope: EnvironmentVariableScope): EnvironmentVariableCollection; + }; + return scope ? envVarCollection.getScopedEnvironmentVariableCollection(scope) : envVarCollection; } private async handleMicroVenv(resource: Resource) { @@ -156,12 +169,11 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ if (interpreter?.envType === EnvironmentType.Venv) { const activatePath = path.join(path.dirname(interpreter.path), 'activate'); if (!(await pathExists(activatePath))) { - this.context.environmentVariableCollection.replace( + const envVarCollection = this.getEnvironmentVariableCollection({ workspaceFolder }); + envVarCollection.replace( 'PATH', `${path.dirname(interpreter.path)}${path.delimiter}${process.env.Path}`, - { - workspaceFolder, - }, + { applyAtShellIntegration: true }, ); return; } diff --git a/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts b/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts index feecf63f5577..92c315dc756a 100644 --- a/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts +++ b/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts @@ -7,7 +7,13 @@ import * as sinon from 'sinon'; import { assert, expect } from 'chai'; import { cloneDeep } from 'lodash'; import { mock, instance, when, anything, verify, reset } from 'ts-mockito'; -import { EnvironmentVariableCollection, ProgressLocation, Uri, WorkspaceFolder } from 'vscode'; +import { + EnvironmentVariableCollection, + EnvironmentVariableScope, + ProgressLocation, + Uri, + WorkspaceFolder, +} from 'vscode'; import { IApplicationShell, IApplicationEnvironment, @@ -39,7 +45,10 @@ suite('Terminal Environment Variable Collection Service', () => { let context: IExtensionContext; let shell: IApplicationShell; let experimentService: IExperimentService; - let collection: EnvironmentVariableCollection; + let collection: EnvironmentVariableCollection & { + getScopedEnvironmentVariableCollection(scope: EnvironmentVariableScope): EnvironmentVariableCollection; + }; + let scopedCollection: EnvironmentVariableCollection; let applicationEnvironment: IApplicationEnvironment; let environmentActivationService: IEnvironmentActivationService; let workspaceService: IWorkspaceService; @@ -62,7 +71,13 @@ suite('Terminal Environment Variable Collection Service', () => { interpreterService = mock(); context = mock(); shell = mock(); - collection = mock(); + collection = mock< + EnvironmentVariableCollection & { + getScopedEnvironmentVariableCollection(scope: EnvironmentVariableScope): EnvironmentVariableCollection; + } + >(); + scopedCollection = mock(); + when(collection.getScopedEnvironmentVariableCollection(anything())).thenReturn(instance(scopedCollection)); when(context.environmentVariableCollection).thenReturn(instance(collection)); experimentService = mock(); when(experimentService.inExperimentSync(TerminalEnvVarActivation.experiment)).thenReturn(true); @@ -166,12 +181,12 @@ suite('Terminal Environment Variable Collection Service', () => { ).thenResolve(envVars); when(collection.replace(anything(), anything(), anything())).thenResolve(); - when(collection.delete(anything(), anything())).thenResolve(); + when(collection.delete(anything())).thenResolve(); await terminalEnvVarCollectionService._applyCollection(undefined, customShell); verify(collection.replace('CONDA_PREFIX', 'prefix/to/conda', anything())).once(); - verify(collection.delete('PATH', anything())).once(); + verify(collection.delete('PATH')).once(); }); test('Verify envs are not applied if env activation is disabled', async () => { @@ -187,7 +202,7 @@ suite('Terminal Environment Variable Collection Service', () => { ).thenResolve(envVars); when(collection.replace(anything(), anything(), anything())).thenResolve(); - when(collection.delete(anything(), anything())).thenResolve(); + when(collection.delete(anything())).thenResolve(); reset(configService); when(configService.getSettings(anything())).thenReturn(({ terminal: { activateEnvironment: false }, @@ -197,7 +212,7 @@ suite('Terminal Environment Variable Collection Service', () => { await terminalEnvVarCollectionService._applyCollection(undefined, customShell); verify(collection.replace('CONDA_PREFIX', 'prefix/to/conda', anything())).never(); - verify(collection.delete('PATH', anything())).never(); + verify(collection.delete('PATH')).never(); }); test('Verify correct scope is used when applying envs and setting description', async () => { @@ -214,25 +229,19 @@ suite('Terminal Environment Variable Collection Service', () => { environmentActivationService.getActivatedEnvironmentVariables(resource, undefined, undefined, customShell), ).thenResolve(envVars); - when(collection.replace(anything(), anything(), anything())).thenCall((_e, _v, scope) => { + when(scopedCollection.replace(anything(), anything(), anything())).thenCall((_e, _v, scope) => { assert.deepEqual(scope, { workspaceFolder }); return Promise.resolve(); }); - when(collection.delete(anything(), anything())).thenCall((_e, scope) => { + when(scopedCollection.delete(anything())).thenCall((_e, scope) => { assert.deepEqual(scope, { workspaceFolder }); return Promise.resolve(); }); - let description = ''; - when(collection.setDescription(anything(), anything())).thenCall((d, scope) => { - assert.deepEqual(scope, { workspaceFolder }); - description = d.value; - }); await terminalEnvVarCollectionService._applyCollection(resource, customShell); - verify(collection.replace('CONDA_PREFIX', 'prefix/to/conda', anything())).once(); - verify(collection.delete('PATH', anything())).once(); - expect(description).to.equal(`${Interpreters.activateTerminalDescription} \`${displayPath}\``); + verify(scopedCollection.replace('CONDA_PREFIX', 'prefix/to/conda', anything())).once(); + verify(scopedCollection.delete('PATH')).once(); }); test('Only relative changes to previously applied variables are applied to the collection', async () => { @@ -251,7 +260,7 @@ suite('Terminal Environment Variable Collection Service', () => { ).thenResolve(envVars); when(collection.replace(anything(), anything(), anything())).thenResolve(); - when(collection.delete(anything(), anything())).thenResolve(); + when(collection.delete(anything())).thenResolve(); await terminalEnvVarCollectionService._applyCollection(undefined, customShell); @@ -270,8 +279,8 @@ suite('Terminal Environment Variable Collection Service', () => { await terminalEnvVarCollectionService._applyCollection(undefined, customShell); - verify(collection.delete('CONDA_PREFIX', anything())).once(); - verify(collection.delete('RANDOM_VAR', anything())).once(); + verify(collection.delete('CONDA_PREFIX')).once(); + verify(collection.delete('RANDOM_VAR')).once(); }); test('If no activated variables are returned for custom shell, fallback to using default shell', async () => { @@ -294,12 +303,12 @@ suite('Terminal Environment Variable Collection Service', () => { ).thenResolve(envVars); when(collection.replace(anything(), anything(), anything())).thenResolve(); - when(collection.delete(anything(), anything())).thenResolve(); + when(collection.delete(anything())).thenResolve(); await terminalEnvVarCollectionService._applyCollection(undefined, customShell); verify(collection.replace('CONDA_PREFIX', 'prefix/to/conda', anything())).once(); - verify(collection.delete(anything(), anything())).never(); + verify(collection.delete(anything())).never(); }); test('If no activated variables are returned for default shell, clear collection', async () => { @@ -313,12 +322,10 @@ suite('Terminal Environment Variable Collection Service', () => { ).thenResolve(undefined); when(collection.replace(anything(), anything(), anything())).thenResolve(); - when(collection.delete(anything(), anything())).thenResolve(); - when(collection.setDescription(anything(), anything())).thenReturn(); + when(collection.delete(anything())).thenResolve(); await terminalEnvVarCollectionService._applyCollection(undefined, defaultShell?.shell); - verify(collection.clear(anything())).once(); - verify(collection.setDescription(anything(), anything())).never(); + verify(collection.clear()).once(); }); }); diff --git a/types/src/vscode-dts/vscode.proposed.envCollectionOptions.d.ts b/types/src/vscode-dts/vscode.proposed.envCollectionOptions.d.ts new file mode 100644 index 000000000000..d25a92725a4d --- /dev/null +++ b/types/src/vscode-dts/vscode.proposed.envCollectionOptions.d.ts @@ -0,0 +1,56 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +declare module 'vscode' { + + // https://github.com/microsoft/vscode/issues/179476 + + /** + * Options applied to the mutator. + */ + export interface EnvironmentVariableMutatorOptions { + /** + * Apply to the environment just before the process is created. + * + * Defaults to true. + */ + applyAtProcessCreation?: boolean; + + /** + * Apply to the environment in the shell integration script. Note that this _will not_ apply + * the mutator if shell integration is disabled or not working for some reason. + * + * Defaults to false. + */ + applyAtShellIntegration?: boolean; + } + + /** + * A type of mutation and its value to be applied to an environment variable. + */ + export interface EnvironmentVariableMutator { + /** + * Options applied to the mutator. + */ + readonly options: EnvironmentVariableMutatorOptions; + } + + export interface EnvironmentVariableCollection extends Iterable<[variable: string, mutator: EnvironmentVariableMutator]> { + /** + * @param options Options applied to the mutator. + */ + replace(variable: string, value: string, options?: EnvironmentVariableMutatorOptions): void; + + /** + * @param options Options applied to the mutator. + */ + append(variable: string, value: string, options?: EnvironmentVariableMutatorOptions): void; + + /** + * @param options Options applied to the mutator. + */ + prepend(variable: string, value: string, options?: EnvironmentVariableMutatorOptions): void; + } +} diff --git a/types/vscode.proposed.envCollectionWorkspace.d.ts b/types/vscode.proposed.envCollectionWorkspace.d.ts index b1176a9d46c2..d778e53e5086 100644 --- a/types/vscode.proposed.envCollectionWorkspace.d.ts +++ b/types/vscode.proposed.envCollectionWorkspace.d.ts @@ -5,34 +5,30 @@ declare module 'vscode' { - // https://github.com/microsoft/vscode/issues/171173 + // https://github.com/microsoft/vscode/issues/182069 - export interface EnvironmentVariableMutator { - readonly type: EnvironmentVariableMutatorType; - readonly value: string; - readonly scope: EnvironmentVariableScope | undefined; - } - - export interface EnvironmentVariableCollection extends Iterable<[variable: string, mutator: EnvironmentVariableMutator]> { - /** - * Sets a description for the environment variable collection, this will be used to describe the changes in the UI. - * @param description A description for the environment variable collection. - * @param scope Specific scope to which this description applies to. - */ - setDescription(description: string | MarkdownString | undefined, scope?: EnvironmentVariableScope): void; - replace(variable: string, value: string, scope?: EnvironmentVariableScope): void; - append(variable: string, value: string, scope?: EnvironmentVariableScope): void; - prepend(variable: string, value: string, scope?: EnvironmentVariableScope): void; - get(variable: string, scope?: EnvironmentVariableScope): EnvironmentVariableMutator | undefined; - delete(variable: string, scope?: EnvironmentVariableScope): void; - clear(scope?: EnvironmentVariableScope): void; - - } + // export interface ExtensionContext { + // /** + // * Gets the extension's environment variable collection for this workspace, enabling changes + // * to be applied to terminal environment variables. + // * + // * @param scope The scope to which the environment variable collection applies to. + // */ + // readonly environmentVariableCollection: EnvironmentVariableCollection & { getScopedEnvironmentVariableCollection(scope: EnvironmentVariableScope): EnvironmentVariableCollection }; + // } export type EnvironmentVariableScope = { /** - * The workspace folder to which this collection applies to. If unspecified, collection applies to all workspace folders. - */ + * Any specific workspace folder to get collection for. If unspecified, collection applicable to all workspace folders is returned. + */ workspaceFolder?: WorkspaceFolder; }; + + export interface EnvironmentVariableCollection extends Iterable<[variable: string, mutator: EnvironmentVariableMutator]> { + /** + * A description for the environment variable collection, this will be used to describe the + * changes in the UI. + */ + description: string | MarkdownString | undefined; + } } From 6f6a1211db5cb495b73a796a048453d1d76ea90d Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Tue, 23 May 2023 13:57:45 -0700 Subject: [PATCH 02/11] Fix tests --- .../activation/terminalEnvVarCollectionService.ts | 10 ++++++---- .../terminalEnvVarCollectionService.unit.test.ts | 11 ++++------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/client/interpreter/activation/terminalEnvVarCollectionService.ts b/src/client/interpreter/activation/terminalEnvVarCollectionService.ts index fe4f7b36fca9..dbf77e72379a 100644 --- a/src/client/interpreter/activation/terminalEnvVarCollectionService.ts +++ b/src/client/interpreter/activation/terminalEnvVarCollectionService.ts @@ -115,7 +115,7 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ undefined, shell, ); - const envVarCollection = this.getEnvironmentVariableCollection({ workspaceFolder }); + const envVarCollection = this.getEnvironmentVariableCollection(workspaceFolder); if (!env) { const shellType = identifyShellFromShellPath(shell); const defaultShell = defaultShells[this.platform.osType]; @@ -156,11 +156,13 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ envVarCollection.description = description; } - private getEnvironmentVariableCollection(scope?: EnvironmentVariableScope) { + private getEnvironmentVariableCollection(workspaceFolder?: WorkspaceFolder) { const envVarCollection = this.context.environmentVariableCollection as EnvironmentVariableCollection & { getScopedEnvironmentVariableCollection(scope: EnvironmentVariableScope): EnvironmentVariableCollection; }; - return scope ? envVarCollection.getScopedEnvironmentVariableCollection(scope) : envVarCollection; + return workspaceFolder + ? envVarCollection.getScopedEnvironmentVariableCollection({ workspaceFolder }) + : envVarCollection; } private async handleMicroVenv(resource: Resource) { @@ -169,7 +171,7 @@ export class TerminalEnvVarCollectionService implements IExtensionActivationServ if (interpreter?.envType === EnvironmentType.Venv) { const activatePath = path.join(path.dirname(interpreter.path), 'activate'); if (!(await pathExists(activatePath))) { - const envVarCollection = this.getEnvironmentVariableCollection({ workspaceFolder }); + const envVarCollection = this.getEnvironmentVariableCollection(workspaceFolder); envVarCollection.replace( 'PATH', `${path.dirname(interpreter.path)}${path.delimiter}${process.env.Path}`, diff --git a/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts b/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts index 92c315dc756a..cb0b6b02f288 100644 --- a/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts +++ b/src/test/interpreters/activation/terminalEnvVarCollectionService.unit.test.ts @@ -215,7 +215,7 @@ suite('Terminal Environment Variable Collection Service', () => { verify(collection.delete('PATH')).never(); }); - test('Verify correct scope is used when applying envs and setting description', async () => { + test('Verify correct options are used when applying envs and setting description', async () => { const envVars: NodeJS.ProcessEnv = { CONDA_PREFIX: 'prefix/to/conda', ..._normCaseKeys(process.env) }; delete envVars.PATH; const resource = Uri.file('a'); @@ -229,14 +229,11 @@ suite('Terminal Environment Variable Collection Service', () => { environmentActivationService.getActivatedEnvironmentVariables(resource, undefined, undefined, customShell), ).thenResolve(envVars); - when(scopedCollection.replace(anything(), anything(), anything())).thenCall((_e, _v, scope) => { - assert.deepEqual(scope, { workspaceFolder }); - return Promise.resolve(); - }); - when(scopedCollection.delete(anything())).thenCall((_e, scope) => { - assert.deepEqual(scope, { workspaceFolder }); + when(scopedCollection.replace(anything(), anything(), anything())).thenCall((_e, _v, options) => { + assert.deepEqual(options, { applyAtShellIntegration: true }); return Promise.resolve(); }); + when(scopedCollection.delete(anything())).thenResolve(); await terminalEnvVarCollectionService._applyCollection(resource, customShell); From 48b20f4d3eed035279a2fa8da0801d88d45363aa Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 01:29:22 -0700 Subject: [PATCH 03/11] Update VSCode engine --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 44a80b223c22..6cc41d9c950f 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-20230523" + "vscode": "^1.79.0-20230520" }, "keywords": [ "python", From d0c031ae1bb2d5cf79d4b43569ad5ff50e9bb1ac Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 01:33:45 -0700 Subject: [PATCH 04/11] Update even lower --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6cc41d9c950f..b7ef8a70ff20 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-20230520" + "vscode": "^1.79.0-20230504" }, "keywords": [ "python", From eb9ec4ceac2120714dd8e42539098330ffe2fe27 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 01:49:31 -0700 Subject: [PATCH 05/11] how abt --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b7ef8a70ff20..5d556b646f44 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-20230504" + "vscode": "^1.79.0-insider" }, "keywords": [ "python", From c02afe24699b18e75ab1b254438e51a8a974afbc Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 02:20:15 -0700 Subject: [PATCH 06/11] Update vscode engine to irignal --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5d556b646f44..f1189163d719 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-insider" + "vscode": "^1.78.0" }, "keywords": [ "python", From 70ef676725104fe9b04b0c242037700df0317a0b Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 03:35:48 -0700 Subject: [PATCH 07/11] Use latest insiders --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f1189163d719..0e1a723e64fb 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.78.0" + "vscode": "^1.79.0-insiders" }, "keywords": [ "python", From 2d9683bb687e3ccc2b8e3e65ceeb751ac14d8968 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 10:29:09 -0700 Subject: [PATCH 08/11] Try --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0e1a723e64fb..5bf80084273b 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-insiders" + "vscode": "^1.78.0-20230421" }, "keywords": [ "python", From b7a6d1ec435f891bd74c241f4a134c7f2741a411 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 10:39:18 -0700 Subject: [PATCH 09/11] Update package-lock --- package-lock.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index f00cbb0a912e..bfbd316f269d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -128,7 +128,7 @@ "yargs": "^15.3.1" }, "engines": { - "vscode": "^1.78.0" + "vscode": "^1.78.0-20230421" } }, "node_modules/@azure/abort-controller": { From 3254d7c1ab33c2c191a23e15c1b6795d58ce6e15 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Wed, 24 May 2023 11:10:29 -0700 Subject: [PATCH 10/11] Update vscode engine to insiders which is supposed to be released today --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index bfbd316f269d..a6bdd1be4c1c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -128,7 +128,7 @@ "yargs": "^15.3.1" }, "engines": { - "vscode": "^1.78.0-20230421" + "vscode": "^1.79.0-20230525" } }, "node_modules/@azure/abort-controller": { diff --git a/package.json b/package.json index 5bf80084273b..0fac545cfc0c 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.78.0-20230421" + "vscode": "^1.79.0-20230525" }, "keywords": [ "python", From 05df610f7815f23a6585499379a97bf5183a43a4 Mon Sep 17 00:00:00 2001 From: Kartik Raj Date: Fri, 26 May 2023 04:18:05 -0700 Subject: [PATCH 11/11] Update engine to latest --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0fac545cfc0c..7918881bd115 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "theme": "dark" }, "engines": { - "vscode": "^1.79.0-20230525" + "vscode": "^1.79.0-20230526" }, "keywords": [ "python",