Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error In Runtime From Terser During Build --prod

I have updated everything Angular and am now getting the error below (4x) when I
"Build --prod"

No errors if I remove --prod

I have no real code in this app. It is just a starter shell.

Any suggestions on what to look into?

ERROR in runtime.82c6613acef8f7246fe8.js from Terser
TypeError: Cannot read property 'minify' of undefined
    at minify (/Users/puser/Dropbox/AngularApps/GenesisFYI-v06/node_modules/terser-webpack-plugin/dist/minify.js:175:23)
    at module.exports (/Users/puser/Dropbox/AngularApps/GenesisFYI-v06/node_modules/terser-webpack-plugin/dist/worker.js:13:40)
    at handle (/Users/puser/Dropbox/AngularApps/GenesisFYI-v06/node_modules/worker-farm/lib/child/index.js:44:8)
    at process.<anonymous> (/Users/puser/Dropbox/AngularApps/GenesisFYI-v06/node_modules/worker-farm/lib/child/index.js:51:3)
    at process.emit (events.js:197:13)
    at emit (internal/child_process.js:828:12)
    at processTicksAndRejections (internal/process/next_tick.js:76:17)

My current Version

Angular CLI: 7.3.0  
Node: 11.8.0  
OS: darwin x64  
Angular: 7.2.3  
... animations, common, compiler, compiler-cli, core, forms  
... http, language-service, platform-browser  
... platform-browser-dynamic, router, service-worker  

Package                           Version  
-----------------------------------------------------------  
@angular-devkit/architect         0.13.0  
@angular-devkit/build-angular     0.13.0  
@angular-devkit/build-optimizer   0.13.0  
@angular-devkit/build-webpack     0.13.0  
@angular-devkit/core              0.6.8  
@angular-devkit/schematics        0.6.8  
@angular/cli                      7.3.0  
@angular/pwa                      0.6.8  
@ngtools/webpack                  7.3.0  
@schematics/angular               0.6.8  
@schematics/update                0.13.0  
rxjs                              6.4.0  
typescript                        3.2.4  
webpack                           4.29.0  
like image 775
Mathias Avatar asked Feb 02 '19 21:02

Mathias


3 Answers

It seems to be a problem with the recently released version 3.16 of Terser, here's the related issue in Terser and in Terser as a Webpack plugin.

In this VueJS issue they recommended to downgrade it to version 3.14.1. You can do it looking for the line in package.json containing "terser" and pin it as follows:

    "terser": "3.14.1",
like image 162
Pietro Saccardi Avatar answered Oct 22 '22 00:10

Pietro Saccardi


As Pietro Saccardi said, by now, it's necessary to fix the Terser version to 3.14.1 in the package.json as follows: "terser": "3.14.1"

Don't use the ^ in the version or it could upgrade to 3.16.

like image 10
Daniel Avatar answered Oct 22 '22 00:10

Daniel


For Angular prod build, this fixed it for me:

npm install --save-exact --save [email protected]
like image 4
JieLi Avatar answered Oct 21 '22 22:10

JieLi