-
Notifications
You must be signed in to change notification settings - Fork 12k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Several fixes for differential loading bundle downleveling #15666
Conversation
7413236
to
0f65c82
Compare
0f65c82
to
2c452e6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@clydin hi! could this be backported to 8.3.*? |
It will be in the next patch release which will be released this week. |
@clydin thank you, awesome! |
@clydin Updated. I've noticed the bundles are "mixed", and only after generating the ES5 ones chunks are displayed. I still receive the budget warning (don't understand if ES5 or ES2015, but ES2015 is way lower). Is this wanted? |
@clydin We are having the same issue as @lppedd. The bundle sizes have decreased on disk after upgrading to Angular 8, but the budget is still complaining. The size of our main-es2015 bundle is 1.3M, but the budget fails: |
We tested this in ng cli 8.3.8 we still have SRI error for lazy load module. The steps to reproduce is in #15468. Package Version@angular-devkit/architect 0.803.8 |
for (const file of chunk.files as string[]) { | ||
files.push({ | ||
id: chunk.id.toString(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@clydin This will fail when the chunk id is null
, since the id definition in Chunk class tells us that it can also be null
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The types are incorrect there. It can actually be a string or a number. At successful completion of the build an id is also required to properly construct the runtime from within Webpack. Also of note, the name field which from the link says it is always a string, can in fact be null.
Additional fixes/improvements are being backported to 8.3, this will resolve the remaining SRI issues. There are unfortunately still some situations where the bundle budgets can trigger errantly. These are in the process of being corrected. |
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
This corrects SRI value injection into the runtime bundle as well as accurately displaying file sizes following a differential loading build.
Fixes #15468
Fixes #15425
Fixes #15625