diff --git a/packages/compiler-cli/ngcc/src/packages/configuration.ts b/packages/compiler-cli/ngcc/src/packages/configuration.ts index 1c1ef82b5e..033f1f77dd 100644 --- a/packages/compiler-cli/ngcc/src/packages/configuration.ts +++ b/packages/compiler-cli/ngcc/src/packages/configuration.ts @@ -236,10 +236,12 @@ export class NgccConfiguration { private projectConfig: PartiallyProcessedConfig; private cache = new Map(); readonly hash: string; + readonly hashAlgorithm: string; constructor(private fs: ReadonlyFileSystem, baseDir: AbsoluteFsPath) { this.defaultConfig = this.processProjectConfig(DEFAULT_NGCC_CONFIG); this.projectConfig = this.processProjectConfig(this.loadProjectConfig(baseDir)); + this.hashAlgorithm = this.projectConfig.hashAlgorithm; this.hash = this.computeHash(); } @@ -390,9 +392,7 @@ export class NgccConfiguration { } private computeHash(): string { - return createHash(this.projectConfig.hashAlgorithm) - .update(JSON.stringify(this.projectConfig)) - .digest('hex'); + return createHash(this.hashAlgorithm).update(JSON.stringify(this.projectConfig)).digest('hex'); } } diff --git a/packages/compiler-cli/ngcc/src/packages/entry_point_manifest.ts b/packages/compiler-cli/ngcc/src/packages/entry_point_manifest.ts index 3c951dd5b5..e689c5e756 100644 --- a/packages/compiler-cli/ngcc/src/packages/entry_point_manifest.ts +++ b/packages/compiler-cli/ngcc/src/packages/entry_point_manifest.ts @@ -159,7 +159,7 @@ export class EntryPointManifest { const lockFilePath = this.fs.resolve(directory, lockFileName); if (this.fs.exists(lockFilePath)) { const lockFileContents = this.fs.readFile(lockFilePath); - return createHash('md5').update(lockFileContents).digest('hex'); + return createHash(this.config.hashAlgorithm).update(lockFileContents).digest('hex'); } } return null;