From 95bab0ebd8f5a8e0adc63fd428bdc4fabe71cd73 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 6 Nov 2024 12:20:22 +0000 Subject: [PATCH] chore: updated benchmarks --- README.md | 28 ++++++++++----------- packages/data/data/data.json | 48 ++++++++++++++++++------------------ 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index e5062033..94c8f50d 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,13 @@ This project benchmarks the following minifiers: - [esbuild](https://github.com/evanw/esbuild) v0.24.0 - [google-closure-compiler](https://github.com/google/closure-compiler-npm/tree/master/packages/google-closure-compiler) v20240317.0.0 - [tedivm/jshrink](https://github.com/tedious/JShrink) v1.7.0 -- [@swc/core](https://github.com/swc-project/swc) v1.8.0 +- [@swc/core](https://github.com/swc-project/swc) v1.9.0 - [@tdewolff/minify](https://github.com/tdewolff/minify#readme) v2.21.1 - [terser](https://github.com/terser/terser) v5.36.0 - [uglify-js](https://github.com/mishoo/UglifyJS) v3.19.3 -_Benchmarks last updated on Nov 4, 2024._ +_Benchmarks last updated on Nov 6, 2024._
@@ -90,7 +90,7 @@ xychart-beta | :-------------------------------------------------------------------------------------------------------------------------------- | -------------------------------: | ------------------------------: | ----------------------------: | | [react v17.0.2](https://www.npmjs.com/package/react/v/17.0.2) ([Source](https://unpkg.com/react@17.0.2/cjs/react.development.js)) | `72.13 kB` | `19.39 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -68% `22.87 kB` | **🏆-58% `8.17 kB`** | *7x* `21 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -68% `22.87 kB` | **🏆-58% `8.17 kB`** | *10x* `29 ms` | | 2. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-69% `22.64 kB`** | -58% `8.18 kB` | *191x* `536 ms` | | 3. [google-closure-compiler](packages/minifiers/minifiers/google-closure-compiler.ts) | -68% `22.83 kB` | -58% `8.19 kB` | *1167x* `3,269 ms` | | 4. [terser](packages/minifiers/minifiers/terser.ts) | -68% `23.07 kB` | -57% `8.27 kB` | *98x* `275 ms` | @@ -130,7 +130,7 @@ xychart-beta | [moment v2.29.1](https://www.npmjs.com/package/moment/v/2.29.1) ([Source](https://unpkg.com/moment@2.29.1/moment.js)) | `173.90 kB` | `36.23 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | | 1. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-67% `57.73 kB`** | **🏆-49% `18.57 kB`** | *223x* `1,181 ms` | -| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -67% `58.21 kB` | -48% `18.69 kB` | *9x* `50 ms` | +| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -67% `58.21 kB` | -48% `18.69 kB` | *13x* `71 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -66% `59.14 kB` | -48% `18.69 kB` | *129x* `681 ms` | | 4. [google-closure-compiler](packages/minifiers/minifiers/google-closure-compiler.ts) | -66% `58.27 kB` | -48% `18.91 kB` | *730x* `3,856 ms` | | 5. [babel-minify](packages/minifiers/minifiers/babel-minify.ts) | -66% `59.70 kB` | -47% `19.12 kB` | *259x* `1,367 ms` | @@ -168,7 +168,7 @@ xychart-beta | :---------------------------------------------------------------------------------------------------------------------- | -------------------------------: | -------------------------------: | ---------------------------: | | [jquery v3.5.1](https://www.npmjs.com/package/jquery/v/3.5.1) ([Source](https://unpkg.com/jquery@3.5.1/dist/jquery.js)) | `287.63 kB` | `84.50 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -69% `89.15 kB` | **🏆-63% `30.87 kB`** | *10x* `90 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -69% `89.15 kB` | **🏆-63% `30.87 kB`** | *14x* `121 ms` | | 2. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-69% `88.45 kB`** | -63% `30.90 kB` | *191x* `1,639 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -69% `89.54 kB` | -63% `30.91 kB` | *106x* `917 ms` | | 4. [@tdewolff/minify](packages/minifiers/minifiers/tdewolff-minify.ts) | -69% `89.85 kB` | -63% `31.47 kB` | **🏆 `9 ms`** | @@ -207,7 +207,7 @@ xychart-beta | :------------------------------------------------------------------------------------------------------------- | --------------------------------: | -------------------------------: | ---------------------------: | | [vue v2.6.12](https://www.npmjs.com/package/vue/v/2.6.12) ([Source](https://unpkg.com/vue@2.6.12/dist/vue.js)) | `342.15 kB` | `89.67 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -66% `115.50 kB` | **🏆-53% `42.52 kB`** | *9x* `126 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -66% `115.50 kB` | **🏆-53% `42.52 kB`** | *11x* `157 ms` | | 2. [terser](packages/minifiers/minifiers/terser.ts) | -66% `116.80 kB` | -52% `42.92 kB` | *85x* `1,131 ms` | | 3. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-67% `113.80 kB`** | -52% `43.04 kB` | *172x* `2,282 ms` | | 4. [babel-minify](packages/minifiers/minifiers/babel-minify.ts) | -66% `117.90 kB` | -51% `43.93 kB` | *187x* `2,476 ms` | @@ -248,7 +248,7 @@ xychart-beta | **Minifier** | **Minified size** | **Minzipped size** | **Time** | | 1. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-87% `68.17 kB`** | **🏆-74% `24.69 kB`** | *146x* `1,756 ms` | | 2. [google-closure-compiler](packages/minifiers/minifiers/google-closure-compiler.ts) | -86% `73.47 kB` | -74% `24.97 kB` | *386x* `4,633 ms` | -| 3. [@swc/core](packages/minifiers/minifiers/swc.ts) | -87% `69.84 kB` | -74% `25.16 kB` | *9x* `112 ms` | +| 3. [@swc/core](packages/minifiers/minifiers/swc.ts) | -87% `69.84 kB` | -74% `25.16 kB` | *11x* `134 ms` | | 4. [terser](packages/minifiers/minifiers/terser.ts) | -87% `70.67 kB` | -74% `25.19 kB` | *78x* `947 ms` | | 5. [babel-minify](packages/minifiers/minifiers/babel-minify.ts) | -87% `72.37 kB` | -74% `25.50 kB` | *161x* `1,940 ms` | | 6. [uglify-js (no compress)](packages/minifiers/minifiers/uglify-js.ts) | -86% `74.61 kB` | -73% `25.86 kB` | *28x* `341 ms` | @@ -286,7 +286,7 @@ xychart-beta | [d3 v6.3.1](https://www.npmjs.com/package/d3/v/6.3.1) ([Source](https://unpkg.com/d3@6.3.1/dist/d3.js)) | `555.77 kB` | `130.69 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | | 1. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-53% `263.56 kB`** | **🏆-33% `87.02 kB`** | *116x* `4,067 ms` | -| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -52% `265.26 kB` | -33% `87.21 kB` | *7x* `275 ms` | +| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -52% `265.26 kB` | -33% `87.21 kB` | *10x* `370 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -52% `267.77 kB` | -33% `88.09 kB` | *65x* `2,290 ms` | | 4. [uglify-js (no compress)](packages/minifiers/minifiers/uglify-js.ts) | -50% `275.35 kB` | -32% `88.32 kB` | *21x* `749 ms` | | 5. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -50% `276.47 kB` | -32% `89.16 kB` | *29x* `1,016 ms` | @@ -324,7 +324,7 @@ xychart-beta | :----------------------------------------------------------------------------------------------------------------------------- | --------------------------------: | --------------------------------: | ---------------------------: | | [terser v5.30.3](https://www.npmjs.com/package/terser/v/5.30.3) ([Source](https://unpkg.com/terser@5.30.3/dist/bundle.min.js)) | `1.01 MB` | `193.76 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -55% `455.59 kB` | **🏆-36% `123.09 kB`** | *7x* `239 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -55% `455.59 kB` | **🏆-36% `123.09 kB`** | *10x* `317 ms` | | 2. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | -55% `451.19 kB` | -36% `123.33 kB` | *124x* `3,878 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -55% `458.29 kB` | -36% `123.48 kB` | *70x* `2,186 ms` | | 4. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -53% `474.40 kB` | -36% `124.43 kB` | *31x* `969 ms` | @@ -363,7 +363,7 @@ xychart-beta | :------------------------------------------------------------------------------------------------------------------------- | --------------------------------: | --------------------------------: | --------------------------------: | | [three v0.124.0](https://www.npmjs.com/package/three/v/0.124.0) ([Source](https://unpkg.com/three@0.124.0/build/three.js)) | `1.25 MB` | `248.27 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -48% `645.27 kB` | **🏆-36% `158.50 kB`** | *7x* `363 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | -48% `645.27 kB` | **🏆-36% `158.50 kB`** | *9x* `470 ms` | | 2. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-49% `641.59 kB`** | -36% `159.07 kB` | *105x* `5,130 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -48% `653.25 kB` | -36% `159.20 kB` | *60x* `2,951 ms` | | 4. [google-closure-compiler](packages/minifiers/minifiers/google-closure-compiler.ts) | -48% `644.45 kB` | -34% `163.00 kB` | *169x* `8,208 ms` | @@ -403,7 +403,7 @@ xychart-beta | [victory v35.8.4](https://www.npmjs.com/package/victory/v/35.8.4) ([Source](https://unpkg.com/victory@35.8.4/dist/victory.js)) | `2.13 MB` | `309.94 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | | 1. [uglify-js](packages/minifiers/minifiers/uglify-js.ts) | **🏆-67% `694.78 kB`** | **🏆-49% `157.44 kB`** | *120x* `6,627 ms` | -| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -67% `712.61 kB` | -49% `158.06 kB` | *9x* `519 ms` | +| 2. [@swc/core](packages/minifiers/minifiers/swc.ts) | -67% `712.61 kB` | -49% `158.06 kB` | *13x* `726 ms` | | 3. [terser](packages/minifiers/minifiers/terser.ts) | -66% `715.58 kB` | -49% `158.71 kB` | *72x* `3,991 ms` | | 4. [@tdewolff/minify](packages/minifiers/minifiers/tdewolff-minify.ts) | -66% `718.73 kB` | -47% `165.13 kB` | **🏆 `55 ms`** | | 5. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -64% `759.34 kB` | -46% `166.39 kB` | *28x* `1,599 ms` | @@ -441,7 +441,7 @@ xychart-beta | :----------------------------------------------------------------------------------------------------------------------------------- | --------------------------------: | --------------------------------: | --------------------------------: | | [echarts v5.1.1](https://www.npmjs.com/package/echarts/v/5.1.1) ([Source](https://unpkg.com/echarts@5.1.1/dist/echarts.js)) | `3.20 MB` | `684.61 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-69% `993.25 kB`** | **🏆-53% `320.27 kB`** | *8x* `1,009 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-69% `993.25 kB`** | **🏆-53% `320.27 kB`** | *11x* `1,335 ms` | | 2. [terser](packages/minifiers/minifiers/terser.ts) | -69% `1.00 MB` | -53% `321.99 kB` | *52x* `6,107 ms` | | 3. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -66% `1.07 MB` | -52% `330.74 kB` | *23x* `2,692 ms` | | 4. [uglify-js (no compress)](packages/minifiers/minifiers/uglify-js.ts) | -67% `1.07 MB` | -52% `331.41 kB` | *15x* `1,776 ms` | @@ -480,7 +480,7 @@ xychart-beta | :----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------: | --------------------------------: | --------------------------------: | | [antd v4.16.1](https://www.npmjs.com/package/antd/v/4.16.1) ([Source](https://unpkg.com/antd@4.16.1/dist/antd.js)) | `6.67 MB` | `825.18 kB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-67% `2.18 MB`** | **🏆-45% `454.52 kB`** | *9x* `1,269 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-67% `2.18 MB`** | **🏆-45% `454.52 kB`** | *12x* `1,655 ms` | | 2. [terser](packages/minifiers/minifiers/terser.ts) | -66% `2.25 MB` | -45% `457.79 kB` | *51x* `6,979 ms` | | 3. [@tdewolff/minify](packages/minifiers/minifiers/tdewolff-minify.ts) | -66% `2.30 MB` | -43% `472.04 kB` | **🏆 `136 ms`** | | 4. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -64% `2.43 MB` | -42% `475.48 kB` | *22x* `3,108 ms` | @@ -519,7 +519,7 @@ xychart-beta | :------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------: | --------------------------------: | --------------------------------: | | [typescript v4.9.5](https://www.npmjs.com/package/typescript/v/4.9.5) ([Source](https://unpkg.com/typescript@4.9.5/lib/typescript.js)) | `10.95 MB` | `1.88 MB` | | | **Minifier** | **Minified size** | **Minzipped size** | **Time** | -| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-70% `3.31 MB`** | **🏆-55% `851.75 kB`** | *9x* `2,621 ms` | +| 1. [@swc/core](packages/minifiers/minifiers/swc.ts) | **🏆-70% `3.31 MB`** | **🏆-55% `851.75 kB`** | *12x* `3,399 ms` | | 2. [uglify-js (no compress)](packages/minifiers/minifiers/uglify-js.ts) | -68% `3.54 MB` | -53% `876.54 kB` | *14x* `3,928 ms` | | 3. [@tdewolff/minify](packages/minifiers/minifiers/tdewolff-minify.ts) | -69% `3.36 MB` | -53% `876.66 kB` | **🏆 `263 ms`** | | 4. [terser (no compress)](packages/minifiers/minifiers/terser.ts) | -68% `3.53 MB` | -53% `879.30 kB` | *19x* `5,259 ms` | diff --git a/packages/data/data/data.json b/packages/data/data/data.json index 1f18c439..4c6ca490 100644 --- a/packages/data/data/data.json +++ b/packages/data/data/data.json @@ -7,12 +7,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 22866, "minzippedSize": 8173, - "time": 20.539148200000003, + "time": 28.929202800000002, "runs": 5 } } @@ -159,12 +159,12 @@ }, "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 58213, "minzippedSize": 18687, - "time": 50.386221, + "time": 71.4343204, "runs": 5 } } @@ -287,12 +287,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 89154, "minzippedSize": 30867, - "time": 89.7742076, + "time": 120.6300522, "runs": 5 } } @@ -427,12 +427,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 115497, "minzippedSize": 42515, - "time": 126.43836280000001, + "time": 157.30393220000002, "runs": 5 } } @@ -591,12 +591,12 @@ }, "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 69836, "minzippedSize": 25156, - "time": 111.617902, + "time": 133.52870059999998, "runs": 5 } } @@ -719,12 +719,12 @@ }, "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 265257, "minzippedSize": 87207, - "time": 274.94758820000004, + "time": 369.54740039999996, "runs": 5 } } @@ -845,12 +845,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 455590, "minzippedSize": 123089, - "time": 238.557229, + "time": 316.51130479999995, "runs": 5 } } @@ -984,12 +984,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 645273, "minzippedSize": 158497, - "time": 362.7350274, + "time": 470.42583079999997, "runs": 5 } } @@ -1133,12 +1133,12 @@ }, "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 712609, "minzippedSize": 158055, - "time": 519.379232, + "time": 726.1373468, "runs": 5 } } @@ -1256,12 +1256,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 993245, "minzippedSize": 320265, - "time": 1008.683574, + "time": 1335.3171206000002, "runs": 5 } } @@ -1386,12 +1386,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 2177885, "minzippedSize": 454517, - "time": 1268.665141, + "time": 1655.0254664, "runs": 5 } } @@ -1514,12 +1514,12 @@ "minified": { "@swc/core": { "minifierPath": "swc.ts", - "version": "1.8.0", + "version": "1.9.0", "result": { "data": { "minifiedSize": 3310240, "minzippedSize": 851747, - "time": 2620.633379, + "time": 3398.8516082, "runs": 5 } }