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

[browserslist] remove unnecessary browsers #89186

Merged
merged 6 commits into from
Jan 25, 2021

Conversation

spalger
Copy link
Contributor

@spalger spalger commented Jan 25, 2021

While investigating an upgrade to babel 7.12 we are running into issues as the size of helpers injected into the build is substantially increasing the size of our page load assets. While determining which new helpers might be causing this I learned that we're still transpiling async/await code, even though our browser support matrix intentionally focuses on greenfield browsers with support for async/await syntax.

Fixes #89029

@spalger spalger added Team:Operations Team label for Operations Team v8.0.0 release_note:skip Skip the PR/issue when compiling release notes v7.12.0 labels Jan 25, 2021
@spalger spalger requested a review from tylersmalley January 25, 2021 18:26
@elasticmachine
Copy link
Contributor

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

@spalger spalger requested a review from a team as a code owner January 25, 2021 19:34
@tylersmalley

This comment has been minimized.

@spalger
Copy link
Contributor Author

spalger commented Jan 25, 2021

Do you think that's a reasonable change @tylersmalley? Maybe I should add some mobile browsers on there just to be safe?

@tylersmalley
Copy link
Contributor

After updating the database on this PR, the updated support would be:

chrome 87
chrome 86
edge 87
edge 86
firefox 84
firefox 83
safari 14
safari 13.1

diff

1,18c1,6
< and_chr 85
< and_uc 12.12
< chrome 85
< chrome 84
< chrome 83
< chrome 80
< chrome 49
< edge 85
< edge 18
< firefox 81
< firefox 80
< ios_saf 14
< ios_saf 13.4-13.7
< ios_saf 13.3
< ios_saf 13.0-13.1
< ios_saf 12.2-12.4
< ios_saf 12.0-12.1
< opera 70
---
> chrome 87
> chrome 86
> edge 87
> edge 86
> firefox 84
> firefox 83
21d8
< samsung 12.0

Current browser usage data from https://caniuse.com/usage-table to what we had previously supported

browser usage support
chrome 87 19.33% yes
chrome 86 4.26% yes
chrome 85 0.45% no
chrome 84 0.24% no
chrome 83 0.18% no
chrome 81 0.11% no
chrome 80 0.15% no
chrome 49 0.22% no
firefox 84 1.05% yes
firefox 83 1.59% yes
firefox 82 0.09% no
firefox 81 0.04% no
firefox 80 0.03% no
edge 87 2.95% yes
edge 86 0.08% yes
edge 85 0.02% no
edge 18 0.18% no
samsung 13 2.52% no
samsung 12 0.42% no
opera 72 0.56% no
opera 71 0.16% no
opera 70 0.00% no
ios_saf 14 10.29% no
ios_saf 13.4-13.7 1.63% no
ios_saf 13.3 0.32% no
ios_saf 13.2 0.05% no
ios_saf 13.0-13.1 0.10% no
ios_saf 12.2-12.4 1.07% no
ios_saf 12.0-12.1 0.13% no
and_chr 87 37.52% no

I suggest we also update the database in this PR npx browserslist --update-db and include the mobile browsers in bold. Ideally it would be good to know what OUR browser usage is from Cloud instead of relying on global usage.

@kibanamachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
canvas 1118 1117 -1
expressions 107 105 -2
lens 477 475 -2
total -5

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
advancedSettings 928.2KB 919.5KB -8.7KB
apm 5.5MB 5.2MB -245.1KB
beatsManagement 581.0KB 537.6KB -43.5KB
canvas 1.6MB 1.4MB -185.4KB
charts 58.2KB 57.2KB -1.1KB
console 988.2KB 937.8KB -50.4KB
crossClusterReplication 356.7KB 318.1KB -38.6KB
dashboard 200.4KB 158.4KB -42.0KB
data 271.0KB 236.1KB -34.9KB
dataEnhanced 172.2KB 150.4KB -21.9KB
devTools 6.3KB 5.4KB -963.0B
discover 512.0KB 420.2KB -91.8KB
enterpriseSearch 1.9MB 1.8MB -115.9KB
fileUpload 835.3KB 810.5KB -24.8KB
fleet 960.6KB 753.5KB -207.1KB
graph 1.3MB 1.2MB -57.0KB
grokdebugger 558.3KB 555.0KB -3.3KB
home 205.7KB 182.8KB -22.9KB
indexLifecycleManagement 251.4KB 200.9KB -50.5KB
indexManagement 1.5MB 1.3MB -196.4KB
indexPatternManagement 604.0KB 555.9KB -48.1KB
infra 2.7MB 2.2MB -554.9KB
ingestPipelines 823.4KB 723.7KB -99.7KB
inputControlVis 114.4KB 88.5KB -25.9KB
inspector 19.4KB 18.5KB -900.0B
kibanaOverview 27.9KB 22.9KB -5.0KB
kibanaReact 349.9KB 348.8KB -1.0KB
lens 1.1MB 859.3KB -245.9KB
licenseManagement 143.6KB 134.7KB -8.9KB
logstash 55.9KB 48.8KB -7.2KB
management 29.2KB 22.2KB -7.0KB
maps 2.9MB 2.6MB -291.4KB
mapsLegacy 721.7KB 713.6KB -8.1KB
ml 7.3MB 6.5MB -742.5KB
monitoring 982.7KB 857.8KB -124.8KB
observability 216.3KB 188.8KB -27.5KB
painlessLab 37.9KB 29.4KB -8.5KB
regionMap 292.9KB 284.9KB -8.0KB
remoteClusters 193.6KB 175.9KB -17.7KB
reporting 45.0KB 34.8KB -10.2KB
rollup 269.3KB 245.4KB -23.8KB
savedObjectsManagement 193.4KB 161.5KB -31.9KB
savedObjectsTagging 115.6KB 82.9KB -32.7KB
searchprofiler 692.3KB 670.2KB -22.1KB
security 834.5KB 724.3KB -110.2KB
securitySolution 8.5MB 7.5MB -1.0MB
snapshotRestore 584.0KB 482.6KB -101.3KB
spaces 41.3KB 41.2KB -45.0B
stackAlerts 114.5KB 89.4KB -25.1KB
tileMap 291.7KB 288.0KB -3.7KB
timelion 383.9KB 376.7KB -7.2KB
transform 1.0MB 915.7KB -125.2KB
triggersActionsUi 1.6MB 1.4MB -178.4KB
upgradeAssistant 154.1KB 136.1KB -18.0KB
uptime 1.1MB 892.4KB -194.1KB
visDefaultEditor 301.1KB 246.2KB -55.0KB
visTypeMarkdown 12.8KB 12.8KB -9.0B
visTypeMetric 20.7KB 19.2KB -1.5KB
visTypeTable 154.0KB 125.9KB -28.1KB
visTypeTagcloud 284.5KB 279.5KB -5.0KB
visTypeTimelion 83.4KB 76.2KB -7.2KB
visTypeTimeseries 1.7MB 1.7MB -76.9KB
visTypeVega 1.5MB 1.5MB -33.0KB
visTypeVislib 643.6KB 622.1KB -21.5KB
visTypeXy 160.2KB 127.1KB -33.0KB
visualizations 61.4KB 57.6KB -3.8KB
visualize 132.4KB 97.5KB -34.9KB
watcher 954.9KB 887.6KB -67.2KB
total -5.9MB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
advancedSettings 10.7KB 9.8KB -939.0B
alerts 68.6KB 64.7KB -3.9KB
apm 29.0KB 23.2KB -5.9KB
beatsManagement 154.0KB 126.4KB -27.6KB
bfetch 20.0KB 12.4KB -7.7KB
canvas 656.2KB 585.4KB -70.8KB
charts 165.6KB 159.8KB -5.8KB
cloud 6.1KB 5.2KB -952.0B
console 29.3KB 26.7KB -2.6KB
core 556.9KB 464.3KB -92.5KB
crossClusterReplication 43.8KB 37.0KB -6.8KB
dashboard 334.2KB 295.2KB -39.0KB
dashboardEnhanced 34.5KB 24.0KB -10.6KB
dashboardMode 7.4KB 4.9KB -2.5KB
data 1013.3KB 798.5KB -214.8KB
dataEnhanced 41.8KB 36.4KB -5.4KB
devTools 20.6KB 18.1KB -2.5KB
discover 82.4KB 66.6KB -15.8KB
discoverEnhanced 15.4KB 10.3KB -5.1KB
embeddable 233.3KB 191.2KB -42.1KB
embeddableEnhanced 19.0KB 11.4KB -7.6KB
enterpriseSearch 20.1KB 14.4KB -5.7KB
esUiShared 278.2KB 216.8KB -61.5KB
expressions 202.2KB 165.7KB -36.5KB
features 11.1KB 7.3KB -3.8KB
fileUpload 8.5KB 7.1KB -1.4KB
fleet 377.9KB 364.9KB -13.0KB
globalSearch 19.8KB 15.8KB -4.0KB
globalSearchBar 58.7KB 48.4KB -10.3KB
globalSearchProviders 9.9KB 8.9KB -1.0KB
graph 15.2KB 11.7KB -3.5KB
grokdebugger 10.5KB 8.1KB -2.4KB
home 20.9KB 17.4KB -3.6KB
indexLifecycleManagement 82.4KB 64.2KB -18.2KB
indexManagement 129.1KB 109.1KB -20.0KB
indexPatternManagement 83.5KB 69.8KB -13.7KB
infra 182.9KB 160.9KB -22.0KB
ingestPipelines 35.2KB 26.1KB -9.1KB
inputControlVis 12.8KB 10.7KB -2.1KB
inspector 47.5KB 44.1KB -3.4KB
kibanaLegacy 87.8KB 82.3KB -5.5KB
kibanaOverview 51.1KB 45.0KB -6.1KB
kibanaReact 124.1KB 108.1KB -15.9KB
kibanaUtils 151.2KB 140.8KB -10.4KB
lens 54.1KB 34.4KB -19.7KB
lensOss 4.5KB 4.5KB -9.0B
licenseManagement 23.0KB 19.6KB -3.4KB
licensing 18.8KB 14.8KB -4.0KB
lists 181.0KB 142.7KB -38.4KB
logstash 25.6KB 22.2KB -3.4KB
management 23.3KB 16.9KB -6.4KB
maps 157.4KB 138.3KB -19.1KB
mapsLegacy 89.4KB 79.0KB -10.4KB
mapsLegacyLicensing 4.3KB 3.4KB -941.0B
mapsOss 4.3KB 4.2KB -9.0B
ml 71.6KB 56.6KB -15.0KB
monitoring 37.5KB 32.5KB -5.1KB
navigation 20.0KB 19.3KB -773.0B
newsfeed 23.1KB 20.6KB -2.5KB
observability 54.6KB 39.2KB -15.3KB
painlessLab 24.9KB 22.2KB -2.8KB
presentationUtil 25.4KB 19.9KB -5.5KB
regionMap 29.3KB 19.0KB -10.3KB
remoteClusters 32.3KB 25.8KB -6.5KB
reporting 106.8KB 95.9KB -10.8KB
rollup 69.9KB 55.2KB -14.6KB
runtimeFields 31.3KB 23.1KB -8.2KB
savedObjects 81.0KB 55.8KB -25.1KB
savedObjectsManagement 72.0KB 36.9KB -35.1KB
savedObjectsTagging 49.3KB 36.0KB -13.3KB
savedObjectsTaggingOss 8.5KB 6.8KB -1.7KB
searchprofiler 48.4KB 45.7KB -2.7KB
security 172.6KB 130.8KB -41.9KB
securityOss 13.1KB 10.7KB -2.4KB
securitySolution 250.1KB 221.5KB -28.6KB
share 81.2KB 69.9KB -11.2KB
snapshotRestore 72.1KB 60.0KB -12.1KB
spaces 288.5KB 231.3KB -57.2KB
spacesOss 4.3KB 3.5KB -806.0B
stackAlerts 16.9KB 16.6KB -279.0B
telemetry 50.0KB 39.3KB -10.7KB
telemetryManagementSection 27.4KB 25.1KB -2.3KB
tileMap 27.8KB 19.7KB -8.1KB
timelion 13.5KB 10.1KB -3.4KB
transform 24.5KB 23.5KB -1022.0B
triggersActionsUi 165.4KB 141.0KB -24.4KB
uiActions 62.3KB 41.9KB -20.4KB
uiActionsEnhanced 270.1KB 226.3KB -43.8KB
upgradeAssistant 60.1KB 57.6KB -2.5KB
uptime 24.5KB 19.1KB -5.4KB
urlDrilldown 54.1KB 42.1KB -12.0KB
urlForwarding 15.8KB 12.8KB -2.9KB
usageCollection 26.6KB 20.7KB -5.9KB
visDefaultEditor 46.4KB 38.7KB -7.7KB
visTypeMarkdown 14.3KB 13.3KB -950.0B
visTypeMetric 26.3KB 22.8KB -3.5KB
visTypeTable 11.5KB 8.9KB -2.5KB
visTypeTagcloud 18.9KB 16.6KB -2.4KB
visTypeTimelion 36.3KB 25.8KB -10.5KB
visTypeTimeseries 137.4KB 126.7KB -10.7KB
visTypeVega 61.7KB 53.7KB -8.0KB
visTypeVislib 46.4KB 34.7KB -11.7KB
visTypeXy 62.1KB 52.8KB -9.3KB
visualizations 170.7KB 138.5KB -32.2KB
visualize 43.0KB 33.3KB -9.7KB
watcher 26.9KB 24.2KB -2.7KB
total -1.5MB
Unknown metric groups

@kbn/ui-shared-deps asset size

id before after diff
kbn-ui-shared-deps.js 7.0MB 7.0MB -19.7KB

async chunk count

id before after diff
securitySolution 24 23 -1
triggersActionsUi 32 31 -1
total -2

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@spalger spalger merged commit 0c9c2c9 into elastic:master Jan 25, 2021
@spalger spalger deleted the fix/unnecessarily-broad-browserslist branch January 25, 2021 23:30
spalger added a commit that referenced this pull request Jan 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release_note:skip Skip the PR/issue when compiling release notes Team:Operations Team label for Operations Team v7.12.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Distributable bundles are transpiling async/await
5 participants