angular / angular/angular-cli

main.js ends up in Lazy loaded Chunks

Ouverte
#28,786 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
area: @angular-devkit/build-angular devkit/build-angular:browser freq1: low severity2: inconvenient type: bug/fix
Langage dominant
TypeScript
Étoiles
27k
Forks
11.8k
Merge moyen
14 h 23 min
PR mergées (30 j)
162

Description

### 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_

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par reproduire le problème avec la configuration styles indiquée sur Angular 18.1.4, en utilisant bundleName "main" et inject false, puis examinez comment le build classe les fichiers générés. Le travail est considéré comme terminé lorsque la collision de noms est signalée comme un avertissement et que la sortie déroutante du lazy-chunk est traitée.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
angular, typescript
Domaine
build-system, tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.