Commit Graph

100 Commits

Author SHA1 Message Date
Donny/강동윤
a65be14a00
fix(es/minifier): Do not reuse identifier used for import bindings (#7639)
**Related issue:**

 - Closes #7634.
2023-07-18 04:11:00 +00:00
Donny/강동윤
b34f1adbcc
build(cargo): Update rustc to 2023-07-03 (#7623) 2023-07-05 03:50:43 +00:00
廖应龙
ac02b84918
feat(es/optimization): Support default imports for const modules (#7604) 2023-06-30 02:12:45 +00:00
underfin
e2725451aa
fix(es/fixer): Don't change default decls to default expr exports (#7585)
**Related issue:**

 - Closes #7584.
2023-06-29 07:50:25 +00:00
Donny/강동윤
041b491466
feat(es/parser): Implement explicit resource management (#7322)
**Description:**

 - Add `UsingDecl`.
 - Add `UsingDecl` to `Decl`.
 - Rename `VarDeclOrPat` to `ForHead`.
 - Add `UsingDecl` to `ForHead`.
 - Implement parser for using declarations.

**Related issue:**

 - #7316.
2023-05-10 04:16:44 +00:00
Donny/강동윤
4c06a56e52
fix(es/minifier): Use UTF16 length for str.length (#7275)
**Related issue:**

 - Closes #7274.
2023-04-15 14:50:52 +00:00
Donny/강동윤
0259a7465f
build(cargo): Update rustc to nightly-2023-03-20 (#7170)
**Description:**

This PR also updates `rkyv` to `=0.7.40`.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6807.
2023-03-30 08:06:02 +00:00
Donny/강동윤
12546c853a
build(cargo): Revert rustc upgrade (#7162)
**Description:**

The `rkyv` bug is not fixed.
2023-03-29 17:48:45 +09:00
Donny/강동윤
e445502072
build(cargo): Update rustc to nightly-2023-03-28 (#7154)
**Description:**

This PR also updates `rkyv` to `=0.7.40`.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6807.
2023-03-29 06:24:19 +00:00
Donny/강동윤
963c460613
refactor: Fix lints using clippy from nightly-2023-03-13 (#6920) 2023-03-14 04:56:21 +00:00
magic-akari
0314869464
fix(es/transforms): Handle object shorthand in const_modules (#7022) 2023-03-09 14:18:46 +00:00
Donny/강동윤
a9fe1d2d22
perf(es/ast): Shrink size of Expr (#7041)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7019.
2023-03-09 13:34:11 +00:00
HeYunfei
8bfef35c1b
perf(es/utils): Introduce NodeIgnoringSpan (#7030) 2023-03-08 06:49:41 +00:00
magic-akari
5c7c8e0736
fix(es/transforms): Handle member object in missing else branch (#7027)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7025.
2023-03-07 04:10:06 +00:00
magic-akari
3cb03d5299
feat(es/transforms): Support namespace imports from const_modules (#7013) 2023-03-06 03:33:52 +00:00
Daiki Nishikawa
67d0a89ae6
feat(es/transforms): Add an option to drop unused imports (#6962) 2023-03-05 05:21:58 +00:00
Donny/강동윤
37533a23fd
feat(es/parser): Support auto accessors (#6981) 2023-02-28 06:39:25 +00:00
magic-akari
a27ffd2242
feat(es/minifier): Drop unused import bindings (#6967) 2023-02-21 06:22:25 +00:00
Donny/강동윤
432dca647b
fix(es/minifier): Respect span hygiene from expr simplifier (#6899)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6896.
2023-02-07 05:14:19 +00:00
Donny/강동윤
06770cff04
fix(es/minifier): Make AST compressor respect toplevel (#6775)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/4386.
2023-01-11 07:04:20 +00:00
HeYunfei
a1ccc8afdf
feat(es/minifier): Make name mangler understand block scoping (#6670)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5090.
 - Closes https://github.com/swc-project/swc/issues/5766.
2023-01-06 03:14:10 +00:00
HeYunfei
b5d31cc2da
fix(es/utils): Fix detection of hoisting (#6738) 2023-01-03 03:12:01 +00:00
HeYunfei
dabea71c44
fix(es/minifier): Preserve unused imported specifiers (#6458) 2022-11-17 00:52:19 +00:00
Donny/강동윤
743a1aab4f
feat(es/minfiier): Compute more with sequential inliner (#6169) 2022-10-27 00:50:52 +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
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/강동윤
27896f4751
perf(es/transforms): Exclude old inlining pass (#6203)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6194.
2022-10-19 04:53:46 +00:00
Donny/강동윤
2e153e5555
fix(es/minifier): Don't create a numeric literal with NaN value (#6166) 2022-10-15 12:52:34 +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
Donny/강동윤
e88c1c04e1
perf(es/minifier): Remove double-visit of DCE (#6069)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6066.
2022-10-06 16:08:03 +00:00
Austaras
aff4ea5f44
fix(es/minifier): Preserve exports in DCE (#5973) 2022-09-28 05:35:51 +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
Donny/강동윤
e16827cc9d
feat(es/minifier): Drop cycles in nested functions (#5933) 2022-09-22 13:54:49 +00:00
Donny/강동윤
1a182ef8d9
perf(es): Optimize memory layout of AST (#5829) 2022-09-20 12:47:21 +09:00
Donny/강동윤
fe3072b12a
perf(es/minifier): Reduce type sizes (#5843) 2022-09-13 06:45:33 +00:00
Donny/강동윤
b6cf9750ec
perf(es/minifier): Make the expression simplifier more parallel (#5841)
**Description:**

It was not parallel enough.
2022-09-13 06:02:44 +00:00
Donny/강동윤
cfe575e35a
perf(es/minifier): Make expression simplifier stateless and parallel (#5819) 2022-09-11 06:18:44 +00:00
Donny/강동윤
704ea3d48d
perf(es/minifier): Optimize usage of IndexSet (#5814) 2022-09-10 17:11:41 +00:00
Donny/강동윤
c2d10503db
perf(es/minifier): Make passes more parallel (#5773) 2022-09-07 14:28:36 +09:00
Donny/강동윤
8789184d44
perf(es/minifier): Cache the list of bindings for DCE (#5750) 2022-09-05 07:05:44 +00:00
Donny/강동윤
08b2aea2b0
perf(es/minifier): Use efficient logic for entry tracking in DCE (#5749) 2022-09-05 04:35:40 +00:00
Donny/강동윤
2baa640e98
perf(es/minifier): Make passes more parallel (#5741) 2022-09-04 15:34:46 +00:00
Donny/강동윤
6ba6da62d7
perf(es/minifier): Make dead branch remover parallel (#5734) 2022-09-04 07:33:26 +00:00
Donny/강동윤
25c96b4b7a
perf(es/minifier): Use faster hash algorithm for DCE (#5725) 2022-09-03 14:33:09 +09:00
Donny/강동윤
5e151c8a8e
feat(es/minifier): Support cycles in DCE (#5715) 2022-09-03 04:41:54 +00:00
Donny/강동윤
8827c38faf
feat(es/minifier): Make DCE single-pass (#5699) 2022-09-01 16:30:21 +00:00
Donny/강동윤
3eb1f4b2b1
chore(ci): Fix lints (#5462) 2022-08-12 13:13:35 +00:00
Austaras
e35990390b
fix(es/fixer): Remove needless parens for nested ?? (#5432) 2022-08-10 08:26:33 +00:00
Austaras
2e9c9bea1a
fix(es/minifier): Fix size calculation of numbers (#5232) 2022-07-17 18:07:35 +09:00
Donny/강동윤
36d960c7e9
perf(es/hygiene): Make hygiene faster (#4952) 2022-06-15 14:36:57 +00:00