Skip to content

Commit 6b470f4

Browse files
authored
switch to esbuild to improve bundle optimization (#91)
1 parent e853e06 commit 6b470f4

File tree

3 files changed

+243
-15
lines changed

3 files changed

+243
-15
lines changed

dist/index.js

Lines changed: 74 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"author": "Simek <me@simek.dev>",
77
"license": "MIT",
88
"scripts": {
9-
"build": "ncc build ./src/action.js -m --target es2021",
9+
"build": "esbuild src/action.js --bundle --platform=node --target=node18 --minify --legal-comments=none --outfile=dist/index.js",
1010
"lint": "eslint .",
1111
"optimize": "svgo -f ./assets",
1212
"test": "uvu tests -i .cjs -i testUtils"
@@ -20,14 +20,14 @@
2020
},
2121
"devDependencies": {
2222
"@eslint/js": "^9.39.2",
23-
"@vercel/ncc": "^0.38.4",
2423
"@yarnpkg/lockfile": "^1.1.0",
2524
"@yarnpkg/parsers": "^3.0.3",
25+
"esbuild": "^0.27.2",
2626
"eslint": "^9.39.2",
2727
"eslint-config-prettier": "^10.1.8",
2828
"eslint-plugin-n": "^17.23.1",
2929
"eslint-plugin-prettier": "^5.5.4",
30-
"globals": "^16.5.0",
30+
"globals": "^17.0.0",
3131
"prettier": "^3.7.4",
3232
"svgo": "^4.0.0",
3333
"uvu": "^0.5.6"

yarn.lock

Lines changed: 166 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,136 @@
5656
resolved "https://registry.yarnpkg.com/@actions/io/-/io-2.0.0.tgz#3ad1271ba3cd515324f2215e8d4c1c0c3864d65b"
5757
integrity sha512-Jv33IN09XLO+0HS79aaODsvIRyduiF7NY/F6LYeK5oeUmrsz7aFdRphQjFoESF4jS7lMauDOttKALcpapVDIAg==
5858

59+
"@esbuild/aix-ppc64@0.27.2":
60+
version "0.27.2"
61+
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz#521cbd968dcf362094034947f76fa1b18d2d403c"
62+
integrity sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==
63+
64+
"@esbuild/android-arm64@0.27.2":
65+
version "0.27.2"
66+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz#61ea550962d8aa12a9b33194394e007657a6df57"
67+
integrity sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==
68+
69+
"@esbuild/android-arm@0.27.2":
70+
version "0.27.2"
71+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.27.2.tgz#554887821e009dd6d853f972fde6c5143f1de142"
72+
integrity sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==
73+
74+
"@esbuild/android-x64@0.27.2":
75+
version "0.27.2"
76+
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.27.2.tgz#a7ce9d0721825fc578f9292a76d9e53334480ba2"
77+
integrity sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==
78+
79+
"@esbuild/darwin-arm64@0.27.2":
80+
version "0.27.2"
81+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz#2cb7659bd5d109803c593cfc414450d5430c8256"
82+
integrity sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==
83+
84+
"@esbuild/darwin-x64@0.27.2":
85+
version "0.27.2"
86+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz#e741fa6b1abb0cd0364126ba34ca17fd5e7bf509"
87+
integrity sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==
88+
89+
"@esbuild/freebsd-arm64@0.27.2":
90+
version "0.27.2"
91+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz#2b64e7116865ca172d4ce034114c21f3c93e397c"
92+
integrity sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==
93+
94+
"@esbuild/freebsd-x64@0.27.2":
95+
version "0.27.2"
96+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz#e5252551e66f499e4934efb611812f3820e990bb"
97+
integrity sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==
98+
99+
"@esbuild/linux-arm64@0.27.2":
100+
version "0.27.2"
101+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz#dc4acf235531cd6984f5d6c3b13dbfb7ddb303cb"
102+
integrity sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==
103+
104+
"@esbuild/linux-arm@0.27.2":
105+
version "0.27.2"
106+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz#56a900e39240d7d5d1d273bc053daa295c92e322"
107+
integrity sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==
108+
109+
"@esbuild/linux-ia32@0.27.2":
110+
version "0.27.2"
111+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz#d4a36d473360f6870efcd19d52bbfff59a2ed1cc"
112+
integrity sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==
113+
114+
"@esbuild/linux-loong64@0.27.2":
115+
version "0.27.2"
116+
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz#fcf0ab8c3eaaf45891d0195d4961cb18b579716a"
117+
integrity sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==
118+
119+
"@esbuild/linux-mips64el@0.27.2":
120+
version "0.27.2"
121+
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz#598b67d34048bb7ee1901cb12e2a0a434c381c10"
122+
integrity sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==
123+
124+
"@esbuild/linux-ppc64@0.27.2":
125+
version "0.27.2"
126+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz#3846c5df6b2016dab9bc95dde26c40f11e43b4c0"
127+
integrity sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==
128+
129+
"@esbuild/linux-riscv64@0.27.2":
130+
version "0.27.2"
131+
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz#173d4475b37c8d2c3e1707e068c174bb3f53d07d"
132+
integrity sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==
133+
134+
"@esbuild/linux-s390x@0.27.2":
135+
version "0.27.2"
136+
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz#f7a4790105edcab8a5a31df26fbfac1aa3dacfab"
137+
integrity sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==
138+
139+
"@esbuild/linux-x64@0.27.2":
140+
version "0.27.2"
141+
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz#2ecc1284b1904aeb41e54c9ddc7fcd349b18f650"
142+
integrity sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==
143+
144+
"@esbuild/netbsd-arm64@0.27.2":
145+
version "0.27.2"
146+
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz#e2863c2cd1501845995cb11adf26f7fe4be527b0"
147+
integrity sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==
148+
149+
"@esbuild/netbsd-x64@0.27.2":
150+
version "0.27.2"
151+
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz#93f7609e2885d1c0b5a1417885fba8d1fcc41272"
152+
integrity sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==
153+
154+
"@esbuild/openbsd-arm64@0.27.2":
155+
version "0.27.2"
156+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz#a1985604a203cdc325fd47542e106fafd698f02e"
157+
integrity sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==
158+
159+
"@esbuild/openbsd-x64@0.27.2":
160+
version "0.27.2"
161+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz#8209e46c42f1ffbe6e4ef77a32e1f47d404ad42a"
162+
integrity sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==
163+
164+
"@esbuild/openharmony-arm64@0.27.2":
165+
version "0.27.2"
166+
resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz#8fade4441893d9cc44cbd7dcf3776f508ab6fb2f"
167+
integrity sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==
168+
169+
"@esbuild/sunos-x64@0.27.2":
170+
version "0.27.2"
171+
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz#980d4b9703a16f0f07016632424fc6d9a789dfc2"
172+
integrity sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==
173+
174+
"@esbuild/win32-arm64@0.27.2":
175+
version "0.27.2"
176+
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz#1c09a3633c949ead3d808ba37276883e71f6111a"
177+
integrity sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==
178+
179+
"@esbuild/win32-ia32@0.27.2":
180+
version "0.27.2"
181+
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz#1b1e3a63ad4bef82200fef4e369e0fff7009eee5"
182+
integrity sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==
183+
184+
"@esbuild/win32-x64@0.27.2":
185+
version "0.27.2"
186+
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz#9e585ab6086bef994c6e8a5b3a0481219ada862b"
187+
integrity sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==
188+
59189
"@eslint-community/eslint-utils@^4.1.2", "@eslint-community/eslint-utils@^4.5.0", "@eslint-community/eslint-utils@^4.8.0":
60190
version "4.9.0"
61191
resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz#7308df158e064f0dd8b8fdb58aa14fa2a7f913b3"
@@ -264,11 +394,6 @@
264394
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
265395
integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
266396

267-
"@vercel/ncc@^0.38.4":
268-
version "0.38.4"
269-
resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.38.4.tgz#e1fb8be9e7ed33bf44c121131d4c6e95f784afac"
270-
integrity sha512-8LwjnlP39s08C08J5NstzriPvW1SP8Zfpp1BvC2sI35kPeZnHfxVkCwu4/+Wodgnd60UtT1n8K8zw+Mp7J9JmQ==
271-
272397
"@yarnpkg/lockfile@^1.1.0":
273398
version "1.1.0"
274399
resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
@@ -497,6 +622,38 @@ entities@^4.2.0:
497622
resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174"
498623
integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==
499624

625+
esbuild@^0.27.2:
626+
version "0.27.2"
627+
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.27.2.tgz#d83ed2154d5813a5367376bb2292a9296fc83717"
628+
integrity sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==
629+
optionalDependencies:
630+
"@esbuild/aix-ppc64" "0.27.2"
631+
"@esbuild/android-arm" "0.27.2"
632+
"@esbuild/android-arm64" "0.27.2"
633+
"@esbuild/android-x64" "0.27.2"
634+
"@esbuild/darwin-arm64" "0.27.2"
635+
"@esbuild/darwin-x64" "0.27.2"
636+
"@esbuild/freebsd-arm64" "0.27.2"
637+
"@esbuild/freebsd-x64" "0.27.2"
638+
"@esbuild/linux-arm" "0.27.2"
639+
"@esbuild/linux-arm64" "0.27.2"
640+
"@esbuild/linux-ia32" "0.27.2"
641+
"@esbuild/linux-loong64" "0.27.2"
642+
"@esbuild/linux-mips64el" "0.27.2"
643+
"@esbuild/linux-ppc64" "0.27.2"
644+
"@esbuild/linux-riscv64" "0.27.2"
645+
"@esbuild/linux-s390x" "0.27.2"
646+
"@esbuild/linux-x64" "0.27.2"
647+
"@esbuild/netbsd-arm64" "0.27.2"
648+
"@esbuild/netbsd-x64" "0.27.2"
649+
"@esbuild/openbsd-arm64" "0.27.2"
650+
"@esbuild/openbsd-x64" "0.27.2"
651+
"@esbuild/openharmony-arm64" "0.27.2"
652+
"@esbuild/sunos-x64" "0.27.2"
653+
"@esbuild/win32-arm64" "0.27.2"
654+
"@esbuild/win32-ia32" "0.27.2"
655+
"@esbuild/win32-x64" "0.27.2"
656+
500657
escape-string-regexp@^4.0.0:
501658
version "4.0.0"
502659
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
@@ -714,10 +871,10 @@ globals@^15.11.0:
714871
resolved "https://registry.yarnpkg.com/globals/-/globals-15.15.0.tgz#7c4761299d41c32b075715a4ce1ede7897ff72a8"
715872
integrity sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==
716873

717-
globals@^16.5.0:
718-
version "16.5.0"
719-
resolved "https://registry.yarnpkg.com/globals/-/globals-16.5.0.tgz#ccf1594a437b97653b2be13ed4d8f5c9f850cac1"
720-
integrity sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==
874+
globals@^17.0.0:
875+
version "17.0.0"
876+
resolved "https://registry.yarnpkg.com/globals/-/globals-17.0.0.tgz#a4196d9cfeb4d627ba165b4647b1f5853bf90a30"
877+
integrity sha512-gv5BeD2EssA793rlFWVPMMCqefTlpusw6/2TbAVMy0FzcG8wKJn4O+NqJ4+XWmmwrayJgw5TzrmWjFgmz1XPqw==
721878

722879
globrex@^0.1.2:
723880
version "0.1.2"

0 commit comments

Comments
 (0)