🐞 bug report
Is this a regression?
Yes, it worked in Angular 8
Description
Running ng build --prod --localize
causes the error Unexpected reserved word 'arguments'
but running ng build --prod
builds fine. I have tracked this down to superagent that is referenced by Auth0. What I don’t understand is why only –localize causes the build error. We are building and deploying the code using –prod builds, we are blocked on the –localize builds.
🔬 Minimal Reproduction
I have created a repo for reproduction
https://github.com/thduttonuk/angular9-issue1
Run
ng build --prod
this builds fine
ng build --prod --localize
causes Unexpected reserved word 'arguments'
🔥 Exception or Error
Localized bundle generation failed: angular9-issue1\main-es2015.acfa3bd7294e9b8980d0.js: Unexpected reserved word 'arguments' (1:481223)
An error occurred inlining file "main-es2015.acfa3bd7294e9b8980d0.js"
🌍 Your Environment
Angular Version:
Angular CLI: 9.1.1
Node: 12.16.1
OS: win32 x64
Angular: 9.1.1
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, localize, platform-browser
... platform-browser-dynamic, router
Ivy Workspace: Yes
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.901.1
@angular-devkit/build-angular 0.901.1
@angular-devkit/build-optimizer 0.901.1
@angular-devkit/build-webpack 0.901.1
@angular-devkit/core 9.1.1
@angular-devkit/schematics 9.1.1
@ngtools/webpack 9.1.1
@schematics/angular 9.1.1
@schematics/update 0.901.1
rxjs 6.5.5
typescript 3.8.3
webpack 4.42.0
Anything else relevant?
No
Looks like this is a problem with Babel. This construct is valid in native ES2015 environments:
And there is already a bug reported in the Babel repo: babel/babel#10411
The upstream Babel issue is fixed in 7.11.0.