kibana/tasks
Tyler Smalley 1a79309a2e
[optimizer] More aggressive chunking of common/vendor code (#15907) (#16051)
Previously, we were not aggressive in combining common code which resulted in duplicates included in the bundles.

As an example `node_modules/elasticsearch-browser/elasticsearch.angular.js` is present in the following chunks:

* kibana.bundle.js
* dashboardViewer.bundle.js
* apm.bundle.js
* monitoring.bundle.js
* ml.bundle.js
* timelion.bundle.js
* graph.bundle.js

Vendored code (anything inside node_modules) is placed in vendors.bundle.js while everything else with more than two references is placed in commons.bundle.js.

This has a couple positive side-effects (numbers are with x-pack & canvas):

* Decreased build time. Seeing builds go from 475.76 seconds to 274.72.
* Decreased memory overhead. Uses roughly 1/3 the memory overhead.
* Decreased bundle size. A 68% reduction in overall bundle size. Going from 66.16 MB to 21.13 MB.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2018-01-15 12:38:19 -08:00
..
build [6.x] Switch to Yarn (#15485) (#15955) 2018-01-10 16:54:20 +01:00
config [optimizer] More aggressive chunking of common/vendor code (#15907) (#16051) 2018-01-15 12:38:19 -08:00
lib Adds task to export a CSV of all dependencies (#15068) 2017-11-21 10:30:52 -06:00
utils [6.x] [precommit hook] add dev script (#14890) (#15065) 2017-11-20 17:00:37 -07:00
vendor [6.x] Switch to Yarn (#15485) (#15955) 2018-01-10 16:54:20 +01:00
check_plugins.js
functional_test_runner.js [6.x] [precommit hook] add dev script (#14890) (#15065) 2017-11-20 17:00:37 -07:00
jenkins.js [6.x] [eslint] add eslint dev script (#14889) (#14941) 2017-11-14 10:24:00 -07:00
licenses.js Remove use of npm ls in grunt tasks (#11965) 2017-05-24 08:34:55 -07:00
licenses_csv_report.js Adds task to export a CSV of all dependencies (#15068) 2017-11-21 10:30:52 -06:00
plugin.js
reject_rej_files.js
release.js
release_packages.js Use Object spread instead of Object.assign where it makes sense (#13903) (#14397) 2017-10-10 15:55:06 +02:00
sterilize.js [6.x] Upgrade to eslint 4 (#14862) (#14951) 2017-11-14 20:20:37 -07:00
test.js [6.x] [eslint] add eslint dev script (#14889) (#14941) 2017-11-14 10:24:00 -07:00
test_jest.js [grunt/jest] fail task when jest fails (#12049) 2017-05-26 17:21:45 -07:00
ui_framework.js [6.x] Upgrade to webpack 3 (#14315) (#14824) 2017-11-07 15:54:48 -07:00