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
SWC Bot
cf474a3eac
chore: Publish crates
2022-09-27 07:54:26 +00:00
Donny/강동윤
dcd516d2bd
feat(es/minifier): Ignore more expressions in sequential inliner ( #5961 )
...
**Description:**
We can skip **member access** to `console` as it does not have any side effects.
2022-09-27 07:45:44 +00:00
Donny/강동윤
48cddc16f6
test(es/minifier): Categorize terser tests ( #5960 )
...
**Description:**
I'm going to focus on rules enabled by default. I updated some tests because our one was better, and postponed `unsafe` tests.
2022-09-27 15:18:57 +09:00
SWC Bot
1682095813
chore: Publish crates
2022-09-27 05:54:04 +00:00
Austaras
573418fc96
fix(es/resolver): Use a separate mark for the name of FnExpr
( #5959 )
2022-09-27 14:50:35 +09:00
SWC Bot
3d393dd709
chore: Publish crates
2022-09-27 03:22:48 +00:00
Donny/강동윤
33a15c8d82
fix(es/minifier): Fix analysis of parameters ( #5954 )
...
**Description:**
Although the author of the issue talked about `@react-pdf/renderer`, it's a bug related to `brotli`, not react pdf renderer.
After investigation, I found that the bug is caused by not marking parameters as initialized. So I fixed the analyzer.
**Related issue:**
- https://github.com/vercel/next.js/issues/40803 .
2022-09-27 12:19:36 +09:00
SWC Bot
132a9380df
chore: Publish crates
2022-09-26 15:12:03 +00:00
Donny/강동윤
9d1974248d
fix(es/minifier): Fix skipping logic of sequential inliner ( #5956 )
...
**Description:**
This PR implements `is_skippable_for_seq` fully.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5935 .
2022-09-26 15:05:52 +00:00
SWC Bot
e001226674
chore: Publish crates
2022-09-26 09:21:39 +00:00
SWC Bot
e1f421b6af
chore: Publish crates
2022-09-25 01:36:48 +00:00
SWC Bot
e5ba9636ac
chore: Publish crates
2022-09-24 03:36:47 +00:00
Donny/강동윤
3c3529cb84
build(rustc): Update rustc ( #5943 )
...
**Description:**
This PR updates rustc, and fix some performance bugs of `swc_common`.
2022-09-24 03:33:47 +00:00
SWC Bot
8a5ed1e0ba
chore: Publish crates
2022-09-23 07:50:26 +00:00
Donny/강동윤
5cddb4c734
feat(es/typescript): Support TS 4.9 ( #5938 )
...
**Description:**
This PR adds satisfaction expression to the AST and parser.
2022-09-23 16:41:56 +09:00
SWC Bot
ae14211f04
chore: Publish crates
2022-09-23 05:25:48 +00:00
Donny/강동윤
97647861bf
fix(es/minifier): Track aliasing via assignments ( #5940 )
2022-09-23 14:22:41 +09:00
Donny/강동윤
93964a82ea
test(es/minifier): Remove analysis snapshot ( #5939 )
...
**Description:**
This PR removes analysis snapshots as it disturbs code review process
2022-09-23 13:14:42 +09:00
SWC Bot
15d21651c9
chore: Publish crates
2022-09-22 14:28:07 +00:00
Donny/강동윤
7bcaaef4f7
feat(es/minifier): Mangle labels ( #5934 )
...
**Description:**
This PR adds code to mangle labels.
2022-09-22 23:24:05 +09:00
SWC Bot
8dbef496cf
chore: Publish crates
2022-09-22 13:58:09 +00:00
Donny/강동윤
e16827cc9d
feat(es/minifier): Drop cycles in nested functions ( #5933 )
2022-09-22 13:54:49 +00:00
SWC Bot
098a021a43
chore: Publish crates
2022-09-22 13:18:22 +00:00
Donny/강동윤
5314ac5d02
feat(es/minifier): Use char frequency data for property manglers ( #5932 )
2022-09-22 22:14:26 +09:00
SWC Bot
0879a0504a
chore: Publish crates
2022-09-22 10:25:54 +00:00
Donny/강동윤
e9c704182b
feat(es/minifier): Improve analysis of reassignments ( #5931 )
2022-09-22 10:22:18 +00:00
SWC Bot
60bcdf768a
chore: Publish crates
2022-09-22 09:22:14 +00:00
Donny/강동윤
f2224132c1
fix(es/minifier): Prepend vars when dropping vars in a for loop initializer ( #5930 )
...
**Description:**
The minifier appends initializer of for statements instead of prepending it.
**Related issue:**
- https://github.com/vercel/next.js/discussions/30237#discussioncomment-3704795
2022-09-22 09:18:41 +00:00
SWC Bot
5e82dd63af
chore: Publish crates
2022-09-22 06:19:31 +00:00
Donny/강동윤
ac7b066d9a
feat(es/minifier): Inline rest parameters of IIFE ( #5929 )
2022-09-22 06:16:29 +00:00
SWC Bot
f5d42aa2b6
chore: Publish crates
2022-09-22 03:56:27 +00:00
Donny/강동윤
565bf317f6
feat(es/minifier): Evaluate more expressions ( #5926 )
2022-09-22 03:53:14 +00:00
SWC Bot
4c3813dbcc
chore: Publish crates
2022-09-22 03:16:22 +00:00
SWC Bot
043c95307e
chore: Publish crates
2022-09-21 15:12:52 +00:00
Donny/강동윤
19ce2737b1
feat(es/minifier): Collapse let
without init ( #5909 )
...
**Description:**
This patch applies the variable collapsing logic for the variables declared with `var` to the variables declared with `let`. This requires some patch about the behavior of visitors about `BlockStmt`, so this patch includes relevant changes.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5696 .
2022-09-21 15:04:29 +00:00
Donny/강동윤
31711e76af
test(es/minifier): Add an execution test for a fixed issue ( #5925 )
...
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5914 .
2022-09-21 12:19:14 +00:00
SWC Bot
a9270a8475
chore: Publish crates
2022-09-21 11:36:41 +00:00
Donny/강동윤
e303f7e853
fix(es/minifier): Fix analysis of assignments ( #5924 )
...
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5910
2022-09-21 11:33:25 +00:00
Donny/강동윤
0b34bcb40e
test(es/minifier): Add a test for a wrong issue ( #5923 )
2022-09-21 19:52:52 +09:00
SWC Bot
8a9cc7dd2a
chore: Publish crates
2022-09-21 07:33:40 +00:00
Donny/강동윤
fe40d8312b
test(es): Accept arguments ( #5916 )
...
**Description:**
This PR adds a way to provide arguments to `exec_node_js`.
2022-09-21 16:23:10 +09:00
SWC Bot
be81c4737e
chore: Publish crates
2022-09-20 08:32:27 +00:00
Donny/강동윤
a9873e505d
perf(es/minifier): Optimize analyzer ( #5908 )
2022-09-20 08:21:39 +00:00
SWC Bot
1898d6686a
chore: Publish crates
2022-09-20 06:44:48 +00:00
Donny/강동윤
1df72430a5
perf(es/minifier): Invoke DCE only before the first compression ( #5907 )
...
**Description:**
Invoke DCE only before the first compression. I verified that this patch does not affect the compression rate of the real-world inputs greatly.
2022-09-20 15:41:26 +09:00
SWC Bot
cb2044234a
chore: Publish crates
2022-09-20 04:32:30 +00:00
Donny/강동윤
6bbd3f4c14
perf(es/minifier): Make more passes parallel ( #5906 )
...
**Description:**
We only unwrap parenthesis in precompress optimizer, so I refactored it. Also, as it's embarrassingly parallel, I parallelized it.
2022-09-20 04:29:08 +00:00
SWC Bot
5c2b1bb15d
chore: Publish crates
2022-09-20 03:51:28 +00:00
Donny/강동윤
1a182ef8d9
perf(es): Optimize memory layout of AST ( #5829 )
2022-09-20 12:47:21 +09:00
SWC Bot
8c112c371b
chore: Publish crates
2022-09-19 15:11:28 +00:00
Donny/강동윤
aacf7aaf80
feat(es/minifier): Drop function identifier in a single pass ( #5901 )
...
**Description:**
We only inline function declarations if `ref_count` is 1, so we don't need to preserve the name of the function.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5682 .
2022-09-19 15:07:56 +00:00
SWC Bot
a18625c0d0
chore: Publish crates
2022-09-19 12:25:00 +00:00
Austaras
83c7887600
fix(es/minifier): Remove more pure calls ( #5900 )
2022-09-19 12:21:15 +00:00
Donny/강동윤
0bbcfe15ee
test(es/minifier): Add a test for a fixed issue ( #5897 )
2022-09-19 17:25:49 +09:00
SWC Bot
b93d740396
chore: Publish crates
2022-09-19 07:49:46 +00:00
Donny/강동윤
4e656af1ec
feat(es/minifier): Drop variable from the sequential inliner ( #5896 )
...
**Description:**
We now drop variable declarations if we are going to eliminate the only usage.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5693 .
2022-09-19 07:40:04 +00:00
IWANABETHATGUY
7d6d04b421
fix(es/codegen): Drop the last comma in an array literal ( #5877 )
...
**Description:**
Drop the last comma in an array literal.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5692 .
2022-09-16 15:48:28 +09:00
Donny/강동윤
f0ca487848
chore: Publish crates
2022-09-16 15:46:25 +09:00
SWC Bot
52c17f3056
chore: Publish crates
2022-09-15 14:49:03 +00:00
Donny/강동윤
c3fa96b21b
fix(es/minifier): Fix unicode handling ( #5875 )
2022-09-15 14:45:33 +00:00
SWC Bot
69bf533571
chore: Publish crates
2022-09-15 07:03:50 +00:00
magic-akari
90d311c042
fix(es/minifier): Fix handling of .toFixed
call without an argument ( #5868 )
2022-09-15 16:00:36 +09:00
SWC Bot
1d633e8ba7
chore: Publish crates
2022-09-15 06:08:07 +00:00
Donny/강동윤
991a34e0c2
fix(es/minifier): Remove fake_block
while calculating next scope ( #5869 )
...
**Description:**
We now remove `fake_block` mark from `with_ctx`.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5865
2022-09-15 06:04:47 +00:00
SWC Bot
ec8bb432b9
chore: Publish crates
2022-09-15 05:23:46 +00:00
Alexander Akait
7f62fa6227
perf(html): Reduce memory usage ( #5867 )
2022-09-15 04:17:05 +00:00
SWC Bot
73ee9d6784
chore: Publish crates
2022-09-15 03:06:15 +00:00
SWC Bot
55a4e18991
chore: Publish crates
2022-09-14 13:00:55 +00:00
Austaras
63fb0c4ad3
feat(es/minifier): Move assign with seq init into seq ( #5847 )
2022-09-14 12:57:18 +00:00
SWC Bot
d35792f424
chore: Publish crates
2022-09-14 07:56:20 +00:00
SWC Bot
8432c0a1ad
chore: Publish crates
2022-09-14 07:19:24 +00:00
SWC Bot
0c24841274
chore: Publish crates
2022-09-14 06:54:54 +00:00
Donny/강동윤
32f18068ad
fix(es/minifier): Preserve more side effects ( #5853 )
...
**Description:**
We now preserve more side effects.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5680 .
2022-09-14 06:51:56 +00:00
SWC Bot
0a56a2d5ab
chore: Publish crates
2022-09-14 06:10:39 +00:00
magic-akari
2b2464271a
fix(es/codegen): Remove redundant ;
after export default decl ( #5851 )
2022-09-14 06:07:15 +00:00
SWC Bot
ad4b0d200c
chore: Publish crates
2022-09-14 05:05:55 +00:00
Donny/강동윤
a5f7b6946f
fix(es/minifier): Don't replace parameters of IIFE if it's recursive ( #5852 )
...
**Description:**
While investigating, I found that problem is not the analysis of recursive functions. Instead, it was a problem with the IIFE evaluator, which replaces parameters even if it's recursive.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5846
2022-09-14 05:02:14 +00:00
Donny/강동윤
0284c1bf40
test(es/transforms): Enable tests for fixed issues ( #5845 )
2022-09-13 10:32:00 +00:00
SWC Bot
76d22dfeb1
chore: Publish crates
2022-09-13 07:46:53 +00:00
SWC Bot
cae41739d5
chore: Publish crates
2022-09-13 06:48:34 +00:00
Donny/강동윤
fe3072b12a
perf(es/minifier): Reduce type sizes ( #5843 )
2022-09-13 06:45:33 +00:00
SWC Bot
c624c3de03
chore: Publish crates
2022-09-13 06:06:00 +00:00
SWC Bot
d16fb9a8cf
chore: Publish crates
2022-09-13 05:04:36 +00:00
Alexander Akait
ccd618ce54
perf(html/minifier): Improve performance ( #5838 )
2022-09-13 14:01:41 +09:00
SWC Bot
d8c1e4a62e
chore: Publish crates
2022-09-13 03:56:39 +00:00
Austaras
8567a38c4a
feat(es/minifier): Extend inlining of identifiers to multi-usage ( #5832 )
2022-09-13 03:52:47 +00:00
SWC Bot
b2c0fbd7ba
chore: Publish crates
2022-09-13 02:19:15 +00:00
SWC Bot
2df19176fb
chore: Publish crates
2022-09-12 05:16:53 +00:00
SWC Bot
9f28c246dc
chore: Publish crates
2022-09-12 04:34:08 +00:00
SWC Bot
2b1e73737f
chore: Publish crates
2022-09-11 06:21:56 +00:00
Donny/강동윤
cfe575e35a
perf(es/minifier): Make expression simplifier stateless and parallel ( #5819 )
2022-09-11 06:18:44 +00:00
SWC Bot
5fe032c01a
chore: Publish crates
2022-09-11 03:00:57 +00:00
SWC Bot
4084fc1aeb
chore: Publish crates
2022-09-10 17:14:48 +00:00
SWC Bot
961a9047c0
chore: Publish crates
2022-09-10 15:07:06 +00:00
SWC Bot
417b1f2a92
chore: Publish crates
2022-09-10 07:23:37 +00:00
Donny/강동윤
7391cc99b1
perf(css/minifier): Use JsWord
instead of &str
( #5806 )
2022-09-10 07:20:51 +00:00
SWC Bot
4c078b0ac3
chore: Publish crates
2022-09-10 06:04:28 +00:00
SWC Bot
c8bb70f97e
chore: Publish crates
2022-09-10 05:48:09 +00:00
SWC Bot
575940e770
chore: Publish crates
2022-09-09 08:09:53 +00:00
SWC Bot
54b108dc51
chore: Publish crates
2022-09-09 05:55:06 +00:00
Donny/강동윤
21fbcb9621
refactor(es/renamer): Rename PARALLEL
to MANGLE
( #5790 )
...
**Description:**
Actually, performance issue comes from collision, not parallelism. So I renamed the associated constant.
2022-09-09 05:51:45 +00:00
SWC Bot
701fa74631
chore: Publish crates
2022-09-09 05:05:59 +00:00
Donny/강동윤
f11461d3f5
test(es): Enable tests for fixed issues ( #5784 )
2022-09-08 15:05:39 +00:00
SWC Bot
9b723cc6f5
chore: Publish crates
2022-09-08 08:11:24 +00:00
Austaras
ee26337a25
feat(es/minifier): Inline lazily initialized variables ( #5737 )
...
Safety:
For a function-local variable, an expression with side-effects would be a call, including an indirect one with a member expression.
- If the call is function-local, it will be analyzed by the analyzer and inliner will not work.
- If the call is not a function-local one, it cannot modify the local variable.
2022-09-08 08:07:43 +00:00
SWC Bot
32cd51dc29
chore: Publish crates
2022-09-08 05:26:49 +00:00