From 0074066c393792533556e0877932a8565eca5fee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Moreno?= Date: Mon, 6 Apr 2020 12:49:47 +0200 Subject: [PATCH] Revert "extensions: allow built-in extensions on different qualities (#89199)" This reverts commit 7ad58a9bd727ddf77bce49bc2e3b33f52765156d. --- build/builtInExtensions.json | 18 --------------- build/builtin/browser-main.js | 8 +------ build/lib/extensions.ts | 6 +---- .../common/extensionManagementUtil.ts | 23 +------------------ .../node/extensionManagementService.ts | 9 ++++---- .../cachedExtensionScanner.ts | 9 ++------ 6 files changed, 10 insertions(+), 63 deletions(-) diff --git a/build/builtInExtensions.json b/build/builtInExtensions.json index accf81beaeb..371bc0c442f 100644 --- a/build/builtInExtensions.json +++ b/build/builtInExtensions.json @@ -44,24 +44,6 @@ "publisherDisplayName": "Microsoft" } }, - { - "name": "ms-vscode.js-debug-nightly", - "version": "2020.3.3117", - "forQualities": [ - "insider" - ], - "repo": "https://github.com/Microsoft/vscode-js-debug", - "metadata": { - "id": "7acbb4ce-c85a-49d4-8d95-a8054406ae97", - "publisherId": { - "publisherId": "5f5636e7-69ed-4afe-b5d6-8d231fb3d3ee", - "publisherName": "ms-vscode", - "displayName": "Microsoft", - "flags": "verified" - }, - "publisherDisplayName": "Microsoft" - } - }, { "name": "ms-vscode.js-debug-companion", "version": "0.0.4", diff --git a/build/builtin/browser-main.js b/build/builtin/browser-main.js index 4a7faf40eb3..3fe4472df2c 100644 --- a/build/builtin/browser-main.js +++ b/build/builtin/browser-main.js @@ -9,7 +9,6 @@ const os = require('os'); const { remote } = require('electron'); const dialog = remote.dialog; -const productJsonPath = path.join(__dirname, '..', '..', 'product.json'); const builtInExtensionsPath = path.join(__dirname, '..', 'builtInExtensions.json'); const controlFilePath = path.join(os.homedir(), '.vscode-oss-dev', 'extensions', 'control.json'); @@ -51,7 +50,6 @@ function render(el, state) { } const ul = document.createElement('ul'); - const { quality } = readJson(productJsonPath); const { builtin, control } = state; for (const ext of builtin) { @@ -62,10 +60,6 @@ function render(el, state) { const name = document.createElement('code'); name.textContent = ext.name; - if (quality && ext.forQualities && !ext.forQualities.includes(quality)) { - name.textContent += ` (only on ${ext.forQualities.join(', ')})`; - } - li.appendChild(name); const form = document.createElement('form'); @@ -128,4 +122,4 @@ function main() { render(el, { builtin, control }); } -window.onload = main; +window.onload = main; \ No newline at end of file diff --git a/build/lib/extensions.ts b/build/lib/extensions.ts index f7d59264ae3..35f44f6ca52 100644 --- a/build/lib/extensions.ts +++ b/build/lib/extensions.ts @@ -27,7 +27,6 @@ const util = require('./util'); const root = path.dirname(path.dirname(__dirname)); const commit = util.getVersion(root); const sourceMappingURLBase = `https://ticino.blob.core.windows.net/sourcemaps/${commit}`; -const product = require('../../product.json'); function fromLocal(extensionPath: string): Stream { const webpackFilename = path.join(extensionPath, 'extension.webpack.config.js'); @@ -221,19 +220,16 @@ const excludedExtensions = [ 'vscode-test-resolver', 'ms-vscode.node-debug', 'ms-vscode.node-debug2', - 'ms.vscode.js-debug-nightly' ]; interface IBuiltInExtension { name: string; version: string; repo: string; - forQualities?: ReadonlyArray; metadata: any; } -const builtInExtensions = (require('../builtInExtensions.json')) - .filter(({ forQualities }) => !product.quality || forQualities?.includes?.(product.quality) !== false); +const builtInExtensions: IBuiltInExtension[] = require('../builtInExtensions.json'); export function packageLocalExtensionsStream(): NodeJS.ReadWriteStream { const localExtensionDescriptions = (glob.sync('extensions/*/package.json')) diff --git a/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts b/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts index 71d3fb133f6..bad92e00651 100644 --- a/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts +++ b/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts @@ -116,25 +116,4 @@ export function getMaliciousExtensionsSet(report: IReportedExtension[]): Set; - metadata: any; -} - -/** - * Parses the built-in extension JSON data and filters it down to the - * extensions built into this product quality. - */ -export function parseBuiltInExtensions(rawJson: string, productQuality: string | undefined) { - const parsed: IBuiltInExtension[] = JSON.parse(rawJson); - if (!productQuality) { - return parsed; - } - - return parsed.filter(ext => ext.forQualities?.indexOf?.(productQuality) !== -1); -} +} \ No newline at end of file diff --git a/src/vs/platform/extensionManagement/node/extensionManagementService.ts b/src/vs/platform/extensionManagement/node/extensionManagementService.ts index 7c62fca4fbc..2f03a7f2c74 100644 --- a/src/vs/platform/extensionManagement/node/extensionManagementService.ts +++ b/src/vs/platform/extensionManagement/node/extensionManagementService.ts @@ -21,7 +21,7 @@ import { INSTALL_ERROR_MALICIOUS, INSTALL_ERROR_INCOMPATIBLE } from 'vs/platform/extensionManagement/common/extensionManagement'; -import { areSameExtensions, getGalleryExtensionId, groupByExtension, getMaliciousExtensionsSet, getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData, ExtensionIdentifierWithVersion, parseBuiltInExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; +import { areSameExtensions, getGalleryExtensionId, groupByExtension, getMaliciousExtensionsSet, getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData, ExtensionIdentifierWithVersion } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; import { localizeManifest } from '../common/extensionNls'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { INativeEnvironmentService } from 'vs/platform/environment/node/environmentService'; @@ -46,7 +46,6 @@ import { CancellationToken } from 'vs/base/common/cancellation'; import { getPathFromAmdModule } from 'vs/base/common/amd'; import { getManifest } from 'vs/platform/extensionManagement/node/extensionManagementUtil'; import { IExtensionManifest, ExtensionType } from 'vs/platform/extensions/common/extensions'; -import { IProductService } from 'vs/platform/product/common/productService'; const ERROR_SCANNING_SYS_EXTENSIONS = 'scanningSystem'; const ERROR_SCANNING_USER_EXTENSIONS = 'scanningUser'; @@ -134,7 +133,6 @@ export class ExtensionManagementService extends Disposable implements IExtension @ILogService private readonly logService: ILogService, @optional(IDownloadService) private downloadService: IDownloadService, @ITelemetryService private readonly telemetryService: ITelemetryService, - @IProductService private readonly productService: IProductService, ) { super(); this.systemExtensionsPath = environmentService.builtinExtensionsPath; @@ -957,7 +955,10 @@ export class ExtensionManagementService extends Disposable implements IExtension private getDevSystemExtensionsList(): Promise { return pfs.readFile(this.devSystemExtensionsFilePath, 'utf8') - .then(data => parseBuiltInExtensions(data, this.productService.quality).map(ext => ext.name)); + .then(raw => { + const parsed: { name: string }[] = JSON.parse(raw); + return parsed.map(({ name }) => name); + }); } private toNonCancellablePromise(promise: Promise): Promise { diff --git a/src/vs/workbench/services/extensions/electron-browser/cachedExtensionScanner.ts b/src/vs/workbench/services/extensions/electron-browser/cachedExtensionScanner.ts index aeb184fb0d5..99c73ab3904 100644 --- a/src/vs/workbench/services/extensions/electron-browser/cachedExtensionScanner.ts +++ b/src/vs/workbench/services/extensions/electron-browser/cachedExtensionScanner.ts @@ -23,8 +23,6 @@ import { INotificationService, Severity } from 'vs/platform/notification/common/ import { IHostService } from 'vs/workbench/services/host/browser/host'; import { ExtensionScanner, ExtensionScannerInput, IExtensionReference, IExtensionResolver, IRelaxedExtensionDescription } from 'vs/workbench/services/extensions/node/extensionPoints'; import { Translations, ILog } from 'vs/workbench/services/extensions/common/extensionPoints'; -import { IProductService } from 'vs/platform/product/common/productService'; -import { parseBuiltInExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; interface IExtensionCacheData { input: ExtensionScannerInput; @@ -59,7 +57,6 @@ export class CachedExtensionScanner { @IWorkbenchEnvironmentService private readonly _environmentService: INativeWorkbenchEnvironmentService, @IWorkbenchExtensionEnablementService private readonly _extensionEnablementService: IWorkbenchExtensionEnablementService, @IHostService private readonly _hostService: IHostService, - @IProductService private readonly _productService: IProductService, ) { this.scannedExtensions = new Promise((resolve, reject) => { this._scannedExtensionsResolve = resolve; @@ -82,7 +79,7 @@ export class CachedExtensionScanner { public async startScanningExtensions(log: ILog): Promise { try { const translations = await this.translationConfig; - const { system, user, development } = await CachedExtensionScanner._scanInstalledExtensions(this._hostService, this._notificationService, this._environmentService, this._extensionEnablementService, this._productService, log, translations); + const { system, user, development } = await CachedExtensionScanner._scanInstalledExtensions(this._hostService, this._notificationService, this._environmentService, this._extensionEnablementService, log, translations); let result = new Map(); system.forEach((systemExtension) => { @@ -242,7 +239,6 @@ export class CachedExtensionScanner { notificationService: INotificationService, environmentService: INativeWorkbenchEnvironmentService, extensionEnablementService: IWorkbenchExtensionEnablementService, - productService: IProductService, log: ILog, translations: Translations ): Promise<{ system: IExtensionDescription[], user: IExtensionDescription[], development: IExtensionDescription[] }> { @@ -266,7 +262,7 @@ export class CachedExtensionScanner { if (devMode) { const builtInExtensionsFilePath = path.normalize(path.join(getPathFromAmdModule(require, ''), '..', 'build', 'builtInExtensions.json')); const builtInExtensions = pfs.readFile(builtInExtensionsFilePath, 'utf8') - .then(raw => parseBuiltInExtensions(raw, productService.quality)); + .then(raw => JSON.parse(raw)); const controlFilePath = path.join(os.homedir(), '.vscode-oss-dev', 'extensions', 'control.json'); const controlFile = pfs.readFile(controlFilePath, 'utf8') @@ -326,7 +322,6 @@ interface IBuiltInExtension { name: string; version: string; repo: string; - forQualities?: ReadonlyArray; } interface IBuiltInExtensionControl { -- GitLab