angular / angular/angular-cli

main.js ends up in Lazy loaded Chunks

Aperta
#28,786 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
area: @angular-devkit/build-angular devkit/build-angular:browser freq1: low severity2: inconvenient type: bug/fix
Lingua principale
TypeScript
Stelle
27k
Fork
11.8k
Merge medio
14h 23m
PR unite (30g)
162

Descrizione

### Which @angular/* package(s) are the source of the bug?

core

### Is this a regression?

Yes

### Description

setting the **bundleName** for one of the styles to "main" results in main.js end up in **Lazy Loaded Chunks** category
That also means the main.js doesn't have any hash at the end of it's filename.

```
{
"input": "styles/main.scss",
"bundleName": "main",
"inject": false
},
```

```
Initial chunk files | Names | Raw size | Estimated transfer size
polyfills.45732861e6a6851d.js | polyfills | 34.19 kB | 11.03 kB

| Initial total | 34.19 kB | 11.03 kB

Lazy chunk files | Names | Raw size | Estimated transfer size
main.css, main.js | main | 277.90 kB | 49.44 kB
runtime.a9fc7548b14f6ea7.js | runtime | 1.06 kB | 587 bytes
```

Proposed solution

Angular should report this collision as a warning. I spent hours figuring this out.

### Please provide a link to a minimal reproduction of the bug

_No response_

### Please provide the exception or error you saw

_No response_

### Please provide the environment you discovered this bug in (run `ng version`)

Angular: 18.1.4
... animations, cdk, cli, common, compiler, compiler-cli, core
... forms, language-service, platform-browser
... platform-browser-dynamic, router

Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1801.4
@angular-devkit/build-angular 18.1.4
@angular-devkit/core 18.1.4
@angular-devkit/schematics 18.1.4
@schematics/angular 18.1.4
rxjs 7.8.1
typescript 5.5.4
zone.js 0.14.4

### Anything else?

_No response_

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia riproducendo il problema con la configurazione styles mostrata su Angular 18.1.4, usando bundleName "main" e inject false, quindi esamina come la build classifica i file generati. Il lavoro è completo quando la collisione dei nomi viene segnalata come avviso e l'output confuso del lazy-chunk viene risolto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
angular, typescript
Ambito
build-system, tooling
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.