Skip to content

Commit b3aaae0

Browse files
clydinvikerman
authored andcommitted
refactor(@angular-devkit/build-angular): optimize bundle process cache detection
This causes the cache checking to stop on the first miss since all required entries must be present for a bundle to be considered cached.
1 parent bdedff8 commit b3aaae0

File tree

1 file changed

+7
-10
lines changed
  • packages/angular_devkit/build_angular/src/browser

1 file changed

+7
-10
lines changed

Diff for: packages/angular_devkit/build_angular/src/browser/index.ts

+7-10
Original file line numberDiff line numberDiff line change
@@ -460,23 +460,20 @@ export function buildWebpackBrowser(
460460

461461
// Attempt to get required cache entries
462462
const cacheEntries = [];
463+
let cached = cacheKeys.length > 0;
463464
for (const key of cacheKeys) {
464465
if (key) {
465-
cacheEntries.push(await cacache.get.info(cacheDownlevelPath, key));
466+
const entry = await cacache.get.info(cacheDownlevelPath, key);
467+
if (!entry) {
468+
cached = false;
469+
break;
470+
}
471+
cacheEntries.push(entry);
466472
} else {
467473
cacheEntries.push(null);
468474
}
469475
}
470476

471-
// Check if required cache entries are present
472-
let cached = cacheKeys.length > 0;
473-
for (let i = 0; i < cacheKeys.length; ++i) {
474-
if (cacheKeys[i] && !cacheEntries[i]) {
475-
cached = false;
476-
break;
477-
}
478-
}
479-
480477
// If all required cached entries are present, use the cached entries
481478
// Otherwise process the files
482479
// If SRI is enabled always process the runtime bundle

0 commit comments

Comments
 (0)