feat(@angular/build): Support splitting browser and server stats jsonfiles for easier consumption#32631
feat(@angular/build): Support splitting browser and server stats jsonfiles for easier consumption#32631tsteuwer-accesso wants to merge 2 commits intoangular:mainfrom
Conversation
… files for easier consumption This feature supports splitting out the browser and server stats json files so it's easier to inspect the bundle in various analyzers. Today, everything gets dumped into a single file and it's nearly impossible to use without hours of fix -> remove unused browser chunks -> analyze and starting the loop all over again. This feature implements the feature request I made in angular#28185, along with another developers request to see a stats json file for just the initial page bundle. I've tested this out in my own repository and it's already helped an incredible amount. Fixes angular#28185 angular#28671
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
|
Signed CLA. |
…at was in my main branch off of @angular/angular-cli repository This addresses an issue of including the (browser|server)-initial-stats.json file that was in my original repository. It also fixes unit tests that were also addressed in the original repo.
| @@ -83,9 +83,8 @@ export async function getCommonConfig(wco: WebpackConfigOptions): Promise<Config | |||
| // Once TypeScript provides support for keeping the dynamic import this workaround can be | |||
There was a problem hiding this comment.
This changes are unrelated and unneeded.
Please revert.
| @@ -208,7 +208,7 @@ | |||
| }, | |||
| @@ -394,7 +394,7 @@ | |||
| }, | |||
| @@ -406,7 +406,7 @@ | |||
| }, | |||
| PrerenderedRoutesRecord, | ||
| } from './bundler-execution-result'; | ||
|
|
||
| export function buildMetafileForType( |
There was a problem hiding this comment.
This isn't the ideal place for this logic. Since metadata is already being merged here, we should instead modify that process to skip merging for specific fields or keep them isolated from the start.
|
Thanks, will update when I get a chance. Give me a bit :) |
|
@alan-agius4 , so looking into this, I was reviewing that |
This feature supports splitting out the browser and server stats json files so it's easier to inspect the bundle in various analyzers. Today, everything gets dumped into a single file and it's nearly impossible to use without hours of
fix -> remove unused browser/server chunks -> analyzeand starting the loop all over again.This feature implements the feature request I made in #28185, along with another developers request to see a stats json file for just the initial page bundle. I've tested this out in my own repository and it's already helped an incredible amount.
Fixes #28185 #28671
PR Checklist
Please check to confirm your PR fulfills the following requirements:
PR Type
What kind of change does this PR introduce?
What is the current behavior?
When using
--stats-json, the CLI outputs a single stats.json file.Issue Number: 28185
What is the new behavior?
We now receive a
browser-stats.json,server-stats.json,browser-stats-initial.jsonandserver-stats-initial.jsonDoes this PR introduce a breaking change?
This is a breaking change for anyone relying on CI processes that inspect the old
stats.jsonfile as it will no longer be named that.Other information