Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: update to webpack 4 #9459

Merged
merged 3 commits into from
Feb 23, 2018
Merged

Conversation

clydin
Copy link
Member

@clydin clydin commented Jan 31, 2018

WIP PR to upgrade to Webpack 4.0.0-beta.2 (changelog).

Based on the work in #8611 by @filipesilva

NOTE: ng eject is broken and will be addressed in a followup PR.

Additional actions after merging:

  • evaluate the removal of the commonChunks option. Webpack now has much more sophisticated chunk splitting logic by default.
  • fix and/or transform eject based on webpack 4 and architect changes
  • re-enable sub resource integrity support once the plugin is updated
  • monitor peer dependency warnings and update packages as needed
  • update remaining CLI webpack code to use new webpack plugin system

Blocking Issues:

Note that due to the following warnings, there may still be additional issues with specific features.

Peer Dependency Warnings:

npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^3.0.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || >= 3.0.0-rc.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.0.0 || ^3.0.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^1.0.0 || ^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^2.2.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^1.0.0 || ^2.0.0 || ^3.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of webpack@^1.12.11 || ~2 || ~3 but none is installed. You must install peer dependencies yourself.

@clydin clydin requested a review from hansl as a code owner January 31, 2018 17:16
@clydin clydin removed the request for review from hansl January 31, 2018 17:31
@filipesilva filipesilva mentioned this pull request Jan 31, 2018
14 tasks
@filipesilva
Copy link
Contributor

filipesilva commented Jan 31, 2018

@pleerock can you try with this PR?

@clydin
Copy link
Member Author

clydin commented Jan 31, 2018

Easiest way to experiment is to start with an existing project then separately:

  1. Pull this PR branch
  2. npm install
  3. npm run build
  4. Inside the existing project npm install @angular_cli.tgz and @ngtools_webpack.tgz from inside dist.
  5. ng build/ng build --prod

@pleerock
Copy link

pleerock commented Jan 31, 2018

It works fast! Running ng serve:

Hash: 28cc421985a990c8cdc7                      
Time: 154049ms
chunk {0} 0.chunk.js () 28.4 kB  [rendered]
chunk {1} 1.chunk.js () 441 kB  [rendered]
chunk {2} 2.chunk.js () 61.6 kB  [rendered]
chunk {3} 3.chunk.js () 333 kB  [rendered]
chunk {4} 4.chunk.js () 312 kB  [rendered]
chunk {5} 5.chunk.js () 243 kB  [rendered]
chunk {6} 6.chunk.js () 326 kB  [rendered]
chunk {7} 7.chunk.js () 344 kB  [rendered]
chunk {8} 8.chunk.js () 318 kB  [rendered]
chunk {9} 9.chunk.js () 384 kB  [rendered]
chunk {10} 10.chunk.js () 233 kB  [rendered]
chunk {11} 11.chunk.js () 195 kB  [rendered]
chunk {12} 12.chunk.js () 249 kB  [rendered]
chunk {13} 13.chunk.js () 65.3 kB  [rendered]
chunk {14} 14.chunk.js () 92.3 kB  [rendered]
chunk {15} 15.chunk.js () 90.8 kB  [rendered]
chunk {16} 16.chunk.js () 423 kB  [rendered]
chunk {17} 17.chunk.js () 57.8 kB  [rendered]
chunk {18} 18.chunk.js () 58.9 kB  [rendered]
chunk {19} 19.chunk.js () 54.6 kB  [rendered]
chunk {20} 20.chunk.js () 46.6 kB  [rendered]
chunk {21} 21.chunk.js () 77.6 kB  [rendered]
chunk {22} 22.chunk.js () 59.6 kB  [rendered]
chunk {23} 23.chunk.js () 258 kB  [rendered]
chunk {24} 24.chunk.js () 316 kB  [rendered]
chunk {25} 25.chunk.js () 92.5 kB  [rendered]
chunk {26} 26.chunk.js () 55.6 kB  [rendered]
chunk {27} 27.chunk.js () 93.5 kB  [rendered]
chunk {28} 28.chunk.js () 167 kB  [rendered]
chunk {29} 29.chunk.js () 175 kB  [rendered]
chunk {30} 30.chunk.js () 22.1 kB  [rendered]
chunk {31} 31.chunk.js () 75.8 kB  [rendered]
chunk {32} 32.chunk.js () 799 kB  [rendered]
chunk {33} 33.chunk.js () 46.8 kB  [rendered]
chunk {34} 34.chunk.js () 102 kB  [rendered]
chunk {35} 35.chunk.js () 42.1 kB  [rendered]
chunk {36} 36.chunk.js () 112 kB  [rendered]
chunk {37} 37.chunk.js () 652 kB  [rendered]
chunk {38} 38.chunk.js () 309 kB  [rendered]
chunk {39} 39.chunk.js () 315 kB  [rendered]
chunk {40} 40.chunk.js () 310 kB  [rendered]
chunk {41} 41.chunk.js () 108 kB  [rendered]
chunk {42} 42.chunk.js () 204 kB  [rendered]
chunk {43} 43.chunk.js () 727 kB  [rendered]
chunk {44} 44.chunk.js () 611 kB  [rendered]
chunk {45} 45.chunk.js () 962 kB  [rendered]
chunk {46} 46.chunk.js () 163 kB  [rendered]
chunk {47} 47.chunk.js () 91.1 kB  [rendered]
chunk {48} 48.chunk.js () 77.8 kB  [rendered]
chunk {49} 49.chunk.js () 229 kB  [rendered]
chunk {50} 50.chunk.js () 79.1 kB  [rendered]
chunk {51} 51.chunk.js () 55.9 kB  [rendered]
chunk {52} 52.chunk.js () 49 kB  [rendered]
chunk {53} 53.chunk.js () 54.2 kB  [rendered]
chunk {54} 54.chunk.js () 68.8 kB  [rendered]
chunk {55} 55.chunk.js () 110 kB  [rendered]
chunk {56} 56.chunk.js () 380 kB  [rendered]
chunk {57} 57.chunk.js () 84.4 kB  [rendered]
chunk {58} 58.chunk.js () 319 kB  [rendered]
chunk {59} 59.chunk.js () 410 kB  [rendered]
chunk {60} 60.chunk.js () 344 kB  [rendered]
chunk {61} 61.chunk.js () 111 kB  [rendered]
chunk {62} 62.chunk.js () 50.5 kB  [rendered]
chunk {63} 63.chunk.js () 311 kB  [rendered]
chunk {64} 64.chunk.js () 104 kB  [rendered]
chunk {65} 65.chunk.js () 332 kB  [rendered]
chunk {66} 66.chunk.js () 398 kB  [rendered]
chunk {67} 67.chunk.js () 93.1 kB  [rendered]
chunk {68} 68.chunk.js () 326 kB  [rendered]
chunk {69} 69.chunk.js () 396 kB  [rendered]
chunk {70} 70.chunk.js () 191 kB  [rendered]
chunk {71} 71.chunk.js () 412 kB  [rendered]
chunk {72} 72.chunk.js () 450 kB  [rendered]
chunk {73} 73.chunk.js () 392 kB  [rendered]
chunk {74} 74.chunk.js () 88.8 kB  [rendered]
chunk {75} 75.chunk.js () 416 kB  [rendered]
chunk {76} 76.chunk.js () 125 kB  [rendered]
chunk {77} 77.chunk.js () 349 kB  [rendered]
chunk {78} 78.chunk.js () 389 kB  [rendered]
chunk {79} 79.chunk.js () 191 kB  [rendered]
chunk {80} 80.chunk.js () 349 kB  [rendered]
chunk {81} 81.chunk.js () 58.7 kB  [rendered]
chunk {82} 82.chunk.js () 61 kB  [rendered]
chunk {83} 83.chunk.js () 235 kB  [rendered]
chunk {84} 84.chunk.js () 481 kB  [rendered]
chunk {85} 85.chunk.js () 456 kB  [rendered]
chunk {86} 86.chunk.js () 43.4 kB  [rendered]
chunk {87} 87.chunk.js () 293 kB  [rendered]
chunk {88} 88.chunk.js () 104 kB  [rendered]
chunk {89} 89.chunk.js () 274 kB  [rendered]
chunk {90} 90.chunk.js () 486 kB  [rendered]
chunk {91} 91.chunk.js () 509 kB  [rendered]
chunk {92} 92.chunk.js () 62.8 kB  [rendered]
chunk {93} 93.chunk.js () 183 kB  [rendered]
chunk {94} 94.chunk.js () 106 kB  [rendered]
chunk {95} 95.chunk.js () 857 kB  [rendered]
chunk {96} 96.chunk.js () 165 kB  [rendered]
chunk {97} 97.chunk.js () 27.6 kB  [rendered]
chunk {98} 98.chunk.js () 296 kB  [rendered]
chunk {99} 99.chunk.js () 255 kB  [rendered]
chunk {100} 100.chunk.js () 13.1 kB  [rendered]
chunk {101} 101.chunk.js () 286 kB  [rendered]
chunk {102} 102.chunk.js () 36.6 kB  [rendered]
chunk {103} 103.chunk.js () 43.5 kB  [rendered]
chunk {104} 104.chunk.js () 80.3 kB  [rendered]
chunk {105} 105.chunk.js () 574 kB  [rendered]
chunk {106} 106.chunk.js () 60.2 kB  [rendered]
chunk {107} 107.chunk.js () 98 kB  [rendered]
chunk {108} 108.chunk.js () 454 kB  [rendered]
chunk {109} 109.chunk.js () 96.6 kB  [rendered]
chunk {110} 110.chunk.js () 110 kB  [rendered]
chunk {111} 111.chunk.js () 83.6 kB  [rendered]
chunk {112} 112.chunk.js () 95.9 kB  [rendered]
chunk {113} 113.chunk.js () 46.2 kB  [rendered]
chunk {114} 114.chunk.js () 42.3 kB  [rendered]
chunk {115} 115.chunk.js () 107 kB  [rendered]
chunk {116} 116.chunk.js () 78.5 kB  [rendered]
chunk {117} 117.chunk.js () 427 kB  [rendered]
chunk {118} 118.chunk.js () 33 kB  [rendered]
chunk {119} 119.chunk.js () 67.6 kB  [rendered]
chunk {120} 120.chunk.js () 31.8 kB  [rendered]
chunk {121} 121.chunk.js () 81.5 kB  [rendered]
chunk {122} 122.chunk.js () 72 kB  [rendered]
chunk {123} 123.chunk.js () 41.3 kB  [rendered]
chunk {124} 124.chunk.js () 115 kB  [rendered]
chunk {125} 125.chunk.js () 36.2 kB  [rendered]
chunk {126} 126.chunk.js () 79.5 kB  [rendered]
chunk {127} 127.chunk.js () 576 kB  [rendered]
chunk {128} 128.chunk.js () 59.4 kB  [rendered]
chunk {129} 129.chunk.js () 83.1 kB  [rendered]
chunk {130} 130.chunk.js () 86.4 kB  [rendered]
chunk {131} 131.chunk.js () 553 kB  [rendered]
chunk {132} 132.chunk.js () 113 kB  [rendered]
chunk {133} 133.chunk.js () 101 kB  [rendered]
chunk {134} 134.chunk.js () 177 kB  [rendered]
chunk {135} 135.chunk.js () 56.4 kB  [rendered]
chunk {136} 136.chunk.js () 192 kB  [rendered]
chunk {137} 137.chunk.js () 132 kB  [rendered]
chunk {138} 138.chunk.js () 49.2 kB  [rendered]
chunk {139} 139.chunk.js () 111 kB  [rendered]
chunk {140} 140.chunk.js () 70 kB  [rendered]
chunk {141} 141.chunk.js () 144 kB  [rendered]
chunk {142} 142.chunk.js () 88.4 kB  [rendered]
chunk {143} 143.chunk.js () 45.3 kB  [rendered]
chunk {144} 144.chunk.js () 33 kB  [rendered]
chunk {145} 145.chunk.js () 33.6 kB  [rendered]
chunk {146} 146.chunk.js () 89.4 kB  [rendered]
chunk {147} 147.chunk.js () 83.8 kB  [rendered]
chunk {148} 148.chunk.js () 57.9 kB  [rendered]
chunk {149} 149.chunk.js () 106 kB  [rendered]
chunk {150} 150.chunk.js () 57.1 kB  [rendered]
chunk {151} 151.chunk.js () 125 kB  [rendered]
chunk {152} 152.chunk.js () 58.1 kB  [rendered]
chunk {153} 153.chunk.js () 125 kB  [rendered]
chunk {154} 154.chunk.js () 54.4 kB  [rendered]
chunk {155} 155.chunk.js () 42.3 kB  [rendered]
chunk {156} 156.chunk.js () 81.9 kB  [rendered]
chunk {157} 157.chunk.js () 52.1 kB  [rendered]
chunk {158} 158.chunk.js () 56.2 kB  [rendered]
chunk {159} 159.chunk.js () 113 kB  [rendered]
chunk {160} 160.chunk.js () 560 kB  [rendered]
chunk {161} 161.chunk.js () 60.1 kB  [rendered]
chunk {162} 162.chunk.js () 71 kB  [rendered]
chunk {163} 163.chunk.js () 596 kB  [rendered]
chunk {164} 164.chunk.js () 53.4 kB  [rendered]
chunk {165} 165.chunk.js () 114 kB  [rendered]
chunk {166} 166.chunk.js () 169 kB  [rendered]
chunk {167} 167.chunk.js () 94.4 kB  [rendered]
chunk {168} 168.chunk.js () 58.4 kB  [rendered]
chunk {169} 169.chunk.js () 57 kB  [rendered]
chunk {170} 170.chunk.js () 78.6 kB  [rendered]
chunk {171} 171.chunk.js () 88.5 kB  [rendered]
chunk {172} 172.chunk.js () 60.6 kB  [rendered]
chunk {173} 173.chunk.js () 124 kB  [rendered]
chunk {174} 174.chunk.js () 60.5 kB  [rendered]
chunk {175} 175.chunk.js () 33 kB  [rendered]
chunk {176} 176.chunk.js () 33.3 kB  [rendered]
chunk {177} 177.chunk.js () 216 kB  [rendered]
chunk {178} 178.chunk.js () 562 kB  [rendered]
chunk {179} 179.chunk.js () 60.1 kB  [rendered]
chunk {180} 180.chunk.js () 70.3 kB  [rendered]
chunk {181} 181.chunk.js () 81.6 kB  [rendered]
chunk {182} 182.chunk.js () 587 kB  [rendered]
chunk {183} 183.chunk.js () 77.4 kB  [rendered]
chunk {184} 184.chunk.js () 142 kB  [rendered]
chunk {185} 185.chunk.js () 53.5 kB  [rendered]
chunk {186} 186.chunk.js () 19 kB  [rendered]
chunk {187} 187.chunk.js () 41 kB  [rendered]
chunk {188} 188.chunk.js () 77.5 kB  [rendered]
chunk {189} 189.chunk.js () 56.6 kB  [rendered]
chunk {190} 190.chunk.js () 93 kB  [rendered]
chunk {191} 191.chunk.js () 297 kB  [rendered]
chunk {192} 192.chunk.js () 90.6 kB  [rendered]
chunk {193} 193.chunk.js () 53.8 kB  [rendered]
chunk {194} 194.chunk.js () 31.7 kB  [rendered]
chunk {195} 195.chunk.js () 42.4 kB  [rendered]
chunk {196} 196.chunk.js () 548 kB  [rendered]
chunk {197} 197.chunk.js () 62.1 kB  [rendered]
chunk {198} 198.chunk.js () 65.8 kB  [rendered]
chunk {199} 199.chunk.js () 89.6 kB  [rendered]
chunk {200} 200.chunk.js () 439 kB  [rendered]
chunk {201} 201.chunk.js () 49.1 kB  [rendered]
chunk {202} 202.chunk.js () 126 kB  [rendered]
chunk {203} 203.chunk.js () 43.3 kB  [rendered]
chunk {204} 204.chunk.js () 54.5 kB  [rendered]
chunk {205} 205.chunk.js () 81.9 kB  [rendered]
chunk {206} 206.chunk.js () 78.4 kB  [rendered]
chunk {207} 207.chunk.js () 33.9 kB  [rendered]
chunk {208} 208.chunk.js () 93.9 kB  [rendered]
chunk {209} 209.chunk.js () 576 kB  [rendered]
chunk {210} 210.chunk.js () 65.8 kB  [rendered]
chunk {211} 211.chunk.js () 75.7 kB  [rendered]
chunk {212} 212.chunk.js () 75.7 kB  [rendered]
chunk {213} 213.chunk.js () 526 kB  [rendered]
chunk {214} 214.chunk.js () 51 kB  [rendered]
chunk {215} 215.chunk.js () 143 kB  [rendered]
chunk {216} 216.chunk.js () 96.5 kB  [rendered]
chunk {217} 217.chunk.js () 98.9 kB  [rendered]
chunk {218} 218.chunk.js () 39.5 kB  [rendered]
chunk {219} 219.chunk.js () 96.8 kB  [rendered]
chunk {220} 220.chunk.js () 46.4 kB  [rendered]
chunk {221} 221.chunk.js () 34.9 kB  [rendered]
chunk {222} 222.chunk.js () 568 kB  [rendered]
chunk {223} 223.chunk.js () 65.1 kB  [rendered]
chunk {224} 224.chunk.js () 76.6 kB  [rendered]
chunk {225} 225.chunk.js () 95.9 kB  [rendered]
chunk {226} 226.chunk.js () 734 kB  [rendered]
chunk {227} 227.chunk.js () 62.6 kB  [rendered]
chunk {228} 228.chunk.js () 146 kB  [rendered]
chunk {229} 229.chunk.js () 55.7 kB  [rendered]
chunk {230} 230.chunk.js () 59.1 kB  [rendered]
chunk {231} 231.chunk.js () 103 kB  [rendered]
chunk {232} 232.chunk.js () 64.7 kB  [rendered]
chunk {233} 233.chunk.js () 78.1 kB  [rendered]
chunk {234} 234.chunk.js () 208 kB  [rendered]
chunk {235} 235.chunk.js () 65.4 kB  [rendered]
chunk {236} 236.chunk.js () 33.5 kB  [rendered]
chunk {237} 237.chunk.js () 33.9 kB  [rendered]
chunk {238} 238.chunk.js () 61.6 kB  [rendered]
chunk {239} 239.chunk.js () 159 kB  [rendered]
chunk {240} 240.chunk.js () 181 kB  [rendered]
chunk {241} 241.chunk.js () 35 kB  [rendered]
chunk {242} 242.chunk.js () 564 kB  [rendered]
chunk {243} 243.chunk.js () 64.6 kB  [rendered]
chunk {244} 244.chunk.js () 72.5 kB  [rendered]
chunk {245} 245.chunk.js () 80 kB  [rendered]
chunk {246} 246.chunk.js () 470 kB  [rendered]
chunk {247} 247.chunk.js () 75.6 kB  [rendered]
chunk {248} 248.chunk.js () 115 kB  [rendered]
chunk {249} 249.chunk.js () 55 kB  [rendered]
chunk {250} 250.chunk.js () 102 kB  [rendered]
chunk {251} 251.chunk.js () 75.3 kB  [rendered]
chunk {252} 252.chunk.js () 91.2 kB  [rendered]
chunk {253} 253.chunk.js () 80.5 kB  [rendered]
chunk {254} 254.chunk.js () 90.9 kB  [rendered]
chunk {255} 255.chunk.js () 36.2 kB  [rendered]
chunk {256} 256.chunk.js () 35 kB  [rendered]
chunk {257} 257.chunk.js () 37.3 kB  [rendered]
chunk {258} 258.chunk.js () 451 kB  [rendered]
chunk {259} 259.chunk.js () 53.5 kB  [rendered]
chunk {260} 260.chunk.js () 175 kB  [rendered]
chunk {261} 261.chunk.js () 189 kB  [rendered]
chunk {262} 262.chunk.js () 47.6 kB  [rendered]
chunk {263} 263.chunk.js () 595 kB  [rendered]
chunk {264} 264.chunk.js () 70.6 kB  [rendered]
chunk {265} 265.chunk.js () 82.3 kB  [rendered]
chunk {266} 266.chunk.js () 73.6 kB  [rendered]
chunk {267} 267.chunk.js () 89.7 kB  [rendered]
chunk {268} 268.chunk.js () 709 kB  [rendered]
chunk {269} 269.chunk.js () 75.7 kB  [rendered]
chunk {270} 270.chunk.js () 147 kB  [rendered]
chunk {271} 271.chunk.js () 219 kB  [rendered]
chunk {272} 272.chunk.js () 112 kB  [rendered]
chunk {273} 273.chunk.js () 112 kB  [rendered]
chunk {274} 274.chunk.js () 65.8 kB  [rendered]
chunk {275} 275.chunk.js () 26.8 kB  [rendered]
chunk {276} 276.chunk.js () 35.3 kB  [rendered]
chunk {277} 277.chunk.js () 34.5 kB  [rendered]
chunk {278} 278.chunk.js () 62.6 kB  [rendered]
chunk {279} 279.chunk.js () 44.3 kB  [rendered]
chunk {280} 280.chunk.js () 37.5 kB  [rendered]
chunk {281} 281.chunk.js () 32.5 kB  [rendered]
chunk {282} 282.chunk.js () 36.8 kB  [rendered]
chunk {283} 283.chunk.js () 88.1 kB  [rendered]
chunk {284} 284.chunk.js () 35 kB  [rendered]
chunk {285} 285.chunk.js () 112 kB  [rendered]
chunk {286} 286.chunk.js () 105 kB  [rendered]
chunk {287} 287.chunk.js () 588 kB  [rendered]
chunk {288} 288.chunk.js () 44.6 kB  [rendered]
chunk {289} 289.chunk.js () 54.2 kB  [rendered]
chunk {290} 290.chunk.js () 78.4 kB  [rendered]
chunk {291} 291.chunk.js () 100 kB  [rendered]
chunk {292} 292.chunk.js () 91.2 kB  [rendered]
chunk {293} 293.chunk.js () 594 kB  [rendered]
chunk {294} 294.chunk.js () 66.7 kB  [rendered]
chunk {295} 295.chunk.js () 86.1 kB  [rendered]
chunk {296} 296.chunk.js () 89.4 kB  [rendered]
chunk {297} 297.chunk.js () 76.4 kB  [rendered]
chunk {298} 298.chunk.js () 68.2 kB  [rendered]
chunk {299} 299.chunk.js () 104 kB  [rendered]
chunk {300} 300.chunk.js () 40.3 kB  [rendered]
chunk {301} 301.chunk.js () 40.8 kB  [rendered]
chunk {302} 302.chunk.js () 29.3 kB  [rendered]
chunk {303} 303.chunk.js () 724 kB  [rendered]
chunk {304} 304.chunk.js () 111 kB  [rendered]
chunk {305} 305.chunk.js () 208 kB  [rendered]
chunk {306} 306.chunk.js () 40.6 kB  [rendered]
chunk {307} 307.chunk.js () 202 kB  [rendered]
chunk {308} 308.chunk.js () 110 kB  [rendered]
chunk {309} 309.chunk.js () 114 kB  [rendered]
chunk {310} 310.chunk.js () 62.9 kB  [rendered]
chunk {311} 311.chunk.js () 63 kB  [rendered]
chunk {312} 312.chunk.js () 47.1 kB  [rendered]
chunk {313} 313.chunk.js () 32.5 kB  [rendered]
chunk {314} 314.chunk.js () 29.7 kB  [rendered]
chunk {315} 315.chunk.js () 30.2 kB  [rendered]
chunk {316} 316.chunk.js () 29.6 kB  [rendered]
chunk {317} 317.chunk.js () 79.7 kB  [rendered]
chunk {318} 318.chunk.js () 59.8 kB  [rendered]
chunk {319} 319.chunk.js () 40 kB  [rendered]
chunk {320} 320.chunk.js () 34.6 kB  [rendered]
chunk {321} 321.chunk.js () 34.3 kB  [rendered]
chunk {322} 322.chunk.js () 61.1 kB  [rendered]
chunk {323} 323.chunk.js () 108 kB  [rendered]
chunk {324} 324.chunk.js () 35.6 kB  [rendered]
chunk {325} 325.chunk.js () 490 kB  [rendered]
chunk {326} 326.chunk.js () 35.5 kB  [rendered]
chunk {327} 327.chunk.js () 59.2 kB  [rendered]
chunk {328} 328.chunk.js () 44.4 kB  [rendered]
chunk {329} 329.chunk.js () 88.3 kB  [rendered]
chunk {330} 330.chunk.js () 59.1 kB  [rendered]
chunk {331} 331.chunk.js () 50.8 kB  [rendered]
chunk {332} 332.chunk.js () 542 kB  [rendered]
chunk {333} 333.chunk.js () 77.9 kB  [rendered]
chunk {334} 334.chunk.js () 166 kB  [rendered]
chunk {335} 335.chunk.js () 155 kB  [rendered]
chunk {336} 336.chunk.js () 119 kB  [rendered]
chunk {337} 337.chunk.js () 58.3 kB  [rendered]
chunk {338} 338.chunk.js () 105 kB  [rendered]
chunk {339} 339.chunk.js () 99.4 kB  [rendered]
chunk {340} 340.chunk.js () 43 kB  [rendered]
chunk {341} 341.chunk.js () 57.3 kB  [rendered]
chunk {342} 342.chunk.js () 493 kB  [rendered]
chunk {343} 343.chunk.js () 45.7 kB  [rendered]
chunk {344} 344.chunk.js () 145 kB  [rendered]
chunk {345} 345.chunk.js () 58.8 kB  [rendered]
chunk {346} 346.chunk.js () 75 kB  [rendered]
chunk {347} 347.chunk.js () 50.6 kB  [rendered]
chunk {348} 348.chunk.js () 58.3 kB  [rendered]
chunk {349} 349.chunk.js () 192 kB  [rendered]
chunk {350} 350.chunk.js () 469 kB  [rendered]
chunk {351} 351.chunk.js () 285 kB  [rendered]
chunk {352} 352.chunk.js () 308 kB  [rendered]
chunk {353} 353.chunk.js () 301 kB  [rendered]
chunk {354} 354.chunk.js () 137 kB  [rendered]
chunk {355} 355.chunk.js () 180 kB  [rendered]
chunk {356} 356.chunk.js () 155 kB  [rendered]
chunk {357} 357.chunk.js () 55.3 kB  [rendered]
chunk {358} 358.chunk.js () 21.3 kB  [rendered]
chunk {359} 359.chunk.js () 87.1 kB  [rendered]
chunk {360} 360.chunk.js () 132 kB  [rendered]
chunk {361} 361.chunk.js () 112 kB  [rendered]
chunk {362} 362.chunk.js () 57.7 kB  [rendered]
chunk {363} 363.chunk.js () 105 kB  [rendered]
chunk {364} 364.chunk.js () 138 kB  [rendered]
chunk {365} 365.chunk.js () 56.7 kB  [rendered]
chunk {366} 366.chunk.js () 131 kB  [rendered]
chunk {367} 367.chunk.js () 109 kB  [rendered]
chunk {368} 368.chunk.js () 130 kB  [rendered]
chunk {369} 369.chunk.js () 192 kB  [rendered]
chunk {370} 370.chunk.js () 602 kB  [rendered]
chunk {main} main.bundle.js (main) 4.06 MB [entry] [rendered]
chunk {main~polyfills} main~polyfills.chunk.js (main~polyfills) 339 kB [initial] [rendered]
chunk {polyfills} polyfills.bundle.js (polyfills) 271 kB [entry] [rendered]
chunk {styles} styles.bundle.js (styles) 863 kB [entry] [rendered]
chunk {vendor} vendor.chunk.js (vendor) 12.4 MB [initial] [rendered]

Which took only 2,5 minutes. Amazing.

But I have this error at the end:

ERROR in ./node_modules/xmlhttprequest-ssl/lib/XMLHttpRequest.js
Module not found: Error: Can't resolve 'child_process' in '/Users/pleerock/www/yakdu/ng2.yakdu.dev/node_modules/xmlhttprequest-ssl/lib'

webpack: Failed to compile.

Also Im still not able to test what it generate because of blocking issues.

@clydin clydin force-pushed the webpack4-upgrade branch 2 times, most recently from c0cc4d0 to a9b80cf Compare February 1, 2018 02:48
@clydin clydin force-pushed the webpack4-upgrade branch 14 times, most recently from fadcb0f to 2e64c44 Compare February 15, 2018 18:08
@clydin clydin force-pushed the webpack4-upgrade branch 9 times, most recently from b7a7cc1 to 713db88 Compare February 22, 2018 19:52
@clydin clydin force-pushed the webpack4-upgrade branch 3 times, most recently from 0b005f4 to 2654d2d Compare February 22, 2018 23:02
@clydin clydin removed the state: WIP label Feb 23, 2018
filipesilva
filipesilva previously approved these changes Feb 23, 2018
Copy link
Contributor

@filipesilva filipesilva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work @clydin! The changes overall LGTM, but can you add a comment in this PR with the followup actions needed?

There's a few here and I worry we'll loose track of them if we don't have an explicit list to followup.

@filipesilva
Copy link
Contributor

I also see warnings on builds like

    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    (node:5320) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored SourceMapDevToolPlugin
    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    schema id ignored HashedModuleIdsPlugin
    (node:5577) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead

I think they are from the bad peerdeps, can you confirm?

@clydin clydin requested a review from hansl February 23, 2018 14:11
@clydin
Copy link
Member Author

clydin commented Feb 23, 2018

The deprecation warnings are from plugins that haven't been updated to use the new v4 plugin system. Some of the CLI's still need updates but we can transition them in additional PRs. Also, we'll have to wait for updates to the some of the webpack dependencies used to fully clear out the warnings.

The schema warnings are due to the Webpack update to ajv 6 and webpack not updating the corresponding internal schemas. Updating to beta.2 removed some of them.

@filipesilva filipesilva merged commit 1dc9f86 into angular:master Feb 23, 2018
@clydin clydin deleted the webpack4-upgrade branch February 23, 2018 21:20
Copy link

@kondi kondi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't mean to review, just asking.

"file-loader": "^1.1.5",
"fs-extra": "^4.0.0",
"glob": "^7.0.3",
"html-webpack-plugin": "^2.29.0",
"html-webpack-plugin": "github:webpack-contrib/html-webpack-plugin#a8a8c2b6ea496c257fd6f501db3a06a51fa03e1e",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR says "CLI internal index html plugin used" #9459 (comment).
Why do we need the html-webpack-plugin then? Is it only a temporary fix?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See text below headline „🛑 If you use HtmlWebpackPlugin“ on https://medium.com/webpack/webpack-4-released-today-6cdb994702d4

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I know this. But @clydin wrote "CLI internal index html plugin used" instead, that is why I am asking.

@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Sep 12, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants