ionic-cli icon indicating copy to clipboard operation
ionic-cli copied to clipboard

160+ chunks generated

Open eugenotop opened this issue 7 years ago • 4 comments

ionic serve

ng run app:serve --host=0.0.0.0 --port=8100

[INFO] Development server running!

   Local: http://localhost:8100
   External: http://192.168.100.54:8100

   Use Ctrl+C to quit this process

[INFO] Browser window opened to http://localhost:8100!

[ng] ℹ 「wdm」: wait until bundle finished: / [ng] [ng] Date: 2018-11-05T10:48:22.463Z [ng] Hash: 6a9a44f2c81f2939e51a [ng] Time: 18011ms [ng] chunk {0} 0.js, 0.js.map () 18.6 kB [rendered] [ng] chunk {1} 1.js, 1.js.map () 1.9 kB [rendered] [ng] chunk {2} 2.js, 2.js.map () 6.13 kB [rendered] [ng] chunk {3} 3.js, 3.js.map () 1.08 kB [rendered] [ng] chunk {4} 4.js, 4.js.map () 95.6 kB [rendered] [ng] chunk {5} 5.js, 5.js.map () 3.26 kB [rendered] [ng] chunk {6} 6.js, 6.js.map () 26.5 kB [rendered] [ng] chunk {7} 7.js, 7.js.map () 27.4 kB [rendered] [ng] chunk {8} 8.js, 8.js.map () 29.2 kB [rendered] [ng] chunk {9} 9.js, 9.js.map () 30.2 kB [rendered] [ng] chunk {10} 10.js, 10.js.map () 40.9 kB [rendered] [ng] chunk {11} 11.js, 11.js.map () 42.7 kB [rendered] [ng] chunk {12} 12.js, 12.js.map () 34.3 kB [rendered] [ng] chunk {13} 13.js, 13.js.map () 34.4 kB [rendered] [ng] chunk {14} 14.js, 14.js.map () 48.5 kB [rendered] [ng] chunk {15} 15.js, 15.js.map () 48.5 kB [rendered] [ng] chunk {16} 16.js, 16.js.map () 21.3 kB [rendered] [ng] chunk {17} 17.js, 17.js.map () 21.5 kB [rendered] [ng] chunk {18} 18.js, 18.js.map () 22.2 kB [rendered] [ng] chunk {19} 19.js, 19.js.map () 22.6 kB [rendered] [ng] chunk {20} 20.js, 20.js.map () 26.4 kB [rendered] [ng] chunk {21} 21.js, 21.js.map () 27.2 kB [rendered] [ng] chunk {22} 22.js, 22.js.map () 21.6 kB [rendered] [ng] chunk {23} 23.js, 23.js.map () 21.8 kB [rendered] [ng] chunk {24} 24.js, 24.js.map () 19.9 kB [rendered] [ng] chunk {25} 25.js, 25.js.map () 20.2 kB [rendered] [ng] chunk {26} 26.js, 26.js.map () 20.8 kB [rendered] [ng] chunk {27} 27.js, 27.js.map () 20.8 kB [rendered] [ng] chunk {28} 28.js, 28.js.map () 29 kB [rendered] [ng] chunk {29} 29.js, 29.js.map () 29.2 kB [rendered] [ng] chunk {30} 30.js, 30.js.map () 22.5 kB [rendered] [ng] chunk {31} 31.js, 31.js.map () 22.6 kB [rendered] [ng] chunk {32} 32.js, 32.js.map () 23.8 kB [rendered] [ng] chunk {33} 33.js, 33.js.map () 24.2 kB [rendered] [ng] chunk {34} 34.js, 34.js.map () 20.8 kB [rendered] [ng] chunk {35} 35.js, 35.js.map () 20.8 kB [rendered] [ng] chunk {36} 36.js, 36.js.map () 15.4 kB [rendered] [ng] chunk {37} 37.js, 37.js.map () 15.4 kB [rendered] [ng] chunk {38} 38.js, 38.js.map () 21.9 kB [rendered] [ng] chunk {39} 39.js, 39.js.map () 22.2 kB [rendered] [ng] chunk {40} 40.js, 40.js.map () 29 kB [rendered] [ng] chunk {41} 41.js, 41.js.map () 29.2 kB [rendered] [ng] chunk {42} 42.js, 42.js.map () 21.3 kB [rendered] [ng] chunk {43} 43.js, 43.js.map () 21.5 kB [rendered] [ng] chunk {44} 44.js, 44.js.map () 26.9 kB [rendered] [ng] chunk {45} 45.js, 45.js.map () 27.4 kB [rendered] [ng] chunk {46} 46.js, 46.js.map () 28 kB [rendered] [ng] chunk {47} 47.js, 47.js.map () 28.2 kB [rendered] [ng] chunk {48} 48.js, 48.js.map () 23 kB [rendered] [ng] chunk {49} 49.js, 49.js.map () 23.6 kB [rendered] [ng] chunk {50} 50.js, 50.js.map () 26 kB [rendered] [ng] chunk {51} 51.js, 51.js.map () 26 kB [rendered] [ng] chunk {52} 52.js, 52.js.map () 21.9 kB [rendered] [ng] chunk {53} 53.js, 53.js.map () 21.9 kB [rendered] [ng] chunk {54} 54.js, 54.js.map () 23.4 kB [rendered] [ng] chunk {55} 55.js, 55.js.map () 23.4 kB [rendered] [ng] chunk {56} 56.js, 56.js.map () 18.3 kB [rendered] [ng] chunk {57} 57.js, 57.js.map () 18.4 kB [rendered] [ng] chunk {58} 58.js, 58.js.map () 23.4 kB [rendered] [ng] chunk {59} 59.js, 59.js.map () 23.4 kB [rendered] [ng] chunk {60} 60.js, 60.js.map () 18.3 kB [rendered] [ng] chunk {61} 61.js, 61.js.map () 18.3 kB [rendered] [ng] chunk {62} 62.js, 62.js.map () 32.9 kB [rendered] [ng] chunk {63} 63.js, 63.js.map () 34.2 kB [rendered] [ng] chunk {64} 64.js, 64.js.map () 29.7 kB [rendered] [ng] chunk {65} 65.js, 65.js.map () 30.7 kB [rendered] [ng] chunk {66} 66.js, 66.js.map () 23.9 kB [rendered] [ng] chunk {67} 67.js, 67.js.map () 24.3 kB [rendered] [ng] chunk {68} 68.js, 68.js.map () 40.6 kB [rendered] [ng] chunk {69} 69.js, 69.js.map () 42.4 kB [rendered] [ng] chunk {70} 70.js, 70.js.map () 32.1 kB [rendered] [ng] chunk {71} 71.js, 71.js.map () 32.1 kB [rendered] [ng] chunk {72} 72.js, 72.js.map () 18 kB [rendered] [ng] chunk {73} 73.js, 73.js.map () 18.2 kB [rendered] [ng] chunk {74} 74.js, 74.js.map () 21.7 kB [rendered] [ng] chunk {75} 75.js, 75.js.map () 21.8 kB [rendered] [ng] chunk {76} 76.js, 76.js.map () 19.8 kB [rendered] [ng] chunk {77} 77.js, 77.js.map () 20.1 kB [rendered] [ng] chunk {78} 78.js, 78.js.map () 28.4 kB [rendered] [ng] chunk {79} 79.js, 79.js.map () 29.3 kB [rendered] [ng] chunk {80} 80.js, 80.js.map () 20 kB [rendered] [ng] chunk {81} 81.js, 81.js.map () 20.4 kB [rendered] [ng] chunk {82} 82.js, 82.js.map () 21.3 kB [rendered] [ng] chunk {83} 83.js, 83.js.map () 21.5 kB [rendered] [ng] chunk {84} 84.js, 84.js.map () 28 kB [rendered] [ng] chunk {85} 85.js, 85.js.map () 28.1 kB [rendered] [ng] chunk {86} 86.js, 86.js.map () 32.1 kB [rendered] [ng] chunk {87} 87.js, 87.js.map () 33.5 kB [rendered] [ng] chunk {88} 88.js, 88.js.map () 28.2 kB [rendered] [ng] chunk {89} 89.js, 89.js.map () 28.4 kB [rendered] [ng] chunk {90} 90.js, 90.js.map () 35.3 kB [rendered] [ng] chunk {91} 91.js, 91.js.map () 35.8 kB [rendered] [ng] chunk {92} 92.js, 92.js.map () 18 kB [rendered] [ng] chunk {93} 93.js, 93.js.map () 18.1 kB [rendered] [ng] chunk {94} 94.js, 94.js.map () 22.5 kB [rendered] [ng] chunk {95} 95.js, 95.js.map () 22.8 kB [rendered] [ng] chunk {96} 96.js, 96.js.map () 21.3 kB [rendered] [ng] chunk {97} 97.js, 97.js.map () 21.6 kB [rendered] [ng] chunk {98} 98.js, 98.js.map () 21.9 kB [rendered] [ng] chunk {99} 99.js, 99.js.map () 22 kB [rendered] [ng] chunk {100} 100.js, 100.js.map () 21.6 kB [rendered] [ng] chunk {101} 101.js, 101.js.map () 21.9 kB [rendered] [ng] chunk {102} 102.js, 102.js.map () 48.5 kB [rendered] [ng] chunk {103} 103.js, 103.js.map () 48.5 kB [rendered] [ng] chunk {104} 104.js, 104.js.map () 21.7 kB [rendered] [ng] chunk {105} 105.js, 105.js.map () 21.8 kB [rendered] [ng] chunk {106} 106.js, 106.js.map () 34.7 kB [rendered] [ng] chunk {107} 107.js, 107.js.map () 35.2 kB [rendered] [ng] chunk {108} 108.js, 108.js.map () 21.6 kB [rendered] [ng] chunk {109} 109.js, 109.js.map () 21.9 kB [rendered] [ng] chunk {110} 110.js, 110.js.map () 35.4 kB [rendered] [ng] chunk {111} 111.js, 111.js.map () 36 kB [rendered] [ng] chunk {112} 112.js, 112.js.map () 35.5 kB [rendered] [ng] chunk {113} 113.js, 113.js.map () 36 kB [rendered] [ng] chunk {114} 114.js, 114.js.map () 20.1 kB [rendered] [ng] chunk {115} 115.js, 115.js.map () 20.1 kB [rendered] [ng] chunk {116} 116.js, 116.js.map () 13.7 kB [rendered] [ng] chunk {117} 117.js, 117.js.map () 13.7 kB [rendered] [ng] chunk {118} 118.js, 118.js.map () 12.7 kB [rendered] [ng] chunk {119} 119.js, 119.js.map () 12.7 kB [rendered] [ng] chunk {120} 120.js, 120.js.map () 10.4 kB [rendered] [ng] chunk {121} 121.js, 121.js.map () 10.4 kB [rendered] [ng] chunk {122} 122.js, 122.js.map () 36.3 kB [rendered] [ng] chunk {123} 123.js, 123.js.map () 36.5 kB [rendered] [ng] chunk {124} 124.js, 124.js.map () 9.75 kB [rendered] [ng] chunk {125} 125.js, 125.js.map () 9.76 kB [rendered] [ng] chunk {126} 126.js, 126.js.map () 9.77 kB [rendered] [ng] chunk {127} 127.js, 127.js.map () 10 kB [rendered] [ng] chunk {128} 128.js, 128.js.map () 7.22 kB [rendered] [ng] chunk {129} 129.js, 129.js.map () 7.38 kB [rendered] [ng] chunk {130} 130.js, 130.js.map () 13.3 kB [rendered] [ng] chunk {131} 131.js, 131.js.map () 13.3 kB [rendered] [ng] chunk {132} 132.js, 132.js.map () 3.97 kB [rendered] [ng] chunk {133} 133.js, 133.js.map () 3.52 kB [rendered] [ng] chunk {134} 134.js, 134.js.map () 3.59 kB [rendered] [ng] chunk {135} 135.js, 135.js.map () 1.73 kB [rendered] [ng] chunk {136} 136.js, 136.js.map () 10.3 kB [rendered] [ng] chunk {137} 137.js, 137.js.map () 10.4 kB [rendered] [ng] chunk {138} 138.js, 138.js.map () 9.9 kB [rendered] [ng] chunk {139} 139.js, 139.js.map () 10.1 kB [rendered] [ng] chunk {140} 140.js, 140.js.map () 3.52 kB [rendered] [ng] chunk {141} 141.js, 141.js.map () 3.59 kB [rendered] [ng] chunk {142} 142.js, 142.js.map () 21 kB [rendered] [ng] chunk {143} 143.js, 143.js.map () 21 kB [rendered] [ng] chunk {144} 144.js, 144.js.map () 21.5 kB [rendered] [ng] chunk {145} 145.js, 145.js.map () 21.5 kB [rendered] [ng] chunk {146} 146.js, 146.js.map () 9.94 kB [rendered] [ng] chunk {147} 147.js, 147.js.map () 9.95 kB [rendered] [ng] chunk {148} 148.js, 148.js.map () 36.4 kB [rendered] [ng] chunk {149} 149.js, 149.js.map () 36.6 kB [rendered] [ng] chunk {150} 150.js, 150.js.map () 2.51 kB [rendered] [ng] chunk {151} 151.js, 151.js.map () 2.54 kB [rendered] [ng] chunk {152} 152.js, 152.js.map () 13.2 kB [rendered] [ng] chunk {153} 153.js, 153.js.map () 13.3 kB [rendered] [ng] chunk {154} 154.js, 154.js.map () 3.13 kB [rendered] [ng] chunk {155} 155.js, 155.js.map () 3.22 kB [rendered] [ng] chunk {156} 156.js, 156.js.map () 14.3 kB [rendered] [ng] chunk {157} 157.js, 157.js.map () 14.3 kB [rendered] [ng] chunk {158} 158.js, 158.js.map () 2.77 kB [rendered] [ng] chunk {159} 159.js, 159.js.map () 14.7 kB [rendered] [ng] chunk {160} 160.js, 160.js.map () 8.11 kB [rendered] [ng] chunk {161} 161.js, 161.js.map () 1.67 kB [rendered] [ng] chunk {162} 162.js, 162.js.map () 1.39 kB [rendered] [ng] chunk {163} 163.js, 163.js.map () 5.15 kB [rendered] [ng] chunk {common} common.js, common.js.map (common) 15 kB [rendered] [ng] chunk {home-home-module} home-home-module.js, home-home-module.js.map (home-home-module) 5.65 kB [rendered] [ng] chunk {list-list-module} list-list-module.js, list-list-module.js.map (list-list-module) 6.7 kB [rendered] [ng] chunk {main} main.js, main.js.map (main) 145 kB [initial] [rendered] [ng] chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 227 kB [initial] [rendered] [ng] chunk {runtime} runtime.js, runtime.js.map (runtime) 9.1 kB [entry] [rendered] [ng] chunk {styles} styles.js, styles.js.map (styles) 35.5 kB [initial] [rendered] [ng] chunk {vendor} vendor.js, vendor.js.map (vendor) 4.69 MB [initial] [rendered] [ng] ℹ 「wdm」: Compiled successfully.

this(https://github.com/ionic-team/ionic/issues/15800) solution don't work for me !!!!

eugenotop avatar Nov 05 '18 10:11 eugenotop

I do agree that the new angular build process that generates small chunks for lazy loaded module hence the 16x chunks is important for faster page load in an online application.

However, if we would like to package for pwa app that supports offline caching 160 files has a huge http overhead.

Is there a way to skip splitting for ionic modules?

using for example using webpack.extra.js

new webpack.optimize.LimitChunkCountPlugin({
            maxChunks: 30
        })

multiplied the build time by 10-15 times. (450 seconds!!!).

Any other approach is welcome.

hghammoud avatar Dec 02 '18 13:12 hghammoud

Yes, this is a real pain. I think it is something with angular 6, because I saw it in some other builds non ionic apps.

moda20 avatar Dec 05 '18 19:12 moda20

Does anyone have an update to this? I have a similar issue with ReactJS for ionic. Whereas base reactjs builds into client.js and vendor.js files I have 100+ chunk files with react for ionic v5.

brykan avatar Apr 22 '20 17:04 brykan

A way to bundle would be great since AWS counts each separate file for upload and sometimes number of files is critical, even if performance suffers.

I tried solutions here but this seems to be Ionic specific and not just create-react-app (tried with rewired & craco and both reduced file sizes from 117 to 114..) https://github.com/facebook/create-react-app/issues/5306

jdobrev avatar Jul 23 '21 09:07 jdobrev