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

Add a plugin entry point bundle size budget #74285

Closed
joshdover opened this issue Aug 4, 2020 · 1 comment · Fixed by #78205
Closed

Add a plugin entry point bundle size budget #74285

joshdover opened this issue Aug 4, 2020 · 1 comment · Fixed by #78205
Assignees
Labels
Feature:Development Team:Operations Team label for Operations Team

Comments

@joshdover
Copy link
Contributor

Related to #70733

The most significant cause of slow page load times in Kibana appears to be from plugin entry point bundles that grow in size over time. Usually, this happens by accident. An additional import for something small ends up pulling in large parts of a tree.

While there are many ways to address this, a simple way to get ahead of this problem is to prevent PRs from being merged if they dramatically increase the size of a entry point bundle(s). Now that we are tracking metrics of these plugin bundles in CI, we should introduce a "budget" that each plugin must comply with.

To start, our goal is to get every plugin bundle under 200kb, uncompressed. We have a few dozen that do not comply with this today, and for these we should have an exception list while we work on reducing these problematic bundles.

Once all bundles are under the 200kb limit, we can start ratcheting down this limit over time. When a PR increases a bundle's size over the specified budget, CI should fail.

@joshdover joshdover added Team:Operations Team label for Operations Team Feature:Development labels Aug 4, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations (Team:Operations)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Development Team:Operations Team label for Operations Team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants