Commit Graph

1274 Commits

Author SHA1 Message Date
SWC Bot
2e50dd54e8 chore: Publish crates 2022-12-12 02:01:40 +00:00
SWC Bot
3d80fa4c25 chore: Publish crates 2022-12-10 00:55:14 +00:00
SWC Bot
fc21895bce chore: Publish crates 2022-12-10 00:09:46 +00:00
SWC Bot
fef8fc99a0 chore: Publish crates 2022-12-09 01:52:11 +00:00
SWC Bot
6fadb48a52 chore: Publish crates 2022-12-08 05:15:03 +00:00
SWC Bot
96f9858639 chore: Publish crates 2022-12-07 23:43:51 +00:00
SWC Bot
9cc5b928a6 chore: Publish crates 2022-12-07 11:57:23 +00:00
Alex Kirszenberg
e1d01d8b7a
feat(es/analyzer): Extract the analyzer from the minifier to a separate crate (#6586) 2022-12-07 11:53:49 +00:00
SWC Bot
9d0247a394 chore: Publish crates 2022-12-06 00:54:17 +00:00
SWC Bot
c3dd8ffe79 chore: Publish crates 2022-12-05 00:17:56 +00:00
IWANABETHATGUY
586bfd5480
refactor(es/minifier): Remove unnecessary code (#6575) 2022-12-05 00:14:51 +00:00
SWC Bot
2379fc1fd9 chore: Publish crates 2022-12-04 05:55:52 +00:00
SWC Bot
cffa11122b chore: Publish crates 2022-12-03 00:26:38 +00:00
SWC Bot
ab2e19b601 chore: Publish crates 2022-12-02 08:01:39 +00:00
SWC Bot
912743aadb chore: Publish crates 2022-11-30 17:13:08 +00:00
SWC Bot
171733e8bb chore: Publish crates 2022-11-30 07:50:13 +00:00
Donny/강동윤
8d8f150792
test(es/minifier): Add tests for preserving top-level directives (#6545) 2022-11-30 05:46:48 +00:00
SWC Bot
180f6740c1 chore: Publish crates 2022-11-29 07:04:40 +00:00
Yongwook Choi (Leo)
81224b5d67
fix(es/minifier): Don't convert a signed integer literal key to a numeric literal (#6529)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6528.
2022-11-29 07:01:30 +00:00
SWC Bot
6ca36c198b chore: Publish crates 2022-11-29 06:00:22 +00:00
SWC Bot
01676568e6 chore: Publish crates 2022-11-29 05:26:59 +00:00
Donny/강동윤
9752b43f94
fix(es/minifier): Use unsafe option for arrow => method (#6521)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6504.
 - https://github.com/vercel/next.js/issues/43208.
2022-11-29 05:23:55 +00:00
SWC Bot
40cc78f384 chore: Publish crates 2022-11-29 04:53:35 +00:00
Donny/강동윤
27ae59e77b
fix(es/minifier): Make sequential inliner respect resolution order (#6509)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6491.
2022-11-29 04:50:15 +00:00
SWC Bot
c14acc1b14 chore: Publish crates 2022-11-29 04:15:55 +00:00
Donny/강동윤
b394f9f1d3
fix(es/minifier): Don't drop used variables from sequential inliner (#6520)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6510.
2022-11-29 04:12:11 +00:00
SWC Bot
5a9aab2392 chore: Publish crates 2022-11-28 16:00:01 +00:00
SWC Bot
96a1f93e91 chore: Publish crates 2022-11-28 07:54:59 +00:00
SWC Bot
f019c0210b chore: Publish crates 2022-11-25 11:31:34 +00:00
SWC Bot
2ce5e2287a chore: Publish crates 2022-11-24 15:25:03 +00:00
SWC Bot
bc61b0948a chore: Publish crates 2022-11-24 09:46:57 +00:00
HeYunfei
8d906b45e5
fix(es/minifier): Preserve classes with side effects in static fields (#6480) 2022-11-24 09:43:00 +00:00
SWC Bot
6fd97971c9 chore: Publish crates 2022-11-24 08:47:34 +00:00
SWC Bot
553ba9c382 chore: Publish crates 2022-11-21 00:11:04 +00:00
SWC Bot
66b4966d60 chore: Publish crates 2022-11-20 23:40:48 +00:00
SWC Bot
40ad709523 chore: Publish crates 2022-11-20 10:06:27 +00:00
SWC Bot
59954370cb chore: Publish crates 2022-11-20 00:30:30 +00:00
HeYunfei
9154bbc111
fix(es/minifier): Avoid dropping statements which has side-effects (#6476) 2022-11-20 00:26:52 +00:00
SWC Bot
a4ed624f81 chore: Publish crates 2022-11-18 07:56:33 +00:00
Donny/강동윤
15ad2c2568
fix(es/minifier): Abort inliner on fn declarations used multiple time (#6473)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6463.
2022-11-18 07:53:13 +00:00
SWC Bot
e45c66535c chore: Publish crates 2022-11-18 07:19:26 +00:00
SWC Bot
d78c5452ea chore: Publish crates 2022-11-18 06:38:53 +00:00
SWC Bot
44b0790dcd chore: Publish crates 2022-11-17 06:04:26 +00:00
Alexander Akait
4d7b920bd4
feat(es/minifier): Support script fully (#6455) 2022-11-17 06:00:42 +00:00
SWC Bot
7716f58303 chore: Publish crates 2022-11-17 02:04:20 +00:00
SWC Bot
95d274e403 chore: Publish crates 2022-11-17 00:55:18 +00:00
HeYunfei
dabea71c44
fix(es/minifier): Preserve unused imported specifiers (#6458) 2022-11-17 00:52:19 +00:00
SWC Bot
0d30c7f463 chore: Publish crates 2022-11-16 04:54:58 +00:00
SWC Bot
4d6b182dc2 chore: Publish crates 2022-11-15 07:03:31 +00:00
Donny/강동윤
bb544ba2f5
fix(es/minifier): Fix code for dropping unreachable statements (#6429)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6405.
2022-11-15 07:00:14 +00:00
SWC Bot
6cc71e9493 chore: Publish crates 2022-11-15 02:32:13 +00:00
Donny/강동윤
99934b09f7
fix(es/minifier): Change the default of mangle.toplevel to false (#6439) 2022-11-15 02:28:38 +00:00
SWC Bot
e6e71b5b37 chore: Publish crates 2022-11-15 00:25:10 +00:00
Donny/강동윤
5fd7ab87b6
fix(es/minifier): Preserve op of the op-assignments in seq inliner (#6428)
**Description:**


**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6407.
2022-11-15 00:22:06 +00:00
SWC Bot
cdc1b4cea4 chore: Publish crates 2022-11-14 06:06:09 +00:00
Donny/강동윤
81a4bb304a
fix(es/compat): Fix span hygiene of function naming pass (#6345)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6344.
2022-11-14 06:03:09 +00:00
SWC Bot
b97a59bb3f chore: Publish crates 2022-11-14 05:34:02 +00:00
SWC Bot
6672c52af2 chore: Publish crates 2022-11-13 23:55:36 +00:00
SWC Bot
c74f922311 chore: Publish crates 2022-11-13 08:44:40 +00:00
SWC Bot
2088dd4a84 chore: Publish crates 2022-11-11 22:50:50 +00:00
SWC Bot
c1588eb3e5 chore: Publish crates 2022-11-11 02:00:43 +00:00
SWC Bot
c356f96820 chore: Publish crates 2022-11-09 06:32:39 +00:00
SWC Bot
9f685796c3 chore: Publish crates 2022-11-07 03:59:24 +00:00
Daiki Nishikawa
f6faeb3bad
fix(es/parser): Fix parsing of TS satisfies expressions (#6354) 2022-11-07 03:56:15 +00:00
SWC Bot
981dc88517 chore: Publish crates 2022-11-06 00:23:31 +00:00
SWC Bot
2c8c1392d1 chore: Publish crates 2022-11-05 18:33:53 +00:00
SWC Bot
1b839321c0 chore: Publish crates 2022-11-05 15:28:00 +00:00
SWC Bot
134b134581 chore: Publish crates 2022-11-05 14:10:18 +00:00
SWC Bot
a1a6513ee7 chore: Publish crates 2022-11-03 06:03:12 +00:00
SWC Bot
4293463bb6 chore: Publish crates 2022-11-03 04:55:30 +00:00
SWC Bot
394924cb99 chore: Publish crates 2022-11-02 10:05:19 +00:00
SWC Bot
fffc5f22d6 chore: Publish crates 2022-11-02 09:32:51 +00:00
SWC Bot
5784ae24a5 chore: Publish crates 2022-11-02 02:00:08 +00:00
Donny/강동윤
dd797f7f15
fix(es/minifier): Don't drop an inlined parameter as a duplicate (#6293) 2022-11-02 01:57:15 +00:00
SWC Bot
d22a400fd3 chore: Publish crates 2022-11-02 01:24:27 +00:00
Donny/강동윤
5d52ae971e
feat(es/minifier): Implement trivial optimizations (#6256)
**Description:**

1. Evaluate `Number.toString()`.
2. Mark some terser tests as passing where our output is better.
2022-11-02 01:21:32 +00:00
SWC Bot
108d3b82d4 chore: Publish crates 2022-11-01 16:36:24 +00:00
Donny/강동윤
655f6744c5
fix(es/minifier): Fix infinite loop (#6300)
**Related issue:**

 - https://github.com/vercel/next.js/issues/42171.
2022-11-01 16:32:52 +00:00
SWC Bot
33d83ae734 chore: Publish crates 2022-10-31 02:33:07 +00:00
SWC Bot
41e0698ed6 chore: Publish crates 2022-10-29 00:05:27 +00:00
Donny/강동윤
4eab2ed2fc
fix(es/minifier): Don't inline regex for IIFEs (#6283)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6279.

Co-authored-by: Justin Ridgewell <justin@ridgewell.name>
2022-10-29 00:02:32 +00:00
SWC Bot
9f39013704 chore: Publish crates 2022-10-28 08:04:06 +00:00
Donny/강동윤
0376da73c6
test(es/minifier): Add a test for ?? operator (#6282)
**Related issue:**

 - https://github.com/vercel/next.js/issues/41992.
2022-10-28 08:00:21 +00:00
SWC Bot
30b3596779 chore: Publish crates 2022-10-28 02:04:38 +00:00
Austaras
8c1ac686cb
fix(es/minifier): Don't ignore nullish coalescing (#6272) 2022-10-28 02:00:47 +00:00
SWC Bot
a4546a4d22 chore: Publish crates 2022-10-28 01:27:37 +00:00
SWC Bot
09b296164c chore: Publish crates 2022-10-27 03:05:43 +00:00
SWC Bot
fd4b66ea8c chore: Publish crates 2022-10-27 01:25:04 +00:00
SWC Bot
bd61e0614c chore: Publish crates 2022-10-27 00:54:01 +00:00
Donny/강동윤
743a1aab4f
feat(es/minfiier): Compute more with sequential inliner (#6169) 2022-10-27 00:50:52 +00:00
SWC Bot
51132f0636 chore: Publish crates 2022-10-27 00:19:24 +00:00
SWC Bot
3fdc8071e1 chore: Publish crates 2022-10-26 12:32:21 +00:00
SWC Bot
f82dfe1f5d chore: Publish crates 2022-10-26 06:05:35 +00:00
Austaras
1cd7f617f9
feat(es/minifier): Inline a lazily initialized var if it's used once (#6237) 2022-10-26 06:02:22 +00:00
SWC Bot
5e60bf4f55 chore: Publish crates 2022-10-26 04:40:31 +00:00
Donny/강동윤
86e265a024
feat(es/minifier): Support more statements in seqential inliner (#6248)
**Description:**

We now inline into the discriminant of a switch statement and into the initializer of for/for-in/for-of statements.
2022-10-26 13:37:10 +09:00
Donny/강동윤
01edb4fff4
test(es/minifier): Organize terser tests (#6247) 2022-10-25 05:12:30 +00:00
Donny/강동윤
d4544884ee
chore(es/minifier): Configure fuzzer (#6246) 2022-10-25 04:36:03 +00:00
SWC Bot
3d9c1a55bb chore: Publish crates 2022-10-25 04:03:28 +00:00
Donny/강동윤
ec9a80aae0
feat(es/minifier): Respect options (#6245) 2022-10-25 04:00:16 +00:00
SWC Bot
2f05c3fd32 chore: Publish crates 2022-10-24 03:58:37 +00:00
SWC Bot
c025cd01ce chore: Publish crates 2022-10-23 04:45:44 +00:00
Donny/강동윤
48bb0cc51d
fix(es/minifier): Fix collapse_vars (#6235)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6217
2022-10-23 13:43:10 +09:00
SWC Bot
e2c1fcffd4 chore: Publish crates 2022-10-21 23:50:56 +00:00
SWC Bot
b79997ba02 chore: Publish crates 2022-10-21 09:11:29 +00:00
Donny/강동윤
e9d421bd95
fix(es/minifier): Preserve this in more cases (#6226)
**Related issue (if exists):**

 - Closes https://github.com/swc-project/swc/issues/6175.
 - Closes https://github.com/swc-project/swc/issues/6137.

Co-authored-by: Justin Ridgewell <justin@ridgewell.name>
2022-10-21 09:07:00 +00:00
SWC Bot
bcd5f6f5be chore: Publish crates 2022-10-21 03:21:15 +00:00
Donny/강동윤
780b5de678
fix(es/minifier): Fix detection of direct eval (#6215) 2022-10-21 12:18:10 +09:00
SWC Bot
6b738f2443 chore: Publish crates 2022-10-21 00:36:28 +00:00
Donny/강동윤
ea03ce1a82
refactor(es/minifier): Don't create invalid nodes (#6191)
**Description:**

A sequential expression should have at leat two elements.
2022-10-21 00:33:40 +00:00
Donny/강동윤
725b1185f3
test(es/minifier): Add a test for a fixed issue (#6218)
**Related issue (if exists):**

 - Closes https://github.com/swc-project/swc/issues/6217.
2022-10-20 19:26:27 +00:00
SWC Bot
3f648bdf0f chore: Publish crates 2022-10-20 08:59:26 +00:00
SWC Bot
33470ab5b9 chore: Publish crates 2022-10-20 05:09:47 +00:00
Donny/강동윤
cc848db80e
feat(es/minifier): Mark more expressions as pure (#6204) 2022-10-20 05:06:32 +00:00
SWC Bot
6aaf6a7a87 chore: Publish crates 2022-10-20 02:26:45 +00:00
Donny/강동윤
12443db39a
feat(es/minifier): Merge functions using sequential inliner (#6148) 2022-10-20 02:24:09 +00:00
SWC Bot
0c23592d14 chore: Publish crates 2022-10-20 01:50:04 +00:00
SWC Bot
6008995db1 chore: Publish crates 2022-10-19 04:56:51 +00:00
SWC Bot
b48ec880fd chore: Publish crates 2022-10-19 04:00:51 +00:00
SWC Bot
287c2f2941 chore: Publish crates 2022-10-19 02:18:35 +00:00
Donny/강동윤
842abd4575
fix(es/minifier): Remove wrong rule (#6201)
**Related issue:**

 - https://github.com/vercel/next.js/issues/41527.
2022-10-19 02:14:38 +00:00
SWC Bot
a049ef058b chore: Publish crates 2022-10-18 14:51:39 +00:00
SWC Bot
789ea16fc8 chore: Publish crates 2022-10-18 05:41:47 +00:00
SWC Bot
e30316626f chore: Publish crates 2022-10-18 02:54:12 +00:00
Donny/강동윤
f2e8f98d38
feat(es/minifier): Skip function declarations in sequential inliner (#6147) 2022-10-18 02:51:05 +00:00
SWC Bot
b197a62b5e chore: Publish crates 2022-10-18 02:16:46 +00:00
Donny/강동윤
3f0fcf4fa9
feat(es/minifier): Make sequential inliner self-repeat (#6168) 2022-10-18 02:13:39 +00:00
SWC Bot
fed888f822 chore: Publish crates 2022-10-17 08:33:49 +00:00
SWC Bot
99c55dc93b chore: Publish crates 2022-10-16 15:52:36 +00:00
SWC Bot
b3b8e2192d chore: Publish crates 2022-10-16 00:28:22 +00:00
SWC Bot
c3ba51f48e chore: Publish crates 2022-10-15 23:59:27 +00:00
SWC Bot
78f2d6012c chore: Publish crates 2022-10-15 12:55:40 +00:00
SWC Bot
23e30fd149 chore: Publish crates 2022-10-15 09:14:15 +00:00
Donny/강동윤
aec5cdacc6
fix(es/minifier): Preserve this of tagged template literals (#6165)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6146
2022-10-15 09:11:20 +00:00
SWC Bot
16df44221f chore: Publish crates 2022-10-15 05:50:28 +00:00
Austaras
b40d486253
fix(es/minifier): Consider function body cost while inlining function (#5342) 2022-10-15 05:47:56 +00:00
SWC Bot
608aa94935 chore: Publish crates 2022-10-15 04:39:37 +00:00
Donny/강동윤
6d0ca05cb5
fix(es/minifier): Fix ordering issue of analyzer (#6150)
**Description:**

This is the groundwork for a parallel analyzer. This PR fixes the ordering issue of the analyzer so that the analyzer works identically regardless of the visit order. This patch contains some improvements because previously, we mixed `.and_modify()` and `.or_default()`.
2022-10-15 04:37:11 +00:00
SWC Bot
a50b5aeeb1 chore: Publish crates 2022-10-14 10:42:11 +00:00
SWC Bot
ef5ed9b4a9 chore: Publish crates 2022-10-14 03:00:49 +00:00
Donny/강동윤
d334c6e783
feat(es/minifier): Ignore return value if a param of IIFE is not used (#6115) 2022-10-14 02:58:00 +00:00
SWC Bot
3ff55caa38 chore: Publish crates 2022-10-14 00:35:25 +00:00
Donny/강동윤
3d271e82a2
fix(es/minifier): Preserve return values of recursive IIFE (#6142)
**Description:**

This PR fixes the logic for dropping return values of IIFE.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6141.
2022-10-14 09:32:56 +09:00
SWC Bot
31023f8e7e chore: Publish crates 2022-10-13 23:38:26 +00:00
Donny/강동윤
ec0d6d5a0d
feat(es/minifier): Improve trivial rules (#6136) 2022-10-13 23:34:30 +00:00
SWC Bot
0eb91d67a7 chore: Publish crates 2022-10-13 23:03:28 +00:00
Donny/강동윤
3a29bfee9b
feat(es/minifier): Change default pass limit to 3 (#6138) 2022-10-14 08:00:32 +09:00
SWC Bot
1affcfe8e8 chore: Publish crates 2022-10-13 06:12:56 +00:00
SWC Bot
769e5a2885 chore: Publish crates 2022-10-13 03:48:18 +00:00
Donny/강동윤
c37839fc62
feat(es/minifier): Swap more binary expressions (#6134) 2022-10-13 03:45:05 +00:00
SWC Bot
56da9981bb chore: Publish crates 2022-10-12 10:06:01 +00:00
SWC Bot
7e1972df7a chore: Publish crates 2022-10-12 05:34:45 +00:00
Donny/강동윤
5875298377
feat(es/minifier): Merge assignments using sequential inliner (#6103) 2022-10-12 05:31:40 +00:00
SWC Bot
7c9cb80a52 chore: Publish crates 2022-10-12 04:34:51 +00:00
Donny/강동윤
fc5d8a5d41
feat(es/minifier): Enable reduce_vars by default (#6096) 2022-10-12 04:32:15 +00:00
SWC Bot
bcc68a8e79 chore: Publish crates 2022-10-12 02:32:34 +00:00
Donny/강동윤
66196a65be
feat(es/minifier): Inline pure array literal partially (#6099) 2022-10-12 02:29:40 +00:00
SWC Bot
e37ced5bf4 chore: Publish crates 2022-10-12 01:55:47 +00:00
Austaras
5a23949f12
feat(es/minifier): Inline and remove vars in one pass (#6093) 2022-10-12 01:52:58 +00:00
SWC Bot
dcb3a4371d chore: Publish crates 2022-10-11 23:55:24 +00:00
SWC Bot
521bdbe9cc chore: Publish crates 2022-10-11 23:11:17 +00:00
Donny/강동윤
ad960c76c0
feat(es/minifier): Detect type of .length (#6120)
**Description:**

This PR updates minifier to detect the type of `xxx.length` if possible.
2022-10-11 23:06:58 +00:00
SWC Bot
5bf306565f chore: Publish crates 2022-10-11 11:23:16 +00:00
Donny/강동윤
6365acc9f5
test(es/minifier): Organize terser tests (#6116)
**Description:**

Our minifier is better than terser in some cases, so we don't need to match the output of terser exactly.
2022-10-11 08:25:11 +00:00
SWC Bot
018ca946e7 chore: Publish crates 2022-10-10 13:09:51 +00:00
SWC Bot
675da485fc chore: Publish crates 2022-10-10 05:40:39 +00:00
Donny/강동윤
3c6cdbc61c
feat(es/minifier): Enable reduce_funcs by default (#6097) 2022-10-10 05:38:17 +00:00
SWC Bot
f5f293e72e chore: Publish crates 2022-10-10 00:56:50 +00:00
Austaras
657e5b3111
feat(es/minifier): Inline more lazily initialized vars (#6089) 2022-10-10 09:53:50 +09:00
SWC Bot
fe51d7aaa2 chore: Publish crates 2022-10-09 00:24:46 +00:00
Donny/강동윤
b0c57458c8
feat(es/minifier): Mark ref to fn as non-call in alias analyzer (#6088) 2022-10-09 09:21:54 +09:00
SWC Bot
818a5cc1eb chore: Publish crates 2022-10-08 04:08:55 +00:00
Donny/강동윤
d0418ebe5b
doc(es/minifier): Document assumptions (#6085) 2022-10-08 13:05:57 +09:00
SWC Bot
969c6eeeeb chore: Publish crates 2022-10-08 03:17:53 +00:00
Donny/강동윤
9ce3df091f
feat(es/minifier): Distinguish calls in alias analyzer (#6080)
**Description:**

This PR improves the alias analyzer by distinguishing call and reference, thus reducing the number of identifiers.

---

Co-authored-by: Justin Ridgewell <justin@ridgewell.name>
2022-10-08 03:15:18 +00:00
SWC Bot
3171718e07 chore: Publish crates 2022-10-07 07:48:18 +00:00
IWANABETHATGUY
8003dc8563
feat(es/codegen): Remove the trailing comma of binding patterns (#6078) 2022-10-07 16:45:20 +09:00
SWC Bot
477626b9ff chore: Publish crates 2022-10-07 05:55:53 +00:00
SWC Bot
15044a35b4 chore: Publish crates 2022-10-06 17:30:14 +00:00
Austaras
ac150c7ced
feat(es/minifier): Use usage_count in sequential inliner (#6071) 2022-10-06 17:27:34 +00:00
SWC Bot
d750f0e03c chore: Publish crates 2022-10-06 16:11:15 +00:00
SWC Bot
5f49ac012e chore: Publish crates 2022-10-06 11:38:55 +00:00
SWC Bot
9d6217f036 chore: Publish crates 2022-10-06 09:15:00 +00:00
Austaras
c9427f1ec4
fix(es/minifier): Improve infection analysis (#6044) 2022-10-06 18:12:09 +09:00
SWC Bot
07611a935c chore: Publish crates 2022-10-06 04:50:27 +00:00
Donny/강동윤
38df5978c1
fix(es/minifier): Mark delete as a property mutation (#6063)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6004.
2022-10-06 04:47:58 +00:00
SWC Bot
02a0cd37d7 chore: Publish crates 2022-10-06 02:49:43 +00:00
Donny/강동윤
d65fba134d
fix(es/minifier): Fix infection analysis of sequential inliner (#6053)
**Description:**

This PR fixes the callee issue by fixing the infection analyzer.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6047
2022-10-06 02:46:22 +00:00
SWC Bot
62dd127e3c chore: Publish crates 2022-10-06 02:13:20 +00:00
Donny/강동윤
36d467e7d7
fix(es/minifier): Fix analysis of var declaration after usage (#6043)
**Description:**

`var_initialized` should be `true` even if the declaration of variable comes after its usage.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6039.
2022-10-06 02:09:13 +00:00
SWC Bot
ad58d5daf8 chore: Publish crates 2022-10-06 01:40:03 +00:00
OJ Kwon
fff4b9ce65
build(cargo): Dedup indexmap with known version (#6060) 2022-10-06 01:36:13 +00:00
SWC Bot
f955f34afc chore: Publish crates 2022-10-05 12:25:56 +00:00
Donny/강동윤
e3b55e4bcf
fix(es/minifier): Fix optimization of numeric keys (#6052)
**Description:**

We should not optimize if the key starts with `0`.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6051.
2022-10-05 12:22:28 +00:00
SWC Bot
cad80e39c8 chore: Publish crates 2022-10-05 11:48:18 +00:00
Donny/강동윤
c5fb774487
fix(es/minifier): Don't skip unresolved identifiers (#6050)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6049
2022-10-05 11:44:51 +00:00
SWC Bot
37286e369e chore: Publish crates 2022-10-04 15:22:12 +00:00
SWC Bot
5df3eb1f43 chore: Publish crates 2022-10-04 14:37:35 +00:00
SWC Bot
676831477c chore: Publish crates 2022-10-04 12:46:12 +00:00
SWC Bot
6749e6948e chore: Publish crates 2022-10-04 07:58:11 +00:00
Donny/강동윤
197c4e269d
fix(es/minifier): Don't evaluate String.fromCharCode for non-ascii values (#6033) 2022-10-04 16:46:59 +09:00
SWC Bot
7746bfb31b chore: Publish crates 2022-10-03 09:02:17 +00:00
Austaras
c4850997a2
feat(es/minifier): Inline vars initialized before the declaration (#6027) 2022-10-03 08:58:38 +00:00
SWC Bot
8e67fcc357 chore: Publish crates 2022-10-03 07:31:41 +00:00
Donny/강동윤
877936f626
feat(es/minifier): Clone trivial literals in sequential inliner (#6005)
**Description:**

As our minifier is two-pass by default, this is enough.

At the first pass, we inline all numeric literals using sequential inliner, and minifier can then inline constants correctly in the second pass.
2022-10-03 07:20:48 +00:00
SWC Bot
d620ce60ff chore: Publish crates 2022-10-02 15:36:08 +00:00
SWC Bot
b450e3829b chore: Publish crates 2022-10-02 11:05:09 +00:00
Donny/강동윤
2b627524ac
feat(es/minifier): Ignore return values of ignored IIFEs (#6020)
**Description:**

As we are not using the return value of the function, we can call `ignore_return_value` on the argument of the return statements of IIFE.
2022-10-02 20:01:56 +09:00
Donny/강동윤
1aae503913
test(es/minifier): Organize terser tests (#6015) 2022-10-02 07:00:10 +00:00
SWC Bot
55ea637450 chore: Publish crates 2022-10-01 09:27:16 +00:00
Austaras
61807abf6e
feat(es/minifier): Inline function calls in more cases (#6010) 2022-10-01 18:18:45 +09:00
SWC Bot
b6824ff254 chore: Publish crates 2022-10-01 03:36:56 +00:00
Austaras
31ffd5a01d
fix(es/renamer): Use a separate scope for the name of FnExpr (#6008) 2022-10-01 12:33:19 +09:00
SWC Bot
628b1a8455 chore: Publish crates 2022-09-30 09:47:09 +00:00
Donny/강동윤
286334c4d0
feat(es/minifier): Drop vars from sequential inliner (#5993)
**Description:**

This PR renames `CloningMultiReplacer` to `Finalizer` and makes it handle the removal of unused variables. Also, this PR improves the sequential inliner so we can drop variables within a single pass.
2022-09-30 09:43:31 +00:00
SWC Bot
97c2e3bf71 chore: Publish crates 2022-09-30 08:57:12 +00:00
Donny/강동윤
2ee3ad0066
fix(es/minifier): Don't inline into nested scope (#6002)
**Related issue:**

- https://github.com/vercel/next.js/discussions/30237#discussioncomment-3768734
2022-09-30 08:53:20 +00:00
Donny/강동윤
10fb645552
chore(ci): Merge CI scripts (#5999)
**Description:**

This PR merges CI scripts, and make integration tests use patched crates.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5540.
2022-09-30 16:57:15 +09:00
SWC Bot
2f626e95eb chore: Publish crates 2022-09-30 07:16:28 +00:00
OJ Kwon
af64217f19
build(cargo): Introduce workspace deps (#5997) 2022-09-30 13:43:32 +09:00
SWC Bot
447e2449d9 chore: Publish crates 2022-09-29 11:06:36 +00:00
Donny/강동윤
aeb7f300a8
feat(es/minifier): Invoke sequential inliner for inlined IIFEs (#5991)
**Description:**

Inlined IIFEs have the exact pattern sequential inliner wants, so it's good to invoke it.
2022-09-29 11:03:06 +00:00
SWC Bot
da7ced9de1 chore: Publish crates 2022-09-29 10:20:18 +00:00
Donny/강동윤
f8358fbe2b
fix(es/minifier): Remove wrong variable joiner pass (#5992)
**Description:**

We had two passes for joining variables. This PR removes one in the full optimizer, which is wrong.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5989.
2022-09-29 19:11:18 +09:00
Donny/강동윤
48b83fb69d chore: Publish crates 2022-09-29 15:50:48 +09:00
Donny/강동윤
af8236d689 fix(es/minifier): Remove print 2022-09-29 15:50:21 +09:00
SWC Bot
f86ff4fa7c chore: Publish crates 2022-09-29 05:19:48 +00:00
Austaras
1a11cfd46f
feat(es/minifier): Improve fn-local analysis for better inlining (#5955) 2022-09-29 14:16:28 +09:00
SWC Bot
18123fb7b0 chore: Publish crates 2022-09-29 02:19:57 +00:00
Donny/강동윤
c411e5d552
feat(es/minifier): Drop more variables while invoking IIFE (#5987) 2022-09-29 02:15:56 +00:00
Donny/강동윤
0cfc724018
test(es/minifier): Add tests for benchmark files (#5986) 2022-09-29 09:41:13 +09:00
SWC Bot
189f9b482f chore: Publish crates 2022-09-29 00:08:42 +00:00
Donny/강동윤
0067f719dd
fix(es/minifier): Don't panic on jsx or ts (#5984) 2022-09-29 00:05:13 +00:00
SWC Bot
c499e2054d chore: Publish crates 2022-09-28 22:57:51 +00:00
SWC Bot
57ef438d9b chore: Publish crates 2022-09-28 14:23:58 +00:00
Donny/강동윤
08f6e81d8e
feat(es/minifier): Ignore more return values (#5981) 2022-09-28 14:20:37 +00:00
SWC Bot
1c9870a744 chore: Publish crates 2022-09-28 13:44:08 +00:00
Donny/강동윤
bc2c0f4133
fix(es/codegen): Fix codegen of a negative number (#5980)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5912.
2022-09-28 13:40:07 +00:00
Donny/강동윤
8c4873f81e
test(es/minifier): Remove mangle-only snapshots (#5979)
**Description:**

We don't have to store snapshots of all fixtures.
2022-09-28 21:35:52 +09:00
SWC Bot
d75addbdec chore: Publish crates 2022-09-28 10:37:40 +00:00
SWC Bot
7c2d6a9f67 chore: Publish crates 2022-09-28 09:23:36 +00:00
Donny/강동윤
e37bb55101
perf(es/minifier): Optimize MultiReplacer (#5977)
**Description:**

This PR splits the `MultiReplacer` into two variants. The first one is the cloning version, and this is parallel. The other one is the non-cloning version, which is not parallel.
2022-09-28 09:19:30 +00:00
SWC Bot
c23c07fc50 chore: Publish crates 2022-09-28 08:16:52 +00:00
Donny/강동윤
0e69890764
feat(es/minifier): Evaluate more literals in comparison (#5976)
**Description:**

I'll fix the performance issue with a follow-up PR.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/4415.
2022-09-28 08:07:55 +00:00
SWC Bot
b5be765a87 chore: Publish crates 2022-09-28 05:39:30 +00:00
Austaras
aff4ea5f44
fix(es/minifier): Preserve exports in DCE (#5973) 2022-09-28 05:35:51 +00:00
SWC Bot
f655488cfa chore: Publish crates 2022-09-27 13:57:39 +00:00
SWC Bot
a5918422bf chore: Publish crates 2022-09-27 11:52:21 +00:00
SWC Bot
3eecf954b3 chore: Publish crates 2022-09-27 08:41:58 +00:00
Donny/강동윤
0fb2c1d5a5
fix(es/minifier): Fix analysis of nested function-like properties (#5963)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5950.
2022-09-27 08:38:14 +00:00