Commit Graph

520 Commits

Author SHA1 Message Date
David Sherret
282232c995
fix(es/typescript): Remove rogue println (#3244) 2022-01-13 13:41:34 +09:00
Donny
c13bba8401 chore: Publish crates 2022-01-12 18:39:56 +09:00
OJ Kwon
432d5d3fb7
feat(plugin/macro): Add safe API for plugins based on a proc-macro (#3240) 2022-01-12 09:32:52 +00:00
Donny
db952ecf01 chore: Publish crates 2022-01-12 16:58:23 +09:00
Donny/강동윤
74fd353053
fix(es/minifier): Fix bugs (#3238)
swc_ecma_minifier:
 - `collapse_vars`: Respect `mutated`. (Closes #2679)
 - Add a test for https://github.com/vercel/next.js/issues/31084.
2022-01-12 16:57:54 +09:00
Donny
dc99778808 chore: Publish crates 2022-01-12 08:28:25 +09:00
Donny/강동윤
12dd0a6c1f
fix(es/minifier): Fix optimization of assignment expressions (#3231)
swc_ecma_minifier:
 - Check if the operator is `=` before optimizing assignment with a binary expression.
2022-01-12 08:26:56 +09:00
Donny
a2445e743b chore: Publish crates 2022-01-12 04:46:21 +09:00
David Sherret
105cbc2017
fix(es/parser): Fix span of ComputedPropName (#3234) 2022-01-12 04:45:52 +09:00
Donny
acfce35d77 chore: Publish crates 2022-01-11 19:37:43 +09:00
Donny/강동윤
78720c4c91
fix(es/minifier): Fix handling of inlined call to a hoisted function (#3223) 2022-01-11 19:37:06 +09:00
Donny
c5f2feaf58 chore: Publish crates 2022-01-11 19:35:28 +09:00
magic-akari
2e5150d2b7
fix(es/compat): Transform &&= operator (#3225) 2022-01-11 10:33:57 +00:00
OJ Kwon
a2f2b5ac89
feat(plugin): Don't serialize/deserialize needlessly (#3227)
swc_common:
 - Add `Serialized`.

swc_plugin_runner:
 - Accept `Serialized` instead of `Program`.
 - Pass `Serialized` from previous plugin instead of deserializing it.
2022-01-11 10:11:04 +00:00
Donny
540bc09888 chore: Publish v1.2.128 2022-01-11 16:53:04 +09:00
Donny
9a62ef21b7 chore: Publish crates 2022-01-11 16:48:26 +09:00
RiESAEX
b649d23bac
feat(es/compat): Implement object super (#3127)
swc_ecma_transforms_compat:
 - Implement object super. (Closes #2684)
2022-01-11 07:45:01 +00:00
Donny
7fbe8f644e chore: Publish crates 2022-01-11 16:15:11 +09:00
Guillaume Malette
9565149539
fix(es/modules): Fix lazy import handling (#3211)
swc_ecma_transforms_module:
 - `common_js`: Correctly track lazy imports. (Closes #3081)
2022-01-11 07:13:12 +00:00
Donny
d51904b93e chore: Publish crates 2022-01-11 14:42:17 +09:00
Donny/강동윤
1edbf1a37a
feat(es/ast): Update is-macro (#3226)
swc_ecma_ast:
 - Add `as_*` for ast enums.
2022-01-11 14:41:34 +09:00
Donny
54a0f51876 chore: Publish crates 2022-01-10 23:48:35 +09:00
Sosuke Suzuki
3fb76f64c4
feat(es/parser): Accept strings for import/exports (#3190) 2022-01-10 23:48:04 +09:00
Donny
852ec783f3 chore: Publish crates 2022-01-10 22:57:17 +09:00
Austaras
f58b50bea7
refactor(es/ast): Change types of member-like expressions (#3178)
swc_ecma_ast:
 - Split `MemberExpr` into `MemberExpr` and `SuperPropExpr`.
 - Use `Box<Expr>` for `MemberExpr.obj`.
 - Use ad-hoc type for `MemberExpr.prop`.
 - Use ad-hoc type for `SuperPropExpr.prop`.
 - Use `Callee` instead of  `ExprOrSpread` for `CallExpr`.
 - Simplify types for meta property expressions.
2022-01-10 13:54:42 +00:00
OJ Kwon
7e7421ea52
feat(plugin): Perform actual transforms in plugins (#3220) 2022-01-10 21:34:16 +09:00
Donny/강동윤
057fca4196
chore(es/minifier): Add scripts to extract tests automatically (#3212) 2022-01-10 16:59:21 +09:00
Donny
db71f7a42d chore: Publish crates 2022-01-10 15:16:55 +09:00
Donny
0d4b671052 chore: Publish crates 2022-01-10 15:05:26 +09:00
Donny
5cd352e5dd chore: Publish crates 2022-01-09 15:42:56 +09:00
Austaras
cdb46cfb91
fix(es/hygiene): Visit computed properties in usage analyzer (#3217) 2022-01-09 15:42:19 +09:00
OJ Kwon
c9ded9b720
feat(plugin): Allow multi-value for the plugin signature (#3216) 2022-01-09 15:02:56 +09:00
Donny
9e0f6958a3 chore: Publish crates 2022-01-09 01:05:51 +09:00
magic-akari
5bee4e4902
refactor(es/compat): Preserve length of functions in async_generator (#3202) 2022-01-08 15:19:41 +00:00
Donny
1ca49a56b3 chore: Publish crates 2022-01-08 23:29:33 +09:00
Donny/강동윤
42f726873e
feat(es/transforms): Add Assumptions (#3215)
swc_ecma_transforms_base:
 - Add `Assumptions`. (Closes #2057)

swc_ecma_transforms:
 - Reexport `Assumptions`.

swc:
 - Add `jsc.assumptions`.
2022-01-08 23:26:09 +09:00
Donny/강동윤
70c2f3b3a5
security(repo): Fix crev integration (#3210) 2022-01-07 20:03:03 +09:00
Donny
56d1f03556 chore: Publish crates 2022-01-07 15:18:26 +09:00
OJ Kwon
92de2c7884
feat(plugin): Pass serialized ast to a wasm file (#3199)
swc_common:
 - Use correct cargo feature for plugin apis.

swc_plugin:
 - Add hidden functions required for memory operations from host.

swc_plugin_runner:
 - Pass serialized AST to a wasm file.
2022-01-07 15:13:46 +09:00
Donny
fa212be6ae chore: Publish crates 2022-01-07 14:49:46 +09:00
Donny/강동윤
54353a6fb5
fix(es/helpers): Don't transpile _typeof helper (#3208)
swc_ecma_transforms_base:
 - Add a directive to `_typeof` helper.

swc_ecma_transforms_compat:
 - Don't transpile `_typeof` helper. (Closes #3201)

swc_ecma_minifier:
 - Drop swc/babel directives.
2022-01-07 14:48:08 +09:00
Donny
80bf7f25ff chore: Publish crates 2022-01-06 21:25:35 +09:00
Donny/강동윤
0105939426
fix(es/minifier): Drop unreachable statements eagerly (#3204)
swc_ecma_minifier:
 - `pure`: Drop unreachable statements. (Closes #3173)
2022-01-06 21:25:06 +09:00
Donny
7c59765b2f chore: Publish crates 2022-01-06 20:51:06 +09:00
Donny/강동윤
69b5f799f3
fix(es/minifier): Disable inlining of expressions from collapse_vars (#3200)
swc_ecma_minifier:
 - `collapse_vars`: Disable for member expressions. (Closes #2614)
 - `sequences`: Respect `inline_prevented`.
2022-01-06 20:49:10 +09:00
Donny
6892f27ad7 chore: Publish crates 2022-01-06 20:19:36 +09:00
Sosuke Suzuki
432f877790
feat(es/ast): Use ModuleExportName for ExportNamespaceSpecifier (#3195) 2022-01-06 20:19:11 +09:00
Donny
3458e9f1d3 chore(ci): Fix publish scripts 2022-01-05 14:45:02 +09:00
Donny
28ff0592a4 refactor(plugin/runner): Reuse wasmer 2022-01-05 14:01:57 +09:00
OJ Kwon
c3895ca9aa
refactor(plugin/runner): Replace wasm runtime (#3196) 2022-01-05 04:44:41 +00:00
Donny
27a5284539 chore: Publish v1.2.127 2022-01-05 12:01:49 +09:00
Donny
e679c04873 chore: Publish crates 2022-01-05 11:59:44 +09:00
Donny/강동윤
913c82a2ab
fix(es/lints): Fix incorrect duplicate binding error (#3194)
swc_ecma_transforms_base:
 - `resolver`: Fix resolving of `const` and `let`.

swc_ecma_lints:
 - `duplicate_bindings`: Don't mark ambient function declararions as a binding. (Closes #3193)
2022-01-05 11:59:10 +09:00
Donny
e2b5a31882 chore: Publish crates 2022-01-05 08:48:03 +09:00
David Sherret
517662c9c2
fix(es/visit): Make noop_visit_type visit typescript nodes that executes at runtime (#3192) 2022-01-05 08:47:25 +09:00
Donny
1b8b062621 chore: Publish crates 2022-01-05 05:13:24 +09:00
Donny/강동윤
1c1c9f0eae
fix(es/minifier): Fix bugs (#2955)
swc_ecma_minifier:
 - Improve the script for extracting inputs from next.js app.
 - Ensure the name is removed on inlining.
 - Respect `inline_prevented`.
2022-01-05 05:12:52 +09:00
Donny
781aa79b82 chore: Publish crates 2022-01-04 19:29:50 +09:00
OJ Kwon
32d3342283
refactor(plugin): Remove codes related to the plugin system based on abi_stable (#3188) 2022-01-04 10:26:17 +00:00
Donny/강동윤
c758997180
refactor(dbg-swc): Rename esdiff to dbg-swc (#3189) 2022-01-04 18:39:43 +09:00
Donny
8b633a93ff chore: Publish crates 2022-01-04 17:41:12 +09:00
Donny/강동윤
51c792eb30
feat(esdiff): Create a command to determine problematic file (#3181)
swc_ecma_diff:
 - Fix diff logic of `Vec`.

esdiff:
 - `diff-min`: Normalize `Str.has_escape`.
 - `diff-min`: Normalize empty var declaration.
 - Add `redue-min`.
2022-01-04 17:40:40 +09:00
Donny
9cc72fe8e9 chore: Publish crates 2022-01-04 16:16:35 +09:00
OJ Kwon
b61c49fe39
refactor(plugin/runner): Avoid redundant filesystem reads (#3186) 2022-01-04 07:10:39 +00:00
Donny
a66eec2d16 chore: Publish crates 2022-01-04 15:16:19 +09:00
David Sherret
e5e6e84300
feat(es/dep-graph): Improve DependencyDescriptor to combine import_assertions with dynamic_import_assertions (#3183) 2022-01-04 05:54:45 +00:00
Donny
ab10f77af9 chore: Publish crates 2022-01-04 14:19:00 +09:00
Donny
d77bb8aff0 chore: Publish crates 2022-01-04 14:18:19 +09:00
OJ Kwon
fc4c6708f2
refactor(plugin): Add a loader for wasm-based plugin system (#3179) 2022-01-03 19:03:01 +00:00
Donny
aa1a243f56 chore: Publish crates 2022-01-03 22:00:34 +09:00
Donny
fece2aae55 chore: Publish v1.2.126 2022-01-03 20:36:16 +09:00
Donny
1ef435e1ce chore: Publish crates 2022-01-03 20:35:10 +09:00
YuChao Liang
db51ce4461
fix(es/minifier): Fix comparison of objects, numbers and strings (#3172) 2022-01-03 11:31:49 +00:00
Donny
1e5bc88cd3 chore: Publish crates 2022-01-03 17:45:09 +09:00
Sosuke Suzuki
07c0489575
feat(es/ast): Add ModuleExportName (#3048)
swc_ecma_ast:
 - Allow using string as import/export specifiers.
2022-01-03 08:44:11 +00:00
Donny
08399d2e95 chore: Publish v1.2.125 2022-01-03 05:57:48 +09:00
Donny
cb13512e84 chore: Publish crates 2022-01-03 05:55:39 +09:00
magic-akari
52961804d1
feat(es/codegen): Make the output for empty objects and empty statements pretty (#3171) 2022-01-03 05:54:58 +09:00
Donny
e14aa9dab4 chore: Publish crates 2022-01-03 00:08:39 +09:00
Donny/강동윤
790c50631b
fix(es/minifier): Fix for modules (#3170)
swc_ecma_minifier:
 - Handle exported declarations correctly.

swc:
 - Change default of `compress.toplevel` and `mangle.top_level` to true for modules. (Closes #3169)
2022-01-03 00:07:42 +09:00
Donny
ad3dca82b9 chore: Publish crates 2022-01-03 00:06:38 +09:00
magic-akari
366dc0eec3
fix(es/typescript): Declare the exported variables in a namespace (#3162) 2022-01-02 15:06:03 +00:00
Donny/강동윤
1aa55e616a
feat(es/diff): Add a internal CLI program for debugging minifier (#3168) 2022-01-02 19:55:12 +09:00
Donny
a883e604f2 chore: Publish crates 2022-01-02 16:24:06 +09:00
Donny/강동윤
bf751cb690
feat(es/ast): Add rkyv support (#3166)
ast_node:
 - `#[ast_node]`: Add support for `rkyv`.

swc_common:
 - Add a feature flag for `rkyv`.

swc_ecma_ast:
 - Add a feature flag for `rkyv`.
2022-01-02 16:23:37 +09:00
Donny
b1a72315db chore: Publish crates 2022-01-02 12:50:50 +09:00
Donny/강동윤
7a83c0cb57
perf(es/ast/serde): Make deserialization faster (#3160)
ast_node:
 - Improve deserialization of enums.

swc_css_ast:
 - Fix a compilation issue.

swc_ecma_ast:
 - Update `serde`.

swc_ecma_parser:
 - Fix a compilation issue.

swc_estree_ast:
 - Fix serialization.
2022-01-02 12:49:09 +09:00
Donny
29f05b55fc chore: Publish crates 2022-01-02 05:02:48 +09:00
magic-akari
e02307d4c8
fix(es/typescript): Fix handling of references in a TypeScript enum (#3163) 2022-01-01 19:51:39 +00:00
Donny
b52240d8e5 chore: Publish crates 2021-12-31 04:02:07 +09:00
magic-akari
e11210309c
fix(es/compat): Fix new.target in class properties (#3156) 2021-12-31 04:01:28 +09:00
Donny
097e1e310c chore: Publish crates 2021-12-30 19:48:39 +09:00
magic-akari
f78d005a95
fix(es/compat): Fix length of async functions (#3136)
swc_ecma_transforms_compat:
 - `async_to_generator`: Preserve function length. (Closes #3135)
2021-12-30 10:26:26 +00:00
Donny/강동윤
194b3e9b67
refactor(*): Use 2021 edition (#3151) 2021-12-30 18:59:18 +09:00
Jim Berlage
a4e8e53c19
test(es/parser): Add tests about null escape (#3147) 2021-12-30 08:54:10 +00:00
Donny
b9c3fba904 chore: Publish crates 2021-12-30 17:22:27 +09:00
magic-akari
35b64613bb
fix(es/compat): Visit all private class methods (#3150) 2021-12-30 17:21:54 +09:00
Donny
0cf8265f02 chore: Publish crates 2021-12-29 21:04:30 +09:00
Austaras
356082ad84
fix(es/utils): Fix handling of new.target (#3145) 2021-12-29 11:38:32 +00:00
Donny/강동윤
8a1016fb40
refactor(bundler): Improve test suite (#3144) 2021-12-29 19:19:44 +09:00