Repository navigation
Commit c57b288
committed
fix(@angular/build): merge component stylesheet metafiles in a stable order
The compiler plugin merges each component stylesheet and web worker metafile
into the main esbuild metafile by iterating `additionalResults` in insertion
order. The map is populated as each bundle finishes, so the order varies from
build to build. When two entries produce the same output file, for example two
components whose stylesheets share a file name and content, or two identical
images referenced from different stylesheets, the last merged entry wins and
`outputs[<file>].inputs` in the stats file flips between builds of identical
sources while every emitted file stays byte-identical.
Sort the entries by key before merging so the result is the same on every
build. Any consumer of the metafile from `onEnd` sees the same attribution.
Fixes #342091 parent 73f6bbb commit c57b288
2 files changed
Lines changed: 60 additions & 1 deletion
File tree
- packages/angular/build/src
- builders/application/tests/options
- tools/esbuild/angular
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
55 | 109 | | |
56 | 110 | | |
57 | 111 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
626 | 626 | | |
627 | 627 | | |
628 | 628 | | |
629 | | - | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
630 | 635 | | |
631 | 636 | | |
632 | 637 | | |
| |||
0 commit comments