Commit Graph

322 Commits

Author SHA1 Message Date
OJ Kwon
8f41d7a10e
feat(es/compat): Add tracing support for es2020 transforms (#3798) 2022-03-01 10:22:53 +00:00
SWC Bot
761fb9c244 chore: Publish crates 2022-03-01 07:12:48 +00:00
Austaras
5b6beca1af
feat(es/compat): Use sequence expressions instead of iife in classes pass (#3773) 2022-03-01 16:10:57 +09:00
SWC Bot
1ef8f3749b chore: Publish crates 2022-03-01 06:30:55 +00:00
OJ Kwon
4d7048291f
feat(es/compat): Add tracing support for es2022 transforms (#3785) 2022-03-01 06:24:13 +00:00
SWC Bot
34836ff052 chore: Publish crates 2022-02-27 16:19:14 +00:00
Austaras
11bf29f44b
fix(es/compat): Initialize class fields as a last step (#3767) 2022-02-27 16:17:14 +00:00
SWC Bot
a41aa33b05 chore: Publish crates 2022-02-27 09:40:33 +00:00
magic-akari
8ed4d2fcac
feat(es/compat): Optimize handling of literals in computed property names (#3756) 2022-02-27 18:38:26 +09:00
SWC Bot
4fe874dd77 chore: Publish crates 2022-02-26 15:11:21 +00:00
Austaras
14155eb0e7
feat(es/compat): Implement loose mode for class_properties (#3722) 2022-02-27 00:09:02 +09:00
OJ Kwon
5c29f15640
feat(plugin): Support tracing plugin execution (#3744) 2022-02-25 20:28:17 +00:00
SWC Bot
94bc8a634b chore: Publish crates 2022-02-25 14:03:50 +00:00
Donny/강동윤
b4830b61dc
feat(macros): Add #[swc_trace] (#3738) 2022-02-25 14:01:33 +00:00
Donny/강동윤
fd223793e8
refactor(es/transforms): Use recommended ast apis (#3735) 2022-02-25 06:50:19 +00:00
SWC Bot
8f1aef47d4 chore: Publish crates 2022-02-25 06:10:45 +00:00
Austaras
05de029cfa
fix(es/compat): Fix handling of private getters and setters (#3695) 2022-02-25 06:08:35 +00:00
SWC Bot
25b54ae7a8 chore: Publish crates 2022-02-25 04:08:59 +00:00
OJ Kwon
a454996314
feat(node-swc): Add experimental trace support in @swc/core (#3731) 2022-02-25 04:06:45 +00:00
Bryan Lee
72c9e6ca2b
fix(es/helpers): Cast the result of the instanceof helper to boolean (#3728)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-02-25 03:22:40 +00:00
SWC Bot
78b997bd90 chore: Publish crates 2022-02-23 07:05:42 +00:00
Austaras
b6434e52e7
fix(es/compat): Throw an error if a private property is initialized multiple times (#3665) 2022-02-23 07:03:13 +00:00
Donny/강동윤
e35d73adf4
chore(clippy): Improve config (#3691) 2022-02-23 06:07:42 +00:00
Donny/강동윤
135acf3b42
refactor(es): Improve ast apis (#3690) 2022-02-23 05:37:07 +00:00
SWC Bot
e4c674b9cb chore: Publish crates 2022-02-21 13:10:43 +00:00
Donny/강동윤
68a155165b
fix(es/ast): Fix definition of Expr::TsInstantiation (#3657) 2022-02-21 13:03:11 +00:00
SWC Bot
e08a2c2c17 chore: Publish crates 2022-02-21 07:15:09 +00:00
Austaras
2cb66ae075
refactor(es/ast): Change definition of optional chaining expressions (#3645) 2022-02-21 07:12:09 +00:00
SWC Bot
264f1cf8d6 chore: Publish crates 2022-02-20 15:53:48 +00:00
Pig Fang
61e711c912
feat(es/ast): Support TypeScript Instantiation Expression (#3642) 2022-02-20 15:51:31 +00:00
SWC Bot
de6f75dc95 chore: Publish crates 2022-02-18 07:32:39 +00:00
Austaras
5c03551341
feat(es/compat): Check for duplicate private names and undefined private names (#3613) 2022-02-18 07:23:18 +00:00
SWC Bot
c6757dafec chore: Publish crates 2022-02-16 15:32:46 +00:00
Austaras
31917417e9
fix(es/compat): Handle super and new.target in class properties (#3594) 2022-02-16 15:29:20 +00:00
Austaras
f67796a962
fix(es/utils): Keep arguments to super call (#3570) 2022-02-15 15:42:40 +09:00
SWC Bot
7351ec2477 chore: Publish crates 2022-02-15 13:22:16 +09:00
Austaras
0f7a99787f
feat(es/compat): Add loose mode for classes (#3474) 2022-02-15 04:02:08 +00:00
SWC Bot
d7c5ff48f4 chore: Publish crates 2022-02-14 18:16:06 +09:00
Austaras
0b162102fa fix(es/compat): Fix handling of constructor in classes (#3505)
swc_ecma_transforms_compat:
 - Use `SuperFieldAccessFolder` for `super` fields in constructors.
 - Fix handling of variables in constructors with the same name as the class name.
 - Fix handling of functions in constructors with this/super.
2022-02-14 18:14:55 +09:00
SWC Bot
ac9c86f8b9 chore: Publish crates 2022-02-14 15:45:04 +09:00
Austaras
45b44b088c
fix(es/compat): Handle arrow parameters in class fields (#3556) 2022-02-14 15:44:33 +09:00
SWC Bot
0570913ec8 chore: Publish crates 2022-02-14 14:42:19 +09:00
Austaras
f1c7394d10
fix(es/compat): Apply new.target before classes (#3555) 2022-02-14 14:41:43 +09:00
SWC Bot
83274c8159 chore: Publish crates 2022-02-13 04:34:36 +09:00
magic-akari
342c320bfa
fix(es/compat): Fix destructing of const (#3545) 2022-02-13 04:34:06 +09:00
SWC Bot
b3a55dbb4e chore: Publish crates 2022-02-12 21:45:18 +09:00
magic-akari
5802b62e34
fix(es/compat): Allow destructuring assignment to an object property (#3544) 2022-02-12 21:43:51 +09:00
Donny/강동윤
9b76783281
refactor(common): Cleanup & rustfmt (#3495)
swc_common:
 - Merge identical source codes.

swc_css_parser:
 - Deny `clippy::all`.
 - Fix lints.
2022-02-09 06:33:32 +00:00
Donny/강동윤
8bf5cf4d03
chore(es): Fix clippy warnings (#3482) 2022-02-08 19:50:22 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
RiESAEX
cc185f01cb
feat(es/parser): Add an option to allow super outside of class methods (#3427) 2022-02-04 13:21:16 +09:00
Donny/강동윤
51f2202e9e chore: Publish crates 2022-02-04 12:34:05 +09:00
magic-akari
3bb2a6ccca
fix(es/compat): Handle initializer hole in array patterns (#3442) 2022-02-04 12:33:19 +09:00
Donny/강동윤
283486dcd7 chore: Publish crates 2022-02-03 17:56:51 +09:00
Austaras
01500a54e0
fix(es/compat): Handle private fields in nested classes (#3431) 2022-02-03 08:54:30 +00:00
Donny
3eaebdf479 chore: Publish crates 2022-01-28 01:14:47 +09:00
magic-akari
9eb77738fd
fix(es/compat): Add the missing span in optional_chaining (#3384) 2022-01-28 01:14:09 +09:00
Donny
4a4cb731be chore: Publish crates 2022-01-25 17:24:18 +09:00
Donny/강동윤
b1a8db6194
fix(es/block-scoping): Pop scope correctly on early returns (#3360)
swc_ecma_transforms_compat:
 - `block_scoping`: Pop scope even on fast-path.
2022-01-25 17:22:58 +09:00
Donny
29f3446df1 chore: Publish crates 2022-01-25 05:57:14 +09:00
Austaras
29aaac1f15
fix(es/compat): Handle nested functions in private_field (#3355) 2022-01-24 20:55:43 +00:00
Donny
2d26041d1d chore: Publish crates 2022-01-24 15:11:53 +09:00
Sosuke Suzuki
d1c90a4e5f
feat(es/bugfix): Add bugfix-safari-id-destructuring-collision-in-function-expression (#3109) 2022-01-24 05:48:52 +00:00
Donny
af53b9487f chore: Publish crates 2022-01-20 23:57:38 +09:00
magic-akari
6d1ad368ac
fix(es/compat): Fix regression of destructuring (#3326) 2022-01-20 14:46:58 +00:00
LongYinan
9608605772
build(node-swc): Fix GLIBC < 2.18 compatible issues and android arm binary loading issue (#3314) 2022-01-20 02:21:24 +00:00
Austaras
9e636c7e58
refactor(es): Add visit_obj_and_computed macro (#3304) 2022-01-19 23:11:52 +09:00
Donny
d7964dd547 chore: Publish crates 2022-01-17 22:42:52 +09:00
Austaras
89235b8294
fix(es/compat): Apply static_blocks before class_properties (#3292) 2022-01-17 13:20:02 +00:00
Donny
d696c324fb chore: Publish crates 2022-01-17 16:05:12 +09:00
Satish Srinivasan
2352920889
feat(es/compat): Use remove useless source map entries generated by classes (#3242) 2022-01-17 06:48:31 +00:00
Donny
681de03e4b chore: Publish crates 2022-01-17 13:36:00 +09:00
Austaras
90a62bb215
refactor(es/utils): Merge the super field visitor with FnEnvHoister (#3279) 2022-01-17 13:35:32 +09:00
Donny
7ec6e94cb0 chore: Publish crates 2022-01-16 16:58:21 +09:00
Donny/강동윤
9dd0647e3a
feat(es/ast): Improve AST api for plugin authors (#3281)
swc_ecma_ast:
 - Improve API for AST creation.
2022-01-16 16:56:41 +09:00
Donny/강동윤
e8670b3383
refactor(es): More fix for clippy (#3280) 2022-01-16 14:33:06 +09:00
Donny/강동윤
357a350390
refactor(*): Cleanup (#3274) 2022-01-15 16:43:34 +09:00
Donny
6ad418339e chore: Publish crates 2022-01-14 23:14:37 +09:00
RiESAEX
d3cc488ac1
feat(es/compat): Use var for _len and args in rest parameters (#3267) 2022-01-14 14:13:42 +00:00
Donny
d03824b13d chore: Publish crates 2022-01-14 12:45:45 +09:00
Donny/강동윤
7c19e26d0f
fix(es/transforms): Fix this in async arrow class properties (#3252)
swc_ecma_transforms_compat:
 - `async_to_generator`: Fix `this` in async class properties. (https://github.com/vercel/next.js/issues/33283)
 - Add a test for #3228 (Closes #3228).
2022-01-14 12:44:34 +09:00
Donny/강동윤
978de5943e
chore(ci): Configure clippy (#3250) 2022-01-13 23:06:11 +09:00
Donny
c13bba8401 chore: Publish crates 2022-01-12 18:39:56 +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
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
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
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
Donny
0d4b671052 chore: Publish crates 2022-01-10 15:05:26 +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/강동윤
70c2f3b3a5
security(repo): Fix crev integration (#3210) 2022-01-07 20:03:03 +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
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
781aa79b82 chore: Publish crates 2022-01-04 19:29:50 +09: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
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
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
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
a0d31f5ce4 chore: Publish crates 2021-12-28 17:12:28 +09:00
magic-akari
27d3fd93b0
fix(es/compat): Fix computed_properties (#3120)
swc_ecma_transforms_compat:
 - `computed_properties`: Fix handling of getter/setter properties. (Closes #2680)
2021-12-28 08:07:30 +00:00
Donny
4ab82fb4a7 chore: Publish crates 2021-12-27 04:38:36 +09:00
magic-akari
1b6ac25d5c
fix(es/compat): Fix private methods of a class (#3123)
swc_ecma_transforms_compat:
 - `class_properties`: Handle private method calls properly. (Closes #3055)
2021-12-26 19:37:46 +00:00
Donny
836cbd63a8 chore: Publish crates 2021-12-26 23:38:59 +09:00
magic-akari
ac78a527eb
fix(es/compat): Fix handling of hoisted functions in regenerator (#3119)
swc_ecma_ast:
 - Implement `Take` for `FnDecl`.

swc_ecma_transforms_compat:
 - `regenerator`: Handle hoisted function declarations properly. (Closes #2556)
 - `regenerator`: Fix handling of class properties with an async function as the initializer. (Closes #2620)
2021-12-26 14:36:21 +00:00
Donny
4ddc01e219 chore: Publish crates 2021-12-26 00:35:28 +09:00
magic-akari
a1cb4a4aa5
fix(es/compat): Fix handling of class methods with a big int as a key (#3118) 2021-12-25 14:46:56 +00:00
Donny
cb603cc1ff chore: Publish crates 2021-12-24 13:40:54 +09:00
magic-akari
e5971f77d5
fix(es/ast): Fix Ident::verify_symbol (#3108) 2021-12-24 04:29:49 +00:00
Donny
5e6f6e5122 chore: Publish crates 2021-12-24 12:23:46 +09:00
magic-akari
9f5a8f728a
fix(es/compat): Fix destructuring (#3104)
swc_ecma_transforms_compat:
 - `destructuring`: Handle assignment expressions in rhs of variable declarators correctly. (Closes #2850)
2021-12-24 03:19:45 +00:00
Donny
4bb264d480 chore: Publish crates 2021-12-24 10:47:59 +09:00
Donny/강동윤
d923f89db1
fix(es/compat): Fix classes pass (#3107)
swc_ecma_ast:
 - Add `Ident::verify_symbol`.

swc_ecma_transforms_compat:
 - Don't generate invalid identifiers. (Closes #3106)
2021-12-24 10:46:55 +09:00
Donny
08c4589da7 chore: Publish crates 2021-12-22 17:06:54 +09:00
magic-akari
df87c2b302
fix(es/transforms): Fix descturcturing (#3098)
swc_ecma_transforms_compat:
 - `destructuring`: Handle exports of bindings with object pattern properties correctly. (Closes #2858)
2021-12-22 08:03:41 +00:00
Donny
967f30d7d4 chore: Publish crates 2021-12-19 12:45:44 +09:00
magic-akari
ff1aab710c
fix(es/compat): Transform an optional eval call as an indirect eval call (#3068)
swc_ecma_transforms_compat:
 - `optional_chaining`: Handle optional `eval` calls properly. (Closes #2735)
2021-12-19 03:42:46 +00:00
Donny
8c16c2b77d chore: Publish crates 2021-12-17 15:09:02 +09:00
OJ Kwon
a381fb8bce
fix(es/compat): Fix block_scoping (#3058)
swc_ecma_transforms_compat:
 - `block_scoping`: Consider the location of variable declarations. (Closes #2998)
2021-12-17 15:08:22 +09:00
Donny
9b36abbe75 chore: Publish crates 2021-12-15 16:22:00 +09:00
Austaras
38955c0c8d
refactor(es/ast): Change type or the key of ClassProp to PropName (#3038) 2021-12-15 16:21:30 +09:00
Donny
83e1635a04 chore: Publish crates 2021-12-14 19:48:17 +09:00
OJ Kwon
29eb71aaf9
perf(es/compat): Migrate regenerator to VisitMut (#3037) 2021-12-14 09:24:57 +00:00
Donny
f86c077a37 chore: Publish crates 2021-12-13 06:46:14 +09:00
Donny
28f3c4fb52 chore: Publish crates 2021-12-13 06:45:43 +09:00
RiESAEX
d3ffc6719b
perf(es/compat): Migrate class helper to VisitMut (#3020) 2021-12-12 21:18:48 +00:00
Donny
da4111a022 chore: Publish crates 2021-12-11 20:54:21 +09:00
RiESAEX
333b52c646
perf(es/compat): Migrate classes to VisitMut partially (#2995) 2021-12-11 08:24:57 +00:00
Donny
a04b4082a4 Bump version 2021-12-11 17:01:12 +09:00
OJ Kwon
00d22b8fde
build: Use mocha for exec_ test instead of jest (#3009) 2021-12-11 07:59:21 +00:00
Donny
f87df958d5 chore: Publish crates 2021-12-11 16:21:44 +09:00
OJ Kwon
91d6343d7f
perf(es/compat): Migrate regenerator to VisitMut partially (#3007) 2021-12-11 05:30:56 +00:00
Donny
68861007d9 chore: Publish crates 2021-12-10 18:56:37 +09:00
OJ Kwon
7ca1e174b7
perf(es/compat): Migrate object_rest to VisitMut (#2997) 2021-12-10 18:56:24 +09:00
Donny
c5b943f588 chore: Publish crates 2021-12-10 18:55:41 +09:00
OJ Kwon
a1756062c5
perf(es/compat): Migrate class_properties to VisitMut (#2993) 2021-12-10 09:54:14 +00:00
Donny/강동윤
6a7ad9239e
fix(es/compat): Fix for synthesized template literals (#2994) 2021-12-08 19:47:11 +09:00