angular / angular-cli

CLI tool for Angular
https://cli.angular.io
MIT License
26.77k stars 11.98k forks source link

Version 9: performance issues & out of memory errors #16860

Closed filipesilva closed 3 years ago

filipesilva commented 4 years ago

If you are experiencing performance problems or out of memory errors with Angular CLI version 9, please let us known on this issue.

alialtun14 commented 4 years ago

ng build -c mhsb

10% building 3/3 modules 0 active
<--- Last few GCs --->

[11664:000001BF4FF4BB60]    82832 ms: Mark-sweep 1372.0 (1455.8) -> 1363.3 (1456.3) MB, 1956.2 / 0.0 ms  (average mu = 0.156, current mu = 0.088) allocation failure scavenge might not succeed      
[11664:000001BF4FF4BB60]    84892 ms: Mark-sweep 1367.8 (1456.3) -> 1365.2 (1456.3) MB, 1955.4 / 0.0 ms  (average mu = 0.105, current mu = 0.051) allocation failure GC in old space requested      

<--- JS stacktrace --->

==== JS stack trace =========================================

    0: ExitFrame [pc: 000001F0724DC5C1]
    1: StubFrame [pc: 000001F0725040B1]
Security context: 0x0308fb49e6e9 <JSObject>
    2: onSubstituteNode(aka onSubstituteNode) [00000211020875B9] [D:\QLASS\node_modules\typescript\lib\typescript.js:76870] [bytecode=00000000D32B6A19 offset=0](this=0x0323baa826f1 <undefined>,hint=1,node=0x00d01b8a95b9 <IdentifierObject map = 0000034C8ACA3939>)
    3: onSubstituteNode(aka onSubstituteNode) [00000211...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 00007FF7B607DD8A v8::internal::GCIdleTimeHandler::GCIdleTimeHandler+4506
 2: 00007FF7B6058886 node::MakeCallback+4534
 3: 00007FF7B6059200 node_module_register+2032
 4: 00007FF7B63730DE v8::internal::FatalProcessOutOfMemory+846
 5: 00007FF7B637300F v8::internal::FatalProcessOutOfMemory+639
 6: 00007FF7B6559804 v8::internal::Heap::MaxHeapGrowingFactor+9620
 7: 00007FF7B65507E6 v8::internal::ScavengeJob::operator=+24550
 8: 00007FF7B654EE3C v8::internal::ScavengeJob::operator=+17980
 9: 00007FF7B6557B87 v8::internal::Heap::MaxHeapGrowingFactor+2327
10: 00007FF7B6557C06 v8::internal::Heap::MaxHeapGrowingFactor+2454
11: 00007FF7B66872B0 v8::internal::Factory::NewByteArray+112
12: 00007FF7B6AC583C v8::internal::compiler::MachineOperatorReducer::ReduceFloat64RoundDown+7564
13: 00007FF7B6901230 v8::internal::compiler::Pipeline::AllocateRegistersForTesting+4608
14: 00007FF7B68F95DB v8::internal::compiler::ValueNumberingReducer::operator=+10107
15: 00007FF7B653362A v8::internal::Zone::NewExpand+3034
16: 00007FF7B6535C44 v8::internal::Zone::NewExpand+12788
17: 00007FF7B65883B9 v8::internal::OptimizingCompileDispatcher::InstallOptimizedFunctions+393
18: 00007FF7B642DE23 v8::internal::StackGuard::HandleInterrupts+531
19: 00007FF7B66FEAB7 v8::internal::operator<<+71991
20: 000001F0724DC5C1
alialtun14 commented 4 years ago

We solve this problem (when compile with ng build -c mhsb) we use following command.

.\ngs.cmd build -c mhsb

ngs.cmd: @node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng %1 %2 %3 %4 %5

When we use this command, when the compile process reaches 92% after 10 minutes, it encounters the error below.

92% chunk asset optimization TerserPluginFATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
 1: 00007FF7B607DD8A v8::internal::GCIdleTimeHandler::GCIdleTimeHandler+4506
 2: 00007FF7B6058886 node::MakeCallback+4534
 3: 00007FF7B6059200 node_module_register+2032
 4: 00007FF7B63730DE v8::internal::FatalProcessOutOfMemory+846
 5: 00007FF7B637300F v8::internal::FatalProcessOutOfMemory+639
 6: 00007FF7B6559804 v8::internal::Heap::MaxHeapGrowingFactor+9620
 7: 00007FF7B6557CCB v8::internal::Heap::MaxHeapGrowingFactor+2651
 8: 00007FF7B6681B2B v8::internal::Factory::AllocateRawWithImmortalMap+59  
 9: 00007FF7B66845DD v8::internal::Factory::NewRawTwoByteString+77
10: 00007FF7B6750270 v8::internal::LookupIterator::Start<1>+32464
11: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
12: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
13: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
14: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
15: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
16: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
17: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
18: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
19: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
20: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
21: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
22: 00007FF7B675065F v8::internal::LookupIterator::Start<1>+33471
23: 00007FF7B674FF07 v8::internal::LookupIterator::Start<1>+31591
24: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
25: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
26: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
27: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
28: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
29: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
30: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
31: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
32: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
33: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
34: 00007FF7B674FF3C v8::internal::LookupIterator::Start<1>+31644
35: 00007FF7B674BD62 v8::internal::LookupIterator::Start<1>+14786
36: 00007FF7B674CAD5 v8::internal::LookupIterator::Start<1>+18229
37: 00007FF7B674EE7B v8::internal::LookupIterator::Start<1>+27355
38: 00007FF7B674CB60 v8::internal::LookupIterator::Start<1>+18368
39: 00007FF7B674EE7B v8::internal::LookupIterator::Start<1>+27355
40: 00007FF7B674CB60 v8::internal::LookupIterator::Start<1>+18368
41: 00007FF7B674B77D v8::internal::LookupIterator::Start<1>+13277
42: 00007FF7B63A13FC v8::internal::DeferredHandles::Iterate+1116
43: 00007FF7B6743736 v8::internal::WasmJs::Install+230838
44: 00007FF7B674365B v8::internal::WasmJs::Install+230619
45: 0000014B2DCDC721
# Fatal error in , line 0
# API fatal error handler returned after process out of memory on the background thread
#FailureMessage Object: 000000A352EFA150^CTerminate batch job (Y/N)? y
filipesilva commented 4 years ago

@alialtun14 are you seeing this with version 9 now, and did it not happen with version 8?

I'd like to take a look at the project if possible. Giving me access to a new private github repository is a good way of doing this for private projects.

alialtun14 commented 4 years ago

We have taken same error when we used "ng build -c mhsb". We have solved this problen i V8 by using max_old_space_size=8192. Today after upgrading to V9 and compile with max_old_space_size=8192 we started the error again.

alialtun14 commented 4 years ago

I'd like to take a look at the project if possible. Giving me access to a new private github repository is a good way of doing this for private projects.

Our project is in gitlab reposiyory. If you share your email adrese with alialtun14@gmail.com. I can share zip file of our project.

4zriel commented 4 years ago

Hi - error in private company repo: What could You help:

WARNING in Terser Plugin: Dropping unreachable code [vendor-es2015.89fba3b2bb0ffec12a97.js:181165,11]

...

WARNING in Terser Plugin: Condition always false [vendor-es2015.89fba3b2bb0ffec12a97.js:39575,8]

WARNING in Terser Plugin: Condition left of || always false [vendor-es2015.89fba3b2bb0ffec12a97.js:61851,19]

WARNING in Terser Plugin: Condition left of || always false [vendor-es2015.89fba3b2bb0ffec12a97.js:61853,23]

WARNING in Terser Plugin: Dropping side-effect-free statement [vendor-es2015.89fba3b2bb0ffec12a97.js:209626,16]

ERROR in main-es2015.d92b662609fbc64cbd74.js from Terser RangeError: Maximum call stack size exceeded at Array.push () at Tn.push (C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:76200) at AST_SymbolDefClass.transform (C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:79125) at C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:82505 at AST_ClassExpression.transform (C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:79182) at C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:81712 at AST_Dot.transform (C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:79182) at C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:81532 at AST_Call.transform (C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:79182) at C:\source\DEV\MAIN\WebNg8\node_modules\terser\dist\bundle.min.js:1:81712


ps. dont suggest by dir nam - it is ng9 ;) 
filipesilva commented 4 years ago

@4zriel I edited your comment to remove a large chunk of terser warnings in the log that I reviewed and know is not relevant to the problem at hand. I removed it because it was very long and made it hard to read the rest of this issue thread.

filipesilva commented 4 years ago

@alialtun14 I just tried building with the increased memory and it seemed to build fine:

kamik@RED-X1C6 MINGW64 /d/sandbox/QLASS.V8
$ node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build -c mhsb

chunk {0} runtime.a8ef3a8272419c2e2c66.js (runtime) 1.45 kB [entry] [rendered]
chunk {1} main.742b09869a13ccbb2f64.js (main) 11.4 MB [initial] [rendered]
chunk {2} polyfills.f5b379c03ee1455b2258.js (polyfills) 45.5 kB [initial] [rendered]
chunk {3} styles.b7204deb7fc86e3c9129.css (styles) 21.5 kB [initial] [rendered]
chunk {4} vendor.8fa60aebff14da44025f.js (vendor) 980 kB [initial] [rendered]
chunk {scripts} scripts.f7e72443ce1ee0185d9e.js (scripts) 229 kB [entry] [rendered]
Date: 2020-02-07T15:13:56.679Z - Hash: fdccd0547616a05c53dd - Time: 905229ms

What version of node are you on? There were a couple of node versions that had memory problems. I am on Node v12.4.0.

@4zriel what version of node are you on as well? Can you try the one I mentioned above, or perhaps considering sharing the project privately with me?

4zriel commented 4 years ago

@filipesilva I'll love to share but then I'll propalby need to look for another work ;) I'm using node 13.3.0, and I tried 1st this trick with inceased memory (I set sth about 10k maybe it is too much...) but it didn't change anything...As i said - ng serve and ng buil (without --prod so without --optimization works perfectly fine). It is quite big monorepo, with a lot of iternal lib, but ng update worked surpriselgly well :)

filipesilva commented 4 years ago

@4zriel since you have a monorepo, I think you might be suffering from case 2 in https://angular.io/guide/ivy-compatibility#payload-size-debugging. Can you try the approach described in #16799 (comment) and see if it works please?

To be clear, the approach is to add "sideEffects": false to the package.json of shared libraries. If the library doesn't actually have a package.json, you can add one with just {"sideEffects": false}.

4zriel commented 4 years ago

@filipesilva That's it! :D You are awasome! I spend like 2h at least on this, read through the docs and other issuess but all I need was just 'sideEffects: false'! :D

filipesilva commented 4 years ago

Glad to hear it helped!

alialtun14 commented 4 years ago

@filipesilva

We transferred the project to Angular 9. Thank you for your interest and help.

We can now build with enableIvy: false. When we make Enable Ivy: true and compile, we get errors. We are now in the process of eliminating those errors.

alialtun14 commented 4 years ago

after fixing errors related to compiling with Ivy

main.js file size : 11.6 MB -> 3.72 MB                
compile time:  1.242.877ms  -> 344.095ms

enableIvy = false

chunk {} runtime.689ba4fd6cadb82c1ac2.js (runtime)       1.45 kB [entry] [rendered]
chunk {1} main.24c2383760bad25975b5.js (main)            11.6 MB [initial] [rendered]
chunk {2} polyfills.390e4275012bfaabf98d.js (polyfills)  44.1 kB [initial] [rendered]
chunk {3} styles.b7204deb7fc86e3c9129.css (styles)       21.7 kB [initial] [rendered]
chunk {4} vendor.036641f6c70e59792222.js (vendor)         971 kB [initial] [rendered]
chunk {scripts} scripts.f7e72443ce1ee0185d9e.js (scripts) 229 kB [entry] [rendered]

Date: 2020-02-08T15:30:59.401Z - Hash: a6f7a979bcf2cf1bc117 - Time: 1.242.877ms

enableIvy = true

chunk {} runtime.689ba4fd6cadb82c1ac2.js (runtime)        1.45 kB [entry]   [rendered]
chunk {1} main.1d16e2ff10cfb77ab889.js (main)             3.72 MB [initial] [rendered]
chunk {2} polyfills.92255d147939824f14c4.js (polyfills)   35.6 kB [initial] [rendered]
chunk {3} styles.b7204deb7fc86e3c9129.css (styles)        21.7 kB [initial] [rendered]
chunk {4} vendor.dbeb455719d37461cc6b.js (vendor)         1.02 MB [initial] [rendered]
chunk {scripts} scripts.f7e72443ce1ee0185d9e.js (scripts)  229 kB [entry]   [rendered]

Date: 2020-02-09T00:31:07.815Z - Hash: 5502a74ac622af53451a - Time: 344.095ms
alialtun14 commented 4 years ago

@filipesilva

What version of node are you on? There were a couple of node versions that had memory problems. I am on Node v12.4.0.

We started using node v12.15.0 with Angular 9.

After node v12.15.0, we can compile "node node_modules/@angular/cli/bin/ng build -c mhsb" without any memory problems.

Thank you for your interest and help.

filipesilva commented 4 years ago

@alialtun14 oh wow that's a great improvement, glad to hear!

filipesilva commented 4 years ago

Btw @alialtun14 I noticed you have a vendor chunk, we recommend turning it off in production because it causes increases in total size. You can turn it off in your production configuration with "vendorChunk": false.

alialtun14 commented 4 years ago

"vendorChunk": false

PS D:\QLASS> ng build -c mhsb --vendorChunk=false

chunk {} runtime.689ba4fd6cadb82c1ac2.js (runtime)          1.45 kB [entry] [rendered]
chunk {1} main.c44ecad664850cecbc0b.js (main)               4.76 MB [initial] [rendered]
chunk {2} polyfills.92255d147939824f14c4.js (polyfills)     35.6 kB [initial] [rendered]
chunk {3} styles.b7204deb7fc86e3c9129.css (styles)          21.7 kB [initial] [rendered]
chunk {scripts} scripts.f7e72443ce1ee0185d9e.js (scripts)    229 kB [entry] [rendered]
Date: 2020-02-09T10:23:21.399Z - Hash: 86674d0bccda83b7ccf3 - Time: 328.398ms
alialtun14 commented 4 years ago

@filipesilva According to the blog post by @StephenFluin, bundle size in large app can reduce maximum %40 with ivy compile. In our project we reached to %68 in size and % 72 in time reduction. Is this an expected result or are we making a mistake somewhere :) This result was a great and pleasing surprise for us.

without Ivy with Ivy Reduce (%)
11,6 MB 3,72 68
1248877 MB 344095 72
filipesilva commented 4 years ago

If your app is working properly, I don't think you've done anything wrong. Your project might be a new record for size savings with Ivy :D

alialtun14 commented 4 years ago

If your app is working properly, I don't think you've done anything wrong. Your project might be a new record for size savings with Ivy :D

We started using in production after compiled. There were a few problems we encountered during the compilation. We fixed the problems with your support.

KurtGokhan commented 4 years ago

@filipesilva I am not sure if it is related to this issue but:

I am getting this error in CircleCI. But it builds perfectly in local or Heroku. CLI version: 9.0.2

ERROR in main.5e6bd3ca7eb1cdef2086.js from Terser
Error: Call retries were exceeded
    at ChildProcessWorker.initialize (/home/circleci/workspace/app-web/node_modules/terser-webpack-plugin/node_modules/jest-worker/build/workers/ChildProcessWorker.js:230:21)
    at ChildProcessWorker._onExit (/home/circleci/workspace/app-web/node_modules/terser-webpack-plugin/node_modules/jest-worker/build/workers/ChildProcessWorker.js:307:12)
    at ChildProcess.emit (events.js:223:5)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)

Disabling optimization works but it is not desirable.

Things I tried and did not work:

I see that terser has a problem with CircleCI and it is recommended to use parallel option. But I don't know how to do that in Angular. Related links:

https://github.com/webpack-contrib/terser-webpack-plugin#parallel https://github.com/webpack-contrib/terser-webpack-plugin/issues/202#issuecomment-580704210

filipesilva commented 4 years ago

@KurtGokhan we use the parallel option but let terser-webpack-plugin figure out the real count, and this seems to be a problem in CircleCI. Maybe we should limit the maximum to get around this problem...

filipesilva commented 4 years ago

@KurtGokhan https://github.com/angular/angular-cli/pull/16978 should help with that problem.

KurtGokhan commented 4 years ago

@filipesilva I tested a build from your branch and it works while the master branch build fails. Thank you.

Meanwhile I switched to Github Actions and it works correctly as well.

Zwartpet commented 4 years ago

@filipesilva I'm running into the same problem

Generating ES5 bundles for differential loading...
An unhandled exception occurred: Call retries were exceeded

When building the app in a gitlab kubernetes runner.

Node: v12 Angular:

Angular CLI: 9.0.1
Node: 12.16.0
OS: darwin x64

Angular: 9.0.0
... animations, cdk, common, compiler, compiler-cli, core, forms
... language-service, material, platform-browser
... platform-browser-dynamic, router
Ivy Workspace: Yes

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.900.1
@angular-devkit/build-angular     0.900.1
@angular-devkit/build-optimizer   0.900.1
@angular-devkit/build-webpack     0.900.1
@angular-devkit/core              9.0.1
@angular-devkit/schematics        9.0.1
@angular/cli                      9.0.1
@angular/flex-layout              9.0.0-beta.28
@ngtools/webpack                  9.0.1
@schematics/angular               9.0.1
@schematics/update                0.900.1
rxjs                              6.5.3
typescript                        3.7.5
webpack                           4.41.2
Zwartpet commented 4 years ago

I think it would help if I can limit the number fixed in https://github.com/angular/angular-cli/pull/16978 as 7 is still to much for a container

gnomeontherun commented 4 years ago

Agreed, @filipesilva it would be great if we can configure the parallel value ourselves since Circle still fails out with max retries after your fix was installed.

alan-agius4 commented 4 years ago

@Zwartpet I think the error you are seeing is not the same as the one mentioned above. That is because downlevelling happens after running the Webpack build.

This issue is mostly caused by JestWorker usage in https://github.com/angular/angular-cli/blob/master/packages/angular_devkit/build_angular/src/utils/action-executor.ts. JestWorker uses the following logic to determine the number of workers to spawn https://github.com/facebook/jest/blob/fa8ef2269ceb52ee1bec2e77ba4358dd4ade85b2/packages/jest-worker/src/index.ts#L80

Zwartpet commented 4 years ago

@alan-agius4 But why not make it configurable? I doubt that this will resolve the issue as it still spawns more workers then I there is room for in a container.

But let me test it before i make an assumption

KurtGokhan commented 4 years ago

@filipesilva CircleCI build is working with the new patch.

Apart from that, builds take longer time on CI with Ivy. Because ngcc compiler runs every time. Is there a way to cache ngcc compiling result? Which folders should be cached?

What I mean is this part:

Compiling @angular/core : es2015 as esm2015

Compiling @angular/common : es2015 as esm2015

Compiling @angular/platform-browser : es2015 as esm2015
...
Zwartpet commented 4 years ago

Everything is compiled into the node_modules directory, so that should be cached.

There’s a npm/yarn postinstall command you can use (and tweak) on: https://angular.io/guide/ivy

On 2 Mar 2020, at 19:10, Gökhan Kurt notifications@github.com wrote:

 @filipesilva CircleCI build is working with the new patch.

Apart from that, builds take longer time on CI with Ivy. Because ngcc compiler runs every time. Is there a way to cache ngcc compiling result? Which folders should be cached?

What I mean is this part:

Compiling @angular/core : es2015 as esm2015 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

KurtGokhan commented 4 years ago

Everything is compiled into the node_modules directory, so that should be cached. There’s a npm/yarn postinstall command you can use (and tweak) on: https://angular.io/guide/ivy

I was using npm ci, which deleted node_modules. Switched to npm i and workflow got a lot faster.

Semigradsky commented 4 years ago

@dgp1130 in #17027 you said:

If you're still seeing memory issues after that is merged and released, then we can reevaluate.

I use last version of angular-cli and still have erros like in this comment (https://github.com/Automattic/wp-calypso/pull/39535#issuecomment-589603920): Error: Call retries were exceeded and Error: write EPIPE.

Could you add option to configure parallel in terser?

nac0n commented 4 years ago

Our project is also facing difficuilties to use ngcc.

ng version reads:

Angular CLI: 9.0.7                                                          
Node: 13.12.0                                                               
OS: win32 x64                                                               

Angular: 9.0.7                                                              
... animations, cli, common, compiler, compiler-cli, core, forms            
... language-service, platform-browser, platform-browser-dynamic            
... router                                                                  
Ivy Workspace: Yes                                                          

Package                            Version                                  
------------------------------------------------------------                
@angular-devkit/architect          0.900.7                                  
@angular-devkit/build-angular      0.900.7                                  
@angular-devkit/build-ng-packagr   0.900.7                                  
@angular-devkit/build-optimizer    0.900.7                                  
@angular-devkit/build-webpack      0.900.7                                  
@angular-devkit/core               9.0.7                                    
@angular-devkit/schematics         9.0.7                                    
@angular/cdk                       9.1.3                                    
@angular/flex-layout               9.0.0-beta.29                            
@angular/material                  9.1.3                                    
@ngtools/webpack                   9.0.7                                    
@schematics/angular                9.0.7                                    
@schematics/update                 0.900.7                                  
ng-packagr                         9.0.3                                    
rxjs                               6.5.4                                    
typescript                         3.7.5                                    
webpack                            4.41.2                             

command: npm ci

We tried to remove node_modules folder manually several times but get same results. It always stops during the same point in the compilation.

Paths has been partly edited manually from the stacktrace using , <ProjectPath> and <UserPath>:

Compiling ngx-papaparse : esm5 as esm5
Compiling ngx-papaparse : main as umd
Compiling angular-tree-component : module as esm5

<--- Last few GCs --->

[265432:00000228019FF580]   147212 ms: Scavenge 2045.6 (2050.4) -> 2045.1 (2050.7) MB, 11.3 / 0.0 ms  (average mu = 0.287, current mu = 0.344) allocation failure
[265432:00000228019FF580]   147280 ms: Scavenge 2045.8 (2050.7) -> 2045.3 (2050.7) MB, 11.2 / 0.0 ms  (average mu = 0.287, current mu = 0.344) allocation failure
[265432:00000228019FF580]   147323 ms: Scavenge 2046.0 (2050.7) -> 2045.8 (2051.4) MB, 11.5 / 0.0 ms  (average mu = 0.287, current mu = 0.344) allocation failure

<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x036698280921 <JSObject>
    0: builtin exit frame: parse(this=0x03669829efd9 <Object map = 00000204FC003641>,0x0053ab6fa1a1 <Very long string[18219]>,0x03669829efd9 <Object map = 00000204FC003641>)

    1: loadSourceMap [000000619C56E339] [<ProjectPath>\node_modules\@angular\compiler-cli\ngcc\src\sourcemaps\source_file_loader.js:~73] [pc=000000D88484CC61](this=0x0030c61c46a9 <SourceFileLoader map = 00000204FC01...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 00007FF69ABE0B5F napi_wrap+110655
 2: 00007FF69AB8C606 v8::base::CPU::has_sse+67398
 3: 00007FF69AB8D3F4 v8::base::CPU::has_sse+70964
 4: 00007FF69B3B20BE v8::Isolate::ReportExternalAllocationLimitReached+94
 5: 00007FF69B399811 v8::SharedArrayBuffer::Externalize+785
 6: 00007FF69B26087C v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1468
 7: 00007FF69B26BBC0 v8::internal::Heap::ProtectUnprotectedMemoryChunks+1312
 8: 00007FF69B2686B4 v8::internal::Heap::PageFlagsAreConsistent+3188
 9: 00007FF69B25DDC3 v8::internal::Heap::CollectGarbage+1283
10: 00007FF69B25C554 v8::internal::Heap::AllocateExternalBackingStore+1396
11: 00007FF69B285908 v8::internal::Factory::NewRawOneByteString+216
12: 00007FF69B1A39B0 v8::base::TimeDelta::operator!=+31184
13: 00007FF69B1A4B4C v8::base::TimeDelta::operator!=+35692
14: 00007FF69B1A3EFA v8::base::TimeDelta::operator!=+32538
15: 00007FF69B329190 v8::internal::Builtins::builtin_handle+83856
16: 00007FF69B32973E v8::internal::Builtins::builtin_handle+85310
17: 00007FF69B7FBCCD v8::internal::SetupIsolateDelegate::SetupHeap+517677
18: 000000D88484CC61
Warning: Worker #5 exited unexpectedly (code: 134 | signal: null).
  Current assignment: {entryPoint: angular-draggable-droppable, formatProperty: main, processDts: false}
Error: Process unexpectedly crashed, while processing format property main for entry-point '<ProjectPath>/node_modules/angular-draggable-droppable'.
    at ClusterMaster.onWorkerExit (<ProjectPath>\node_modules\@angular\compiler-cli\ngcc\src\execution\cluster\master.js:152:23)
    at <ProjectPath>\node_modules\@angular\compiler-cli\ngcc\src\execution\cluster\master.js:50:101
    at ClusterMaster.<anonymous> (<ProjectPath>\node_modules\@angular\compiler-cli\ngcc\src\execution\cluster\master.js:245:57)
    at step (<ProjectPath>\node_modules\tslib\tslib.js:139:27)
    at Object.next (<ProjectPath>\node_modules\tslib\tslib.js:120:57)
    at <ProjectPath>\node_modules\tslib\tslib.js:113:75
    at new Promise (<anonymous>)
    at Object.__awaiter (<ProjectPath>\node_modules\tslib\tslib.js:109:16)
    at EventEmitter.<anonymous> (<ProjectPath>\node_modules\@angular\compiler-cli\ngcc\src\execution\cluster\master.js:239:32)
    at EventEmitter.emit (events.js:315:20)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! <ProjectName>@0.0.0 postinstall: `ngcc`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the <ProjectName>@0.0.0 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
petebacondarwin commented 4 years ago

@nac0n - I believe that your issue is because there is a circular dependency within the source-map - source tree, which ngcc is not handling well. Tracking at FW-2041. The description in that issue is:

In the ngcc-validation project we have noted that angular-draggable-droppable causes ngcc to crash with a stack-overflow when processing the UMD format!

This is because the source-map for this file contains inline source content that is has a source-map comment that references the original source-code. There is already cycle detection in the source-map loading algorithm but it only covers case where the source file is loaded more than one, creating a cycle. In this case the source is not loaded from a path on disk but is internal to the source-map itself, so it is not being caught and an infinite recursion is happening.

The proposed solution is to track the paths to the source-map files in addition to the paths to the source files.

I'll see if we can bump it up the priority queue.

nac0n commented 4 years ago

@petebacondarwin - I see, we'll have the postinstall script and other occurrences with angular-draggable-droppable disabled for the time being if we can and will keep ourselves updated looking for fixes to it then. Thanks for the response.

Edit: I do not have access to that issue tracking, just a note. However, i trust that the information about the bugfix will reach consumers.

petebacondarwin commented 4 years ago

@nac0n - The fix to be more resilient to cycles in source-maps was landed in 9.1.1 - https://github.com/angular/angular/pull/36452

faisalzamankhan commented 4 years ago

i am installing angular material and getting error and I think this is due to angular cli version 9

LastDragon-ru commented 4 years ago

Initial ng build ("Compiling ... es2015 as esm2015") requires 4GB of ram for a fresh empty app with angular material (all latest). Is this really normal? :|

nac0n commented 4 years ago

@nac0n - The fix to be more resilient to cycles in source-maps was landed in 9.1.1 - angular/angular#36452

Thanks for the help @petebacondarwin, looks like it doesn't crash anymore and the ngcc compilation goes through. But, we also get errors when running ngcc compilation.

node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatTabsModule, but could not be resolved to an NgModule class.

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Ivy.

115 export declare class CommonModule {

MatTabsModuleis not the only one that appears as an error, there's also MatSelectModule, MatStepperModule, MatSliderModule, MatSidenavModuleand so on...

This error however doesn't appear again after the ngcc is done. We're running ng build and ng serve and we get a successful build/serve. I suppose this works even without the postinstall being successful...?

petebacondarwin commented 4 years ago

We think that this might be caused by the fact that some library (like @angular/cdk/coercion) is not an Angular entry-point but is depending upon @angular/common - and ngcc is not checking its dependencies. This causes ngcc to get the order of processing wrong and allows the filesystem cache of the @angular/common typings file to be populated before it is processed. @JoostK is working on it...

JoostK commented 4 years ago

The @angular/cdk/coercion entry-point depends on @angular/core, not @angular/common. So I'm afraid it has a different cause. @nac0n it would be helpful if you could share additional logging or a reproduction, including the workflow that you use. E.g. is ngcc run only from the CLI or as a postinstall script?

nac0n commented 4 years ago

@JoostK We run ngcc via postinstall. So ngcc is running when npm install has been ran. No other arguments, only "postinstall": ngcc

Our log after running npm install; P.S. Mind you that i replaced Project-Path and AppData-paths with placeholders.

λ npm install                                                                                                                                                              

> node-sass@4.13.1 install <projectpath>\node_modules\node-sass                                                                                                    
> node scripts/install.js                                                                                                                                                  

Cached binary found at <appdataPath>\Roaming\npm-cache\node-sass\4.13.1\win32-x64-79_binding.node                                                              

> core-js@3.6.4 postinstall <projectpath>\node_modules\@angular-devkit\build-angular\node_modules\core-js                                                          
> node -e "try{require('./postinstall')}catch(e){}"                                                                                                                        

Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!                                                           

The project needs your help! Please consider supporting of core-js on Open Collective or Patreon:                                                                          
> https://opencollective.com/core-js                                                                                                                                       
> https://www.patreon.com/zloirock                                                                                                                                         

Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)                                                                                   

> core-js@2.6.11 postinstall <projectpath>\node_modules\core-js                                                                                                    
> node -e "try{require('./postinstall')}catch(e){}"                                                                                                                        

> ejs@2.7.4 postinstall <projectpath>\node_modules\ejs                                                                                                             
> node ./postinstall.js                                                                                                                                                    

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)                                                                              

> @angular/cli@9.1.1 postinstall <projectpath>\node_modules\@angular\cli                                                                                           
> node ./bin/postinstall/script.js                                                                                                                                         

> node-sass@4.13.1 postinstall <projectpath>\node_modules\node-sass                                                                                                
> node scripts/build.js                                                                                                                                                    

Binary found at <projectpath>\node_modules\node-sass\vendor\win32-x64-79\binding.node                                                                              
Testing binary                                                                                                                                                             
Binary is fine                                                                                                                                                             

> <projectname>@0.0.0 postinstall <projectpath>                                                                                                                       
> ngcc                                                                                                                                                                     

Warning: Entry point 'ngx-papaparse' contains deep imports into '<ProjectPath>/node_modules/papaparse/papaparse.min.js'. This is probably not a problem, but may ca
use the compilation of entry points to be out of order.                                                                                                                    
Compiling @angular/animations : fesm2015 as esm2015                                                                                                                        
Compiling @angular/cdk/keycodes : fesm2015 as esm2015                                                                                                                      
Compiling @angular/animations : fesm5 as esm5                                                                                                                              
Compiling @angular/animations : main as umd                                                                                                                                
Compiling @angular/cdk/keycodes : esm5 as esm5                                                                                                                             
Compiling @angular/animations : esm2015 as esm2015                                                                                                                         
Compiling @angular/cdk/keycodes : main as umd                                                                                                                              
Compiling @angular/compiler/testing : fesm2015 as esm2015                                                                                                                  
Compiling @angular/compiler/testing : fesm5 as esm5                                                                                                                        
Compiling @angular/compiler/testing : main as umd                                                                                                                          
Compiling @angular/core : fesm2015 as esm2015                                                                                                                              
Compiling @angular/compiler/testing : esm5 as esm5                                                                                                                         
Compiling @angular/compiler/testing : esm2015 as esm2015                                                                                                                   
Compiling @angular/cdk/keycodes : fesm5 as esm5                                                                                                                            
Compiling @angular/animations : esm5 as esm5                                                                                                                               
Compiling @angular/cdk/keycodes : esm2015 as esm2015                                                                                                                       
Compiling @angular/common : fesm2015 as esm2015                                                                                                                            
Compiling @angular/cdk/collections : fesm2015 as esm2015                                                                                                                   
Compiling ngx-papaparse : fesm2015 as esm2015                                                                                                                              
Compiling @angular/animations/browser : fesm2015 as esm2015                                                                                                                
Compiling @angular/cdk/observers : fesm2015 as esm2015                                                                                                                     
Compiling @ngrx/store : fesm2015 as esm2015                                                                                                                                
Compiling @angular/core/testing : fesm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/platform : fesm2015 as esm2015                                                                                                                      
Compiling angular-tree-component : main as commonjs                                                                                                                        
Compiling @angular/cdk/bidi : fesm2015 as esm2015                                                                                                                          
Compiling @angular/cdk/accordion : fesm2015 as esm2015                                                                                                                     
Compiling @angular/core : fesm5 as esm5                                                                                                                                    
Compiling @angular/platform-browser : fesm2015 as esm2015                                                                                                                  
Compiling @angular/cdk/portal : fesm2015 as esm2015                                                                                                                        
Compiling @angular/cdk/a11y : fesm2015 as esm2015                                                                                                                          
Compiling @angular/forms : fesm2015 as esm2015                                                                                                                             
Compiling @angular/cdk/scrolling : fesm2015 as esm2015                                                                                                                     
Compiling @angular/cdk/layout : fesm2015 as esm2015                                                                                                                        
Compiling @angular/common/http : fesm2015 as esm2015                                                                                                                       
Compiling @angular/platform-browser/animations : fesm2015 as esm2015                                                                                                       
Compiling @angular/cdk/text-field : fesm2015 as esm2015                                                                                                                    
Compiling @angular/flex-layout/core : es2015 as esm2015                                                                                                                    
Compiling @angular/router : fesm2015 as esm2015                                                                                                                            
Compiling @angular/cdk/stepper : fesm2015 as esm2015                                                                                                                       
Compiling @angular/cdk/table : fesm2015 as esm2015                                                                                                                         
Compiling @angular/cdk/overlay : fesm2015 as esm2015                                                                                                                       
Compiling @angular/cdk/tree : fesm2015 as esm2015                                                                                                                          
Compiling @angular/material/core : fesm2015 as esm2015                                                                                                                     
Compiling @angular/platform-browser/testing : fesm2015 as esm2015                                                                                                          
Compiling @angular/platform-browser-dynamic : fesm2015 as esm2015                                                                                                          
Compiling @angular/common/testing : fesm2015 as esm2015                                                                                                                    
Compiling @ngrx/effects : fesm2015 as esm2015                                                                                                                              
Compiling angular-resizable-element : fesm2015 as esm2015                                                                                                                  
Compiling angular-draggable-droppable : fesm2015 as esm2015                                                                                                                
Compiling @angular/flex-layout/flex : es2015 as esm2015                                                                                                                    
Compiling @angular/flex-layout/extended : es2015 as esm2015                                                                                                                
Compiling @angular/material/form-field : fesm2015 as esm2015                                                                                                               
Compiling @angular/material/button : fesm2015 as esm2015                                                                                                                   
Compiling @angular/material/divider : fesm2015 as esm2015                                                                                                                  
Compiling @angular/material/icon : fesm2015 as esm2015                                                                                                                     
Compiling @angular/flex-layout/grid : es2015 as esm2015                                                                                                                    
Compiling @angular/material/tooltip : fesm2015 as esm2015                                                                                                                  
Compiling @angular/material/dialog : fesm2015 as esm2015                                                                                                                   
Error: Failed to compile entry-point @angular/material/tooltip (fesm2015 as esm2015) due to compilation errors:                                                            
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatTooltipModule, but could not be resolved to an NgModule class.       
This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/sort : fesm2015 as esm2015                                                                                                                     
Compiling @angular/material/input : fesm2015 as esm2015                                                                                                                    
Compiling @angular/animations/browser/testing : fesm2015 as esm2015                                                                                                        
Compiling @angular/material/select : fesm2015 as esm2015                                                                                                                   
Compiling @angular/cdk/clipboard : fesm2015 as esm2015                                                                                                                     
Warning: Skipping processing of @angular/material/paginator because its dependency @angular/material/tooltip failed to compile.                                            
Compiling @angular/common/http/testing : fesm2015 as esm2015                                                                                                               
Compiling @angular/cdk/drag-drop : fesm2015 as esm2015                                                                                                                     
Compiling @angular/material/badge : fesm2015 as esm2015                                                                                                                    
Compiling @angular/material/autocomplete : fesm2015 as esm2015                                                                                                             
Compiling @angular/material/card : fesm2015 as esm2015                                                                                                                     
Compiling @angular/material/button-toggle : fesm2015 as esm2015                                                                                                            
Compiling @angular/material/bottom-sheet : fesm2015 as esm2015                                                                                                             
Compiling @angular/material/checkbox : fesm2015 as esm2015                                                                                                                 
Compiling @angular/material/chips : fesm2015 as esm2015                                                                                                                    
Compiling @angular/material/expansion : fesm2015 as esm2015                                                                                                                
Error: Failed to compile entry-point @angular/material/expansion (fesm2015 as esm2015) due to compilation errors:                                                          
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatExpansionModule, but could not be resolved to an NgModule class.     

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/grid-list : fesm2015 as esm2015                                                                                                                
Compiling @angular/material/icon/testing : fesm2015 as esm2015                                                                                                             
Compiling @angular/material/datepicker : fesm2015 as esm2015                                                                                                               
Compiling @angular/material/list : fesm2015 as esm2015                                                                                                                     
Compiling @angular/material/progress-bar : fesm2015 as esm2015                                                                                                             
Compiling @angular/material/menu : fesm2015 as esm2015                                                                                                                     
Warning: Skipping processing of @angular/material/table because its dependency @angular/material/tooltip failed to compile.                                                
Compiling @angular/material/progress-spinner : fesm2015 as esm2015                                                                                                         
Compiling @angular/material/radio : fesm2015 as esm2015                                                                                                                    
Compiling @angular/material/sidenav : fesm2015 as esm2015                                                                                                                  
Compiling @angular/material/slide-toggle : fesm2015 as esm2015                                                                                                             
Compiling @angular/material/slider : fesm2015 as esm2015                                                                                                                   
Compiling @angular/material/snack-bar : fesm2015 as esm2015                                                                                                                
Compiling @angular/material/stepper : fesm2015 as esm2015                                                                                                                  
Compiling @angular/material/toolbar : fesm2015 as esm2015                                                                                                                  
Compiling @angular/material/tabs : fesm2015 as esm2015                                                                                                                     
Compiling @angular/material/tree : fesm2015 as esm2015                                                                                                                     
Compiling @ngrx/effects/testing : fesm2015 as esm2015                                                                                                                      
Compiling @angular/router/testing : fesm2015 as esm2015                                                                                                                    
Compiling @ngrx/entity : fesm2015 as esm2015                                                                                                                               
Compiling @angular/platform-browser-dynamic/testing : fesm2015 as esm2015                                                                                                  
Compiling @ngrx/store/testing : fesm2015 as esm2015                                                                                                                        
Compiling @ngrx/router-store : fesm2015 as esm2015                                                                                                                         
Compiling @angular/animations/browser : fesm5 as esm5                                                                                                                      
Compiling @angular/flex-layout : es2015 as esm2015                                                                                                                         
Compiling angular-calendar : fesm2015 as esm2015                                                                                                                           
Compiling @angular/core : main as umd                                                                                                                                      
Compiling @angular/animations/browser : main as umd                                                                                                                        
Compiling @angular/animations/browser : esm2015 as esm2015                                                                                                                 
Compiling @angular/animations/browser : esm5 as esm5                                                                                                                       
Compiling @angular/animations/browser/testing : fesm5 as esm5                                                                                                              
Compiling @angular/animations/browser/testing : esm2015 as esm2015                                                                                                         
Compiling @angular/animations/browser/testing : esm5 as esm5                                                                                                               
Compiling @angular/animations/browser/testing : main as umd                                                                                                                
Compiling @angular/common : fesm5 as esm5                                                                                                                                  
Compiling @angular/cdk/clipboard : fesm5 as esm5                                                                                                                           
Compiling @angular/common : main as umd                                                                                                                                    
Compiling @angular/common : esm2015 as esm2015                                                                                                                             
Compiling @angular/cdk/clipboard : esm2015 as esm2015                                                                                                                      
Compiling @angular/common : esm5 as esm5                                                                                                                                   
Compiling @angular/cdk/clipboard : esm5 as esm5                                                                                                                            
Compiling @angular/cdk/clipboard : main as umd                                                                                                                             
Compiling @angular/core : esm2015 as esm2015                                                                                                                               
Compiling @angular/cdk/platform : fesm5 as esm5                                                                                                                            
Compiling @angular/core : esm5 as esm5                                                                                                                                     
Compiling @angular/cdk/platform : esm2015 as esm2015                                                                                                                       
Compiling @angular/cdk/platform : esm5 as esm5                                                                                                                             
Compiling @angular/cdk/platform : main as umd                                                                                                                              
Compiling @angular/cdk/bidi : fesm5 as esm5                                                                                                                                
Compiling @angular/cdk/bidi : esm2015 as esm2015                                                                                                                           
Compiling @angular/cdk/bidi : esm5 as esm5                                                                                                                                 
Compiling @angular/cdk/collections : fesm5 as esm5                                                                                                                         
Compiling @angular/cdk/bidi : main as umd                                                                                                                                  
Compiling @angular/cdk/collections : esm5 as esm5                                                                                                                          
Compiling @angular/cdk/collections : esm2015 as esm2015                                                                                                                    
Compiling @angular/cdk/collections : main as umd                                                                                                                           
Compiling @angular/cdk/scrolling : fesm5 as esm5                                                                                                                           
Compiling @angular/cdk/scrolling : esm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/scrolling : esm5 as esm5                                                                                                                            
Compiling @angular/cdk/scrolling : main as umd                                                                                                                             
Compiling @angular/cdk/drag-drop : fesm5 as esm5                                                                                                                           
Compiling @angular/cdk/drag-drop : main as umd                                                                                                                             
Compiling @angular/cdk/drag-drop : esm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/drag-drop : esm5 as esm5                                                                                                                            
Compiling @angular/common/http : fesm5 as esm5                                                                                                                             
Compiling @angular/common/http/testing : fesm5 as esm5                                                                                                                     
Compiling @angular/common/http : esm2015 as esm2015                                                                                                                        
Compiling @angular/common/http : main as umd                                                                                                                               
Compiling @angular/common/http/testing : esm2015 as esm2015                                                                                                                
Compiling @angular/common/http : esm5 as esm5                                                                                                                              
Compiling @angular/common/http/testing : esm5 as esm5                                                                                                                      
Compiling @angular/common/http/testing : main as umd                                                                                                                       
Compiling @angular/flex-layout/core : main as umd                                                                                                                          
Compiling @angular/flex-layout/core : module as esm5                                                                                                                       
Compiling @angular/platform-browser : fesm5 as esm5                                                                                                                        
Compiling @angular/platform-browser : main as umd                                                                                                                          
Compiling @angular/platform-browser : esm2015 as esm2015                                                                                                                   
Compiling @angular/platform-browser : esm5 as esm5                                                                                                                         
Compiling @angular/flex-layout/extended : main as umd                                                                                                                      
Compiling @angular/flex-layout/extended : module as esm5                                                                                                                   
Compiling @angular/flex-layout/grid : main as umd                                                                                                                          
Compiling @angular/flex-layout/flex : module as esm5                                                                                                                       
Compiling @angular/flex-layout/flex : main as umd                                                                                                                          
Compiling @angular/flex-layout/grid : module as esm5                                                                                                                       
Compiling @angular/cdk/observers : fesm5 as esm5                                                                                                                           
Compiling @angular/flex-layout : module as esm5                                                                                                                            
Compiling @angular/flex-layout : main as umd                                                                                                                               
Compiling @angular/cdk/observers : main as umd                                                                                                                             
Compiling @angular/cdk/observers : esm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/observers : esm5 as esm5                                                                                                                            
Compiling @angular/cdk/a11y : fesm5 as esm5                                                                                                                                
Compiling @angular/platform-browser/animations : fesm5 as esm5                                                                                                             
Compiling @angular/cdk/a11y : esm2015 as esm2015                                                                                                                           
Compiling @angular/platform-browser/animations : esm2015 as esm2015                                                                                                        
Compiling @angular/cdk/a11y : esm5 as esm5                                                                                                                                 
Compiling @angular/cdk/a11y : main as umd                                                                                                                                  
Compiling @angular/platform-browser/animations : esm5 as esm5                                                                                                              
Compiling @angular/platform-browser/animations : main as umd                                                                                                               
Compiling @angular/forms : fesm5 as esm5                                                                                                                                   
Compiling @angular/forms : main as umd                                                                                                                                     
Compiling @angular/material/core : fesm5 as esm5                                                                                                                           
Compiling @angular/forms : esm2015 as esm2015                                                                                                                              
Error: Failed to compile entry-point @angular/material/core (fesm5 as esm5) due to compilation errors:                                                                     
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatOptionModule, but could not be resolved to an NgModule class.        

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/forms : esm5 as esm5                                                                                                                                    
Compiling @angular/material/core : main as umd                                                                                                                             
Compiling @angular/material/core : esm5 as esm5                                                                                                                            
Compiling @angular/cdk/portal : fesm5 as esm5                                                                                                                              
Compiling @angular/material/core : esm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/portal : esm2015 as esm2015                                                                                                                         
Compiling @angular/cdk/portal : esm5 as esm5                                                                                                                               
Compiling @angular/cdk/portal : main as umd                                                                                                                                
Compiling @angular/cdk/overlay : fesm5 as esm5                                                                                                                             
Compiling @angular/cdk/overlay : main as umd                                                                                                                               
Compiling @angular/cdk/overlay : esm2015 as esm2015                                                                                                                        
Compiling @angular/cdk/overlay : esm5 as esm5                                                                                                                              
Compiling @angular/material/form-field : fesm5 as esm5                                                                                                                     
Error: Failed to compile entry-point @angular/material/form-field (fesm5 as esm5) due to compilation errors:                                                               
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatFormFieldModule, but could not be resolved to an NgModule class.     

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/form-field : esm5 as esm5                                                                                                                      
Compiling @angular/material/form-field : esm2015 as esm2015                                                                                                                
Compiling @angular/material/form-field : main as umd                                                                                                                       
Compiling @angular/material/autocomplete : fesm5 as esm5                                                                                                                   
Compiling @angular/material/badge : fesm5 as esm5                                                                                                                          
Compiling @angular/material/autocomplete : esm2015 as esm2015                                                                                                              
Compiling @angular/material/autocomplete : main as umd                                                                                                                     
Compiling @angular/material/autocomplete : esm5 as esm5                                                                                                                    
Error: Failed to compile entry-point @angular/material/autocomplete (esm5 as esm5) due to compilation errors:                                                              
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatAutocompleteModule, but could not be resolved to an NgModule class.  

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115Compiling @angular/material/badge : esm2015 as esm2015                                                                                                                  
 export declare class CommonModule {                                                                                                                                       
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/badge : esm5 as esm5                                                                                                                           
Compiling @angular/material/badge : main as umd                                                                                                                            
Compiling @angular/cdk/layout : fesm5 as esm5                                                                                                                              
Compiling @angular/cdk/layout : esm2015 as esm2015                                                                                                                         
Compiling @angular/cdk/layout : main as umd                                                                                                                                
Compiling @angular/cdk/layout : esm5 as esm5                                                                                                                               
Compiling @angular/material/bottom-sheet : fesm5 as esm5                                                                                                                   
Compiling @angular/material/bottom-sheet : esm2015 as esm2015                                                                                                              
Compiling @angular/material/button-toggle : fesm5 as esm5                                                                                                                  
Compiling @angular/material/bottom-sheet : esm5 as esm5                                                                                                                    
Compiling @angular/material/button-toggle : esm2015 as esm2015                                                                                                             
Compiling @angular/material/button-toggle : esm5 as esm5                                                                                                                   
Compiling @angular/material/button-toggle : main as umd                                                                                                                    
Compiling @angular/material/bottom-sheet : main as umd                                                                                                                     
Compiling @angular/material/card : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/card : fesm5 as esm5                                                                                                                           
Compiling @angular/material/card : esm5 as esm5                                                                                                                            
Compiling @angular/material/checkbox : fesm5 as esm5                                                                                                                       
Compiling @angular/material/card : main as umd                                                                                                                             
Compiling @angular/material/checkbox : esm2015 as esm2015                                                                                                                  
Compiling @angular/material/checkbox : esm5 as esm5                                                                                                                        
Compiling @angular/material/checkbox : main as umd                                                                                                                         
Compiling @angular/material/chips : fesm5 as esm5                                                                                                                          
Compiling @angular/material/button : fesm5 as esm5                                                                                                                         
Compiling @angular/material/chips : esm2015 as esm2015                                                                                                                     
Compiling @angular/material/chips : esm5 as esm5                                                                                                                           
Compiling @angular/material/button : esm2015 as esm2015                                                                                                                    
Compiling @angular/material/button : esm5 as esm5                                                                                                                          
Compiling @angular/material/chips : main as umd                                                                                                                            
Compiling @angular/material/button : main as umd                                                                                                                           
Compiling @angular/cdk/text-field : fesm5 as esm5                                                                                                                          
Compiling @angular/material/dialog : fesm5 as esm5                                                                                                                         
Compiling @angular/cdk/text-field : esm2015 as esm2015                                                                                                                     
Compiling @angular/material/dialog : esm2015 as esm2015                                                                                                                    
Compiling @angular/cdk/text-field : esm5 as esm5                                                                                                                           
Compiling @angular/material/dialog : main as umd                                                                                                                           
Compiling @angular/material/dialog : esm5 as esm5                                                                                                                          
Compiling @angular/cdk/text-field : main as umd                                                                                                                            
Compiling @angular/material/input : fesm5 as esm5                                                                                                                          
Compiling @angular/material/input : esm5 as esm5                                                                                                                           
Compiling @angular/material/input : esm2015 as esm2015                                                                                                                     
Compiling @angular/material/input : main as umd                                                                                                                            
Compiling @angular/material/datepicker : fesm5 as esm5                                                                                                                     
Compiling @angular/cdk/accordion : fesm5 as esm5                                                                                                                           
Warning: Skipping processing of @angular/material/expansion because its dependency @angular/material/expansion failed to compile.                                          
Warning: Skipping processing of @angular/material/expansion because its dependency @angular/material/expansion failed to compile.                                          
Warning: Skipping processing of @angular/material/expansion because its dependency @angular/material/expansion failed to compile.                                          
Warning: Skipping processing of @angular/material/expansion because its dependency @angular/material/expansion failed to compile.                                          
Compiling @angular/cdk/accordion : esm2015 as esm2015                                                                                                                      
Compiling @angular/cdk/accordion : esm5 as esm5                                                                                                                            
Compiling @angular/material/datepicker : main as umd                                                                                                                       
Compiling @angular/material/datepicker : esm2015 as esm2015                                                                                                                
Compiling @angular/cdk/accordion : main as umd                                                                                                                             
Compiling @angular/material/datepicker : esm5 as esm5                                                                                                                      
Compiling @angular/material/grid-list : fesm5 as esm5                                                                                                                      
Compiling @angular/material/grid-list : esm5 as esm5                                                                                                                       
Compiling @angular/material/grid-list : main as umd                                                                                                                        
Compiling @angular/material/grid-list : esm2015 as esm2015                                                                                                                 
Compiling @angular/material/icon : fesm5 as esm5                                                                                                                           
Compiling @angular/material/icon : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/icon : esm5 as esm5                                                                                                                            
Compiling @angular/material/icon/testing : fesm5 as esm5                                                                                                                   
Compiling @angular/material/icon : main as umd                                                                                                                             
Compiling @angular/material/icon/testing : esm5 as esm5                                                                                                                    
Compiling @angular/material/icon/testing : esm2015 as esm2015                                                                                                              
Compiling @angular/material/divider : fesm5 as esm5                                                                                                                        
Compiling @angular/material/icon/testing : main as umd                                                                                                                     
Compiling @angular/material/divider : esm2015 as esm2015                                                                                                                   
Compiling @angular/material/divider : esm5 as esm5                                                                                                                         
Compiling @angular/material/divider : main as umd                                                                                                                          
Compiling @angular/material/list : fesm5 as esm5                                                                                                                           
Compiling @angular/material/list : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/list : main as umd                                                                                                                             
Compiling @angular/material/list : esm5 as esm5                                                                                                                            
Compiling @angular/material/menu : fesm5 as esm5                                                                                                                           
Compiling @angular/material/menu : main as umd                                                                                                                             
Compiling @angular/material/menu : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/menu : esm5 as esm5                                                                                                                            
Error: Failed to compile entry-point @angular/material/menu (main as umd) due to compilation errors:                                                                       
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatMenuModule, but could not be resolved to an NgModule class.          

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/progress-bar : fesm5 as esm5                                                                                                                   
Compiling @angular/material/progress-bar : esm2015 as esm2015                                                                                                              
Compiling @angular/material/progress-bar : esm5 as esm5                                                                                                                    
Compiling @angular/material/progress-spinner : fesm5 as esm5                                                                                                               
Compiling @angular/material/progress-bar : main as umd                                                                                                                     
Compiling @angular/material/progress-spinner : esm2015 as esm2015                                                                                                          
Error: Failed to compile entry-point @angular/material/progress-spinner (esm2015 as esm2015) due to compilation errors:                                                    
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatProgressSpinnerModule, but could not be resolved to an NgModule class
.                                                                                                                                                                          

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/progress-spinner : esm5 as esm5                                                                                                                
Compiling @angular/material/progress-spinner : main as umd                                                                                                                 
Compiling @angular/material/radio : fesm5 as esm5                                                                                                                          
Compiling @angular/material/radio : esm2015 as esm2015                                                                                                                     
Compiling @angular/material/radio : esm5 as esm5                                                                                                                           
Compiling @angular/material/radio : main as umd                                                                                                                            
Compiling @angular/material/sidenav : fesm5 as esm5                                                                                                                        
Compiling @angular/material/sidenav : esm2015 as esm2015                                                                                                                   
Compiling @angular/material/slide-toggle : fesm5 as esm5                                                                                                                   
Error: Failed to compile entry-point @angular/material/sidenav (esm2015 as esm2015) due to compilation errors:                                                             
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatSidenavModule, but could not be resolved to an NgModule class.       

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/slide-toggle : esm2015 as esm2015                                                                                                              
Compiling @angular/material/sidenav : esm5 as esm5                                                                                                                         
Compiling @angular/material/sidenav : main as umd                                                                                                                          
Compiling @angular/material/slide-toggle : esm5 as esm5                                                                                                                    
Compiling @angular/material/slide-toggle : main as umd                                                                                                                     
Compiling @angular/material/slider : esm2015 as esm2015                                                                                                                    
Compiling @angular/material/slider : fesm5 as esm5                                                                                                                         
Error: Failed to compile entry-point @angular/material/slider (esm2015 as esm2015) due to compilation errors:                                                              
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatSliderModule, but could not be resolved to an NgModule class.        

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/slider : esm5 as esm5                                                                                                                          
Compiling @angular/material/slider : main as umd                                                                                                                           
Compiling @angular/material/snack-bar : fesm5 as esm5                                                                                                                      
Compiling @angular/cdk/stepper : fesm5 as esm5                                                                                                                             
Compiling @angular/material/snack-bar : esm2015 as esm2015                                                                                                                 
Compiling @angular/material/snack-bar : esm5 as esm5                                                                                                                       
Compiling @angular/cdk/stepper : esm2015 as esm2015                                                                                                                        
Compiling @angular/cdk/stepper : esm5 as esm5                                                                                                                              
Compiling @angular/material/snack-bar : main as umd                                                                                                                        
Compiling @angular/cdk/stepper : main as umd                                                                                                                               
Compiling @angular/material/stepper : fesm5 as esm5                                                                                                                        
Compiling @angular/material/stepper : esm2015 as esm2015                                                                                                                   
Compiling @angular/material/stepper : main as umd                                                                                                                          
Compiling @angular/cdk/table : fesm5 as esm5                                                                                                                               
Error: Failed to compile entry-point @angular/material/stepper (esm2015 as esm2015) due to compilation errors:                                                             
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatStepperModule, but could not be resolved to an NgModule class.       

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/stepper : esm5 as esm5                                                                                                                         
Compiling @angular/cdk/table : esm2015 as esm2015                                                                                                                          
Compiling @angular/cdk/table : main as umd                                                                                                                                 
Warning: Skipping processing of @angular/material/tooltip because its dependency @angular/material/tooltip failed to compile.                                              
Warning: Skipping processing of @angular/material/tooltip because its dependency @angular/material/tooltip failed to compile.                                              
Warning: Skipping processing of @angular/material/tooltip because its dependency @angular/material/tooltip failed to compile.                                              
Warning: Skipping processing of @angular/material/tooltip because its dependency @angular/material/tooltip failed to compile.                                              
Warning: Skipping processing of @angular/material/paginator because its dependency @angular/material/tooltip failed to compile.                                            
Warning: Skipping processing of @angular/material/paginator because its dependency @angular/material/tooltip failed to compile.                                            
Warning: Skipping processing of @angular/material/paginator because its dependency @angular/material/tooltip failed to compile.                                            
Warning: Skipping processing of @angular/material/paginator because its dependency @angular/material/tooltip failed to compile.                                            
Compiling @angular/cdk/table : esm5 as esm5                                                                                                                                
Compiling @angular/material/select : fesm5 as esm5                                                                                                                         
Warning: Skipping processing of @angular/material/table because its dependency @angular/material/tooltip failed to compile.                                                
Warning: Skipping processing of @angular/material/table because its dependency @angular/material/tooltip failed to compile.                                                
Warning: Skipping processing of @angular/material/table because its dependency @angular/material/tooltip failed to compile.                                                
Warning: Skipping processing of @angular/material/table because its dependency @angular/material/tooltip failed to compile.                                                
Compiling @angular/material/select : esm2015 as esm2015                                                                                                                    
Error: Failed to compile entry-point @angular/material/select (esm2015 as esm2015) due to compilation errors:                                                              
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatSelectModule, but could not be resolved to an NgModule class.        

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/sort : fesm5 as esm5                                                                                                                           
Compiling @angular/material/sort : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/select : esm5 as esm5                                                                                                                          
Compiling @angular/material/select : main as umd                                                                                                                           
Compiling @angular/material/sort : esm5 as esm5                                                                                                                            
Compiling @angular/material/sort : main as umd                                                                                                                             
Compiling @angular/material/tabs : fesm5 as esm5                                                                                                                           
Compiling @angular/material/toolbar : fesm5 as esm5                                                                                                                        
Compiling @angular/material/toolbar : esm2015 as esm2015                                                                                                                   
Compiling @angular/material/tabs : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/tabs : main as umd                                                                                                                             
Compiling @angular/material/toolbar : esm5 as esm5                                                                                                                         
Error: Failed to compile entry-point @angular/material/tabs (esm2015 as esm2015) due to compilation errors:                                                                
node_modules/@angular/common/common.d.ts:115:22 - error NG6002: Appears in the NgModule.imports of MatTabsModule, but could not be resolved to an NgModule class.          

This likely means that the library (@angular/common) which declares CommonModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if 
a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Iv
y.                                                                                                                                                                         

115 export declare class CommonModule {                                                                                                                                    
                         ~~~~~~~~~~~~                                                                                                                                      

Compiling @angular/material/toolbar : main as umd                                                                                                                          
Compiling @angular/material/tabs : esm5 as esm5                                                                                                                            
Compiling @angular/cdk/tree : esm5 as esm5                                                                                                                                 
Compiling @angular/cdk/tree : esm2015 as esm2015                                                                                                                           
Compiling @angular/cdk/tree : fesm5 as esm5                                                                                                                                
Compiling @angular/cdk/tree : main as umd                                                                                                                                  
Compiling @angular/material/tree : fesm5 as esm5                                                                                                                           
Compiling @angular/material/tree : esm2015 as esm2015                                                                                                                      
Compiling @angular/material/tree : esm5 as esm5                                                                                                                            
Compiling @angular/material/tree : main as umd                                                                                                                             
Compiling @angular/core/testing : fesm5 as esm5                                                                                                                            
Compiling @angular/platform-browser-dynamic : fesm5 as esm5                                                                                                                
Compiling @angular/core/testing : esm5 as esm5                                                                                                                             
Compiling @angular/core/testing : main as umd                                                                                                                              
Compiling @angular/core/testing : esm2015 as esm2015                                                                                                                       
Compiling @angular/platform-browser-dynamic : esm2015 as esm2015                                                                                                           
Compiling @angular/platform-browser-dynamic : main as umd                                                                                                                  
Compiling @angular/platform-browser-dynamic : esm5 as esm5                                                                                                                 
Compiling @angular/platform-browser/testing : fesm5 as esm5                                                                                                                
Compiling @angular/platform-browser/testing : esm2015 as esm2015                                                                                                           
Compiling @angular/platform-browser/testing : esm5 as esm5                                                                                                                 
Compiling @angular/platform-browser/testing : main as umd                                                                                                                  
Compiling @angular/common/testing : fesm5 as esm5                                                                                                                          
Compiling @angular/common/testing : esm2015 as esm2015                                                                                                                     
Compiling @angular/common/testing : esm5 as esm5                                                                                                                           
Compiling @angular/platform-browser-dynamic/testing : esm5 as esm5                                                                                                         
Compiling @angular/platform-browser-dynamic/testing : esm2015 as esm2015                                                                                                   
Compiling @angular/platform-browser-dynamic/testing : main as umd                                                                                                          
Compiling @angular/platform-browser-dynamic/testing : fesm5 as esm5                                                                                                        
Compiling @angular/common/testing : main as umd                                                                                                                            
Compiling @angular/router : fesm5 as esm5                                                                                                                                  
Compiling @angular/router/testing : fesm5 as esm5                                                                                                                          
Compiling @angular/router/testing : esm5 as esm5                                                                                                                           
Compiling @angular/router/testing : esm2015 as esm2015                                                                                                                     
Compiling @angular/router : main as umd                                                                                                                                    
Compiling @angular/router/testing : main as umd                                                                                                                            
Compiling @angular/router : esm2015 as esm2015                                                                                                                             
Compiling @angular/router : esm5 as esm5                                                                                                                                   
Compiling @ngrx/store : fesm5 as esm5                                                                                                                                      
Compiling @ngrx/store : main as umd                                                                                                                                        
Compiling @ngrx/store : esm5 as esm5                                                                                                                                       
Compiling @ngrx/store : esm2015 as esm2015                                                                                                                                 
Compiling @ngrx/effects : fesm5 as esm5                                                                                                                                    
Compiling @ngrx/effects/testing : fesm5 as esm5                                                                                                                            
Compiling @ngrx/effects : esm2015 as esm2015                                                                                                                               
Compiling @ngrx/effects : main as umd                                                                                                                                      
Compiling @ngrx/effects : esm5 as esm5                                                                                                                                     
Compiling @ngrx/effects/testing : esm5 as esm5                                                                                                                             
Compiling @ngrx/effects/testing : esm2015 as esm2015                                                                                                                       
Compiling @ngrx/effects/testing : main as umd                                                                                                                              
Compiling @ngrx/entity : fesm5 as esm5                                                                                                                                     
Compiling @ngrx/entity : esm2015 as esm2015                                                                                                                                
Compiling @ngrx/entity : esm5 as esm5                                                                                                                                      
Compiling @ngrx/entity : main as umd                                                                                                                                       
Compiling @ngrx/router-store : fesm5 as esm5                                                                                                                               
Compiling @ngrx/store/testing : fesm5 as esm5                                                                                                                              
Compiling @ngrx/router-store : esm5 as esm5                                                                                                                                
Compiling @ngrx/router-store : main as umd                                                                                                                                 
Compiling @ngrx/store/testing : esm5 as esm5                                                                                                                               
Compiling @ngrx/store/testing : esm2015 as esm2015                                                                                                                         
Compiling @ngrx/router-store : esm2015 as esm2015                                                                                                                          
Compiling @ngrx/store/testing : main as umd                                                                                                                                
Compiling angular-draggable-droppable : fesm5 as esm5                                                                                                                      
Compiling angular-resizable-element : fesm5 as esm5                                                                                                                        
Compiling angular-draggable-droppable : main as umd                                                                                                                        
Compiling angular-draggable-droppable : esm5 as esm5                                                                                                                       
Warning: Unable to fully load <project-path>/node_modules/angular-draggable-droppable/bundles/angular-draggable-droppable.umd.js for source-map flattening: Circular
 source file mapping dependency: <project-path>/node_modules/angular-draggable-droppable/bundles/angular-draggable-droppable.umd.js.map -> <project-path>/nod
e_modules/angular-draggable-droppable/bundles/angular-draggable-droppable.umd.js.map                                                                                       
Compiling angular-resizable-element : esm2015 as esm2015                                                                                                                   
Compiling angular-draggable-droppable : esm2015 as esm2015                                                                                                                 
Compiling angular-resizable-element : esm5 as esm5                                                                                                                         
Compiling angular-resizable-element : main as umd                                                                                                                          
Compiling angular-calendar : fesm5 as esm5                                                                                                                                 
Compiling angular-calendar : main as umd                                                                                                                                   
Compiling ngx-papaparse : fesm5 as esm5                                                                                                                                    
Compiling angular-calendar : esm2015 as esm2015                                                                                                                            
Compiling angular2-highcharts : main as commonjs                                                                                                                           
Compiling angular-calendar : esm5 as esm5                                                                                                                                  
Compiling ag-grid-angular : main as commonjs                                                                                                                               
Compiling ngx-papaparse : esm5 as esm5                                                                                                                                     
Compiling ngx-papaparse : esm2015 as esm2015                                                                                                                               
Warning: Unable to fully load <project-path>/node_modules/ag-grid-angular/main.js for source-map flattening: ENOENT: no such file or directory, lstat '<project-path>/node_modules/ag-grid-angular/exports.js.map'                                                                                                                      
Compiling ngx-papaparse : main as umd                                                                                                                                      
Compiling angular-tree-component : module as esm5                                                                                                                          
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules\@angular\compiler-cli\node_modules\fsevents):                                                 
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})          
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules\ng-packagr\node_modules\fsevents):                                                            
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})          
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules\fsevents):                                                                                   
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.11: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})         

added 1662 packages from 1166 contributors and audited 23300 packages in 351.309s                                                                                          

45 packages are looking for funding                                                                                                                                        
  run `npm fund` for details                                                                                                                                               

found 101 vulnerabilities (94 low, 1 moderate, 6 high)                                                                                                                     
  run `npm audit fix` to fix them, or `npm audit` for details
JoostK commented 4 years ago

@nac0n Thanks, that is very helpful. It does indeed look like the issue that Pete mentioned, but as @angular/common is affected and not @angular/core it is not caused by @angular/cdk/coercion (I checked and there is no import of @angular/common there).

Could you share your package.json so that I can try running ngcc myself? Just the package.json should be enough to just kick off ngcc. If there's any private dependencies feel free to remove them, hopefully I can reproduce without those being present)

petebacondarwin commented 4 years ago

@nac0n - could you provide us with a reproduction that we could play with?

nac0n commented 4 years ago

@JoostK @petebacondarwin We have a some scripts to start the application with, so i removed them. If you need them, then i'll add them and edit this comment.

{
  "name": "app",
  "version": "0.0.0",
  "license": "MIT",
  "angular-cli": {},
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "postinstall": "ngcc"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^9.1.1",
    "@angular/cdk": "^9.1.1",
    "@angular/common": "^9.1.1",
    "@angular/compiler": "^9.1.1",
    "@angular/core": "^9.1.1",
    "@angular/flex-layout": "^9.0.0-beta.29",
    "@angular/forms": "^9.1.1",
    "@angular/material": "^9.1.1",
    "@angular/platform-browser": "^9.1.1",
    "@angular/platform-browser-dynamic": "^9.1.1",
    "@angular/router": "^9.1.1",
    "@ngrx/effects": "^9.0.0",
    "@ngrx/entity": "^9.0.0",
    "@ngrx/router-store": "^9.0.0",
    "@ngrx/store": "^9.0.0",
    "ag-grid-angular": "^20.2.0",
    "ag-grid-community": "^20.2.0",
    "ag-grid-enterprise": "^20.2.0",
    "angular-calendar": "^0.28.5",
    "angular-tree-component": "^8.5.6",
    "angular2-highcharts": "^0.5.5",
    "calendar-utils": "^0.7.0",
    "core-js": "^2.6.9",
    "date-fns": "^2.10.0",
    "dexie": "^2.0.1",
    "highcharts": "^6.0.7",
    "highcharts-multicolor-series": "^2.2.1",
    "intl": "^1.2.5",
    "jquery": "^3.4.1",
    "jwt-decode": "^2.2.0",
    "moment": "^2.24.0",
    "moment-duration-format": "^1.3.0",
    "ngrx-store-freeze": "^0.2.4",
    "ngx-papaparse": "^4.0.4",
    "platform": "^1.3.4",
    "rxjs": "^6.5.3",
    "tslib": "^1.10.0",
    "typescript": "^3.7.5",
    "web-animations-js": "^2.3.2",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.7",
    "@angular-devkit/build-ng-packagr": "~0.900.7",
    "@angular/cli": "^9.1.1",
    "@angular/compiler-cli": "^9.1.1",
    "@angular/language-service": "^9.1.1",
    "@types/jasmine": "~2.5.53",
    "@types/jasminewd2": "~2.0.2",
    "@types/node": "^12.11.1",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.0.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "^2.1.0",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "karma-scss-preprocessor": "^3.0.0",
    "ng-packagr": "^9.0.0",
    "node-sass": "^4.12.0",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "webpack-bundle-analyzer": "^3.5.1"
  }
}
JoostK commented 4 years ago

@nac0n Thanks, it fails for me too! This should allow us to establish the root cause and work towards a fix.

labsnoir commented 4 years ago

We have a problem with our jenkins build since we migrated to Angular 9. Everything works fine on our local machines, but when we run the build job on jenkins it fails. npm and node versions are the same on all machines. The error appears only with "ng build --prod" - "ng build" works on jenkins.

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
npm info lifecycle my_project@1.0.30~build: Failed to exec build script
npm ERR! code ELIFECYCLE
npm ERR! errno 134
npm ERR! my_project@1.0.30 build: `ng build --prod`
npm ERR! Exit status 134
npm ERR! 
npm ERR! Failed at the my_project@1.0.30 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm timing npm Completed in 161871ms

I already put it on stackoverflow a few days ago: https://stackoverflow.com/questions/61223286/angular-9-ng-build-prod-with-devextreme-failing-only-on-jenkins

labsnoir commented 4 years ago

Today I updated to Angular Cli 9.1.3 - my problem (one comment above) is still there.