diff options
Diffstat (limited to 'src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts')
-rw-r--r-- | src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts | 37 |
1 files changed, 1 insertions, 36 deletions
diff --git a/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts b/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts index 8acce96e6e1..43c8cfd1e19 100644 --- a/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts +++ b/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.ts @@ -10,12 +10,10 @@ import { ResourceMap } from 'vs/base/common/map'; import { URI, UriComponents } from 'vs/base/common/uri'; import { ILocalExtension, Metadata } from 'vs/platform/extensionManagement/common/extensionManagement'; import { areSameExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; -import { IExtensionIdentifier, IExtensionManifest } from 'vs/platform/extensions/common/extensions'; +import { IExtensionIdentifier } from 'vs/platform/extensions/common/extensions'; import { FileOperationError, FileOperationResult, IFileService } from 'vs/platform/files/common/files'; import { createDecorator } from 'vs/platform/instantiation/common/instantiation'; import { ILogService } from 'vs/platform/log/common/log'; -import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; -import { IUserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile'; interface IStoredProfileExtension { identifier: IExtensionIdentifier; @@ -43,45 +41,13 @@ export interface IExtensionsProfileScannerService { export class ExtensionsProfileScannerService extends Disposable implements IExtensionsProfileScannerService { readonly _serviceBrand: undefined; - private readonly migratePromise: Promise<void>; private readonly resourcesAccessQueueMap = new ResourceMap<Queue<IScannedProfileExtension[]>>(); constructor( @IFileService private readonly fileService: IFileService, - @IUriIdentityService private readonly uriIdentityService: IUriIdentityService, - @IUserDataProfilesService private readonly userDataProfilesService: IUserDataProfilesService, @ILogService private readonly logService: ILogService, ) { super(); - this.migratePromise = this.migrate(); - } - - // TODO: @sandy081 remove it in a month - private async migrate(): Promise<void> { - await Promise.all(this.userDataProfilesService.profiles.map(async e => { - if (!e.extensionsResource) { - return; - } - try { - let needsMigrating: boolean = false; - const storedWebExtensions: IStoredProfileExtension[] = JSON.parse((await this.fileService.readFile(e.extensionsResource)).value.toString()); - for (const e of storedWebExtensions) { - if (!e.location) { - continue; - } - if (!e.version) { - try { - const content = (await this.fileService.readFile(this.uriIdentityService.extUri.joinPath(URI.revive(e.location), 'package.json'))).value.toString(); - e.version = (<IExtensionManifest>JSON.parse(content)).version; - needsMigrating = true; - } catch (error) { /* ignore */ } - } - } - if (needsMigrating) { - await this.fileService.writeFile(e.extensionsResource, VSBuffer.fromString(JSON.stringify(storedWebExtensions))); - } - } catch (error) { /* Ignore */ } - })); } scanProfileExtensions(profileLocation: URI): Promise<IScannedProfileExtension[]> { @@ -102,7 +68,6 @@ export class ExtensionsProfileScannerService extends Disposable implements IExte } private async withProfileExtensions(file: URI, updateFn?: (extensions: IScannedProfileExtension[]) => IScannedProfileExtension[]): Promise<IScannedProfileExtension[]> { - await this.migratePromise; return this.getResourceAccessQueue(file).queue(async () => { let extensions: IScannedProfileExtension[] = []; |