src/vs/workbench/contrib/extensions/browser/extensionEditor.ts/ExtensionEditor/setStatus
class ExtensionEditor:	private setStatus(extension: IExtension, template: IExtensionEditorTemplate): void {
		const disposables = this.transientDisposables.add(new DisposableStore());
		const extensionStatus = disposables.add(this.instantiationService.createInstance(ExtensionStatusAction));
		extensionStatus.extension = extension;
		const updateStatus = (layout: boolean) => {
			disposables.clear();
			reset(template.status);
			const status = extensionStatus.status;
			if (status) {
				if (status.icon) {
					const statusIconActionBar = disposables.add(new ActionBar(template.status, { animated: false }));
					statusIconActionBar.push(extensionStatus, { icon: true, label: false });
				}
				disposables.add(this.renderMarkdownText(status.message.value, append(template.status, $('.status-text'))));
			}
			if (layout && this.dimension) {
				this.layout(this.dimension);
			}
		};
		updateStatus(false);
		this.transientDisposables.add(extensionStatus.onDidChangeStatus(() => updateStatus(true)));

		const updateActionLayout = () => template.actionsAndStatusContainer.classList.toggle('list-layout', extension.state === ExtensionState.Installed);
		updateActionLayout();
		this.transientDisposables.add(this.extensionsWorkbenchService.onChange(() => updateActionLayout()));
	}