diff --git a/src/vs/vscode.proposed.d.ts b/src/vs/vscode.proposed.d.ts index 7b75660c5bd..a0301e5b0fa 100644 --- a/src/vs/vscode.proposed.d.ts +++ b/src/vs/vscode.proposed.d.ts @@ -2156,6 +2156,15 @@ declare module 'vscode' { //#endregion + //#region https://github.com/microsoft/vscode/issues/116906 + + export interface ExtensionContext { + readonly extensionId: string; + readonly extensionVersion: string; + } + + //#endregion + //#region https://github.com/microsoft/vscode/issues/102091 export interface TextDocument { diff --git a/src/vs/workbench/api/common/extHostExtensionService.ts b/src/vs/workbench/api/common/extHostExtensionService.ts index 2274a4f12e7..47641e7993c 100644 --- a/src/vs/workbench/api/common/extHostExtensionService.ts +++ b/src/vs/workbench/api/common/extHostExtensionService.ts @@ -412,6 +412,14 @@ export abstract class AbstractExtHostExtensionService extends Disposable impleme get storageUri() { return that._storagePath.workspaceValue(extensionDescription); }, get globalStorageUri() { return that._storagePath.globalValue(extensionDescription); }, get extensionMode() { return extensionMode; }, + get extensionId() { + checkProposedApiEnabled(extensionDescription); + return extensionDescription.identifier.value; + }, + get extensionVersion() { + checkProposedApiEnabled(extensionDescription); + return extensionDescription.version; + }, get extensionRuntime() { checkProposedApiEnabled(extensionDescription); return that.extensionRuntime;