src/vs/workbench/services/extensionManagement/electron-sandbox/remoteExtensionManagementService.ts/NativeRemoteExtensionManagementService/downloadCompatibleAndInstall
class NativeRemoteExtensionManagementService:	private async downloadCompatibleAndInstall(extension: IGalleryExtension): Promise<ILocalExtension> {
		const installed = await this.getInstalled(ExtensionType.User);
		const compatible = await this.galleryService.getCompatibleExtension(extension);
		if (!compatible) {
			return Promise.reject(new Error(localize('incompatible', "Unable to install extension '{0}' as it is not compatible with VS Code '{1}'.", extension.identifier.id, this.productService.version)));
		}
		const manifest = await this.galleryService.getManifest(compatible, CancellationToken.None);
		if (manifest) {
			const workspaceExtensions = await this.getAllWorkspaceDependenciesAndPackedExtensions(manifest, CancellationToken.None);
			await Promises.settled(workspaceExtensions.map(e => this.downloadAndInstall(e, installed)));
		}
		return this.downloadAndInstall(extension, installed);
	}