New architecture #1664
# Conflicts: # .travis.yml # lib/utils/config-validate.js # lib/utils/helpers.js # lib/utils/plugin-adapter.js # lib/utils/plugins.js # lib/watch.js # lib/workers/index.js # lib/workers/job-processor.js # lib/workers/jobs.js # lib/workers/manager.js # package.json
I am wondering if this will bring support for alternate bundlers like Rollup.
If we were to support Rollup, it would need some changes in the pipeline architecture. Since Rollup really shines with ES6 modules and tree-shaking, we would have some plugins run beforehand, and some (like Babel) run after the bundle is generated. Also, I wonder if Rollup would have better or worse performance than deppack. I'm not sure what types of optimizations they have done as far as atomic rebuilding.
It would be interesting to define a bundler API, that any new bundler could implement.
If I can help in any way, just ping me. I'm very excited to see what 3.0 brings!
Code splitting indeed! We need to have first-class support for that.
I think there should be some ways to simplify the config even more, and incorporate threading aka workers. This may increase the build speed 3x. We’d also want some kind of persistent file system caching, to increase speed of cold builds.
One commonly requested feature is an ability to easily replace script and css paths inside index.html with git commit hashes or similar suffixes.
Cache & workers are simple. Conceptual changes, script path updates are harder.