Ah, the neverending cycle. 1. The existing tool is way too complicated to configure and slow. Let me introduce a new, zero-configuration, blazing fast tool 2. OK so because it's strongly opinionated there are some things it can't do. So we'll allow you to extend it via plugins. You'll have to configure this. 3. Due to the increasing popularity, we are making a meta-version that lets you re-plug any element in the ent…
I think this is a great exaggeration of the "javascript build tools are hard to config" meme, and it honestly is obsolete. Maybe the meme was relevant two years ago, but every since (1) create-react-app and (2) webpack 3, the configuration story has greatly improved. With Webpack 4 and Parcel especially, these tool are both zero config and configurable . Your point 1 and 3 are actually not mutually exclusive, and rep…
Have you ever looked at what CRA does? Just do an `eject`. It layers and layers and layers of configuration. The moment you need something not covered by CRA you'll be stuck with the insanity that is webpack config. [1]
webpack 3 did nothing to solve the configuration problems. Heck, just half a year ago one of the core devs of webpack argued that there could be no defaults in webpack and that webpack config is horrendous "because it's javascript" [2] [3]
webpack 4 addresses just some of the long-standing problems with webpack configuration leaving the actual config as insane and inscrutable as ever. And the only reason it exists is probably due to the public outcry of the larger community and tools like Parcel somewhat stealing the thunder.
Parcel is probably the best thing to happen to JS bundlers in recent years, but it's still not without its problems.
[1] I did: https://twitter.com/dmitriid/status/908677755046449154
[2] Webpack team arguing there can't be defaults in October 2017: https://twitter.com/dmitriid/status/920542261020160000
[3] And continues pretending config issues are because of Javascript: https://twitter.com/dmitriid/status/920714918625775618