Commit Graph

234 Commits

Author SHA1 Message Date
Donny/강동윤
1f466e1d2f
chore(ci): Fix benchmark action (#4242) 2022-04-04 20:12:03 +09:00
Donny/강동윤
06d0891e7c
chore(bench): Migrate to criterion (#4237) 2022-04-04 00:56:29 +09:00
SWC Bot
3337777f8c chore: Publish crates 2022-04-02 06:06:39 +00:00
SWC Bot
6125de9808 chore: Publish crates 2022-03-28 12:20:51 +00:00
Donny/강동윤
e6088408bf chore: Publish crates 2022-03-24 12:05:47 +09:00
SWC Bot
77722c4943 chore: Publish crates 2022-03-22 08:03:01 +00:00
Alexander Akait
634d732803
feat(es/ast): Add raw to Str (#4071) 2022-03-22 07:54:08 +00:00
Donny/강동윤
533f756274
fix(api/rust): Exclude test files from rust packages (#4091) 2022-03-19 10:49:12 +00:00
SWC Bot
670b80169e chore: Publish crates 2022-03-19 05:35:23 +00:00
Donny/강동윤
f66229822c
fix(es/resolver): Fix handling of decorators (#4084) 2022-03-19 05:32:53 +00:00
SWC Bot
355b3b3001 chore: Publish crates 2022-03-18 01:46:26 +00:00
Donny/강동윤
55cfad152d
fix(es/helpers): Fix decorator helper script (#4072) 2022-03-18 01:44:13 +00:00
SWC Bot
a74d4ca679 chore: Publish crates 2022-03-17 10:29:25 +00:00
SWC Bot
94632b6940 chore: Publish crates 2022-03-17 08:21:45 +00:00
Donny/강동윤
f8a3849299
fix(es/helpers): Fix the name of _classPrivateFieldLooseBase (#4061) 2022-03-17 08:19:30 +00:00
SWC Bot
4d6d766cf8 chore: Publish crates 2022-03-17 05:36:01 +00:00
LongYinan
db9b988845
feat(node-swc): Add libc field in Linux platform packages (#4046) 2022-03-16 18:58:24 +09:00
SWC Bot
bcd08f6838 chore: Publish crates 2022-03-15 20:09:43 +00:00
Donny/강동윤
3a4704fe77
feat(es/transforms/base): Add paren_remover (#4034) 2022-03-15 20:07:04 +00:00
Donny/강동윤
e19a60aad4
fix(es/compat): Change pass ordering of es2015 (#4029)
**Description:**

We should apply `regenerator` after `block_scoping` because `regenerator` does not know how to handle `const`s.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/3006
2022-03-15 14:17:03 +00:00
SWC Bot
b12a2f3ba5 chore: Publish crates 2022-03-15 09:47:41 +00:00
Donny/강동윤
73c91d34d5
fix(es/helpers): Inject helpers for scripts (#4025)
**Description:**

This PR adds support for helpers in script mode. For now, we does not support `externalHelpers` for scripts, as there is no standard for importing other files from a script.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/2385
2022-03-15 09:43:57 +00:00
SWC Bot
8565a8e8f3 chore: Publish crates 2022-03-13 21:44:41 +00:00
Austaras
87a3c1c916
fix(es/resolver): Use correct context for identifiers after type parameters (#4000) 2022-03-13 21:42:24 +00:00
Donny/강동윤
38c0c0faa6 chore: Publish crates 2022-03-14 04:11:07 +09:00
Donny/강동윤
ddfa490899 chore: Publish crates 2022-03-12 10:00:23 +09:00
SWC Bot
d1ac902196 chore: Publish crates 2022-03-11 14:02:55 +00:00
LongYinan
1206c84e19
feat(*): Update dependencies (#3964) 2022-03-11 23:00:55 +09:00
OJ Kwon
86ea23785d
perf(*): Update tracing to improve performance of disabled spans (#3932) 2022-03-10 03:15:49 +00:00
SWC Bot
1196cc8155 chore: Publish crates 2022-03-08 14:37:12 +00:00
Austaras
7cfa930a62
feat(es/fixer): Remove extra parens around IIFE in statements (#3918) 2022-03-08 14:35:18 +00:00
Austaras
9dd0105c5b
feat(es/fixer): Remove extra parens around iife in expression position (#3887) 2022-03-07 03:51:57 +00:00
SWC Bot
fd453b9170 chore: Publish crates 2022-03-05 19:34:45 +00:00
magic-akari
c7f2bdb813
feat(es/compat): Implement loose mode for async_to_generator (#3870) 2022-03-05 19:32:59 +00:00
SWC Bot
2fdc5f625d chore: Publish crates 2022-03-05 14:52:49 +00:00
SWC Bot
add86a7e6a chore: Publish crates 2022-03-05 06:48:00 +00:00
Austaras
6f076e4927
feat(es/transform): Unify logic for handling class properties (#3766) 2022-03-05 06:46:09 +00:00
SWC Bot
f044a37150 chore: Publish crates 2022-03-03 06:23:07 +00:00
Donny/강동윤
043fba274e
fix(es/hygiene): Fix renaming bugs (#3824) 2022-03-03 06:21:13 +00:00
SWC Bot
b662fe84ba chore: Publish crates 2022-03-02 06:10:27 +00:00
Donny/강동윤
f5103a7725
perf(es/parser): Remove duplicated instantiations of Parser to reduce binary size (#3813) 2022-03-02 06:08:37 +00:00
Donny/강동윤
3798436201
chore: Update rustc (#3768) 2022-02-28 16:12:28 +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
Donny/강동윤
3d944656bf
refactor(es): Make compilation faster (#3749) 2022-02-26 06:41:14 +00:00
SWC Bot
2ab150c603 chore: Publish crates 2022-02-26 12:11:27 +09:00
Donny/강동윤
47ccff8a7c
feat(es/parser): Provide more api for reducing binary size (#3747) 2022-02-26 09:29:05 +09: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
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
magic-akari
1743302819
feat(es/typescript): Inline typescript enums (#3647) 2022-02-24 09:19:49 +00:00
SWC Bot
6ca76b81be chore: Publish crates 2022-02-24 12:28:01 +09: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
SWC Bot
e4c674b9cb chore: Publish crates 2022-02-21 13:10:43 +00:00
SWC Bot
e08a2c2c17 chore: Publish crates 2022-02-21 07:15:09 +00:00
SWC Bot
264f1cf8d6 chore: Publish crates 2022-02-20 15:53:48 +00:00
SWC Bot
205fea6cce chore: Publish crates 2022-02-17 08:21:05 +00:00
Donny/강동윤
798ef13706
feat(api/rust): Improve error messages for wrong usages of scoped thread-local variables (#3606) 2022-02-17 08:11:46 +00:00
OJ Kwon
ad6f24ad83
build(*): Dedupe once_cell (#3567) 2022-02-15 11:58:44 +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
William Tetlow
4f5e87b66b
fix(es/compat): Fix legacy decorator pass (#3459) 2022-02-07 16:11:41 +00:00
Donny/강동윤
bfada04b33 chore: Publish crates 2022-02-05 17:39:30 +09:00
magic-akari
032f397b52
fix(es/fixer): Handle more expressions in the super class position (#3452) 2022-02-05 17:38:48 +09:00
Donny/강동윤
d7c2d0561b chore: Publish crates 2022-02-04 14:14:08 +09:00
Donny/강동윤
2af5096e83
fix(es/resolver): Fix handling of for statements (#3446)
swc_ecma_transforms_base:
 - `resolver`: Visit the body of a for statement in a nested visitor.
2022-02-04 14:13:32 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
Donny/강동윤
839d0ac480
refactor(es/parser): Flatten tests to make git faster (#3393) 2022-01-28 19:11:30 +09:00
Austaras
9e636c7e58
refactor(es): Add visit_obj_and_computed macro (#3304) 2022-01-19 23:11:52 +09:00
Donny
be33d20baf chore: Publish crates 2022-01-17 16:18:53 +09:00
Donny/강동윤
9a898951bc
fix(es/resolver): Ignore names of jsx attributes (#3289)
swc_ecma_transforms_base:
 - Ignore names of jsx attributes. (Closes #2854)
2022-01-17 16:18:07 +09:00
Donny
681de03e4b chore: Publish crates 2022-01-17 13:36:00 +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
a4e93eb2df chore: Publish crates 2022-01-15 17:20:51 +09:00
magic-akari
f4b3cb714a
fix(es/resolver): Treat a switch statement as a block scope (#3275) 2022-01-15 17:20:17 +09:00
Donny/강동윤
357a350390
refactor(*): Cleanup (#3274) 2022-01-15 16:43:34 +09:00
Donny/강동윤
2690742db0
refactor(es/transforms): Cleanup (#3273) 2022-01-15 15:36:40 +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
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
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
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
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
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
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
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/강동윤
194b3e9b67
refactor(*): Use 2021 edition (#3151) 2021-12-30 18:59:18 +09:00
Donny
0cf8265f02 chore: Publish crates 2021-12-29 21:04:30 +09:00
Donny
737b6108d4 chore: Publish crates 2021-12-29 13:46:45 +09:00
Donny/강동윤
43c8cda31a
fix(es/renamer): Fix renamer (#3139)
swc_ecma_transforms_base:
 - `resolver`: Ignore named export with source.
 - `hygiene`: Ignore named export with source. (Closes #2924, Closes #3114)

swc_ecma_minifier:
 - Handle `export default` declarations as declaration instead of expressions. (Closes #2717)
 - Don't override already-processed identifiers. (Closes #2988)

swc_bundler:
 - Adjust the syntax context for named re-exports.
2021-12-29 13:44:48 +09:00
Donny
7cbd2bc790 chore: Publish crates 2021-12-23 19:04:24 +09:00
Donny/강동윤
f66c2cd375
fix(es/helpers): Fix decorators (#3105)
swc_ecma_transforms_base:
 - Fix `_applyDecoratedDescriptor`. (Closes #2127)
2021-12-23 19:03:53 +09:00
Donny
726fc6968d chore: Publish crates 2021-12-21 23:53:37 +09:00
Donny/강동윤
a81661c74a
perf(es/hygiene): Fix performance bug (#3090)
swc_ecma_transforms_base:
 - `hygiene`: Skip checking a symbol if we are sure that it will be discarded.

swc_ecma_laoder:
 - Optimize `NodeModulesResolver` by trying `.js` first.
2021-12-21 23:52:13 +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
57f512c262 chore: Publish crates 2021-12-10 19:36:51 +09:00
David Sherret
c8c73cb313
fix(es/typescript): Fix enums which reference themselves (#3000) 2021-12-10 10:30:26 +00:00
Donny/강동윤
0a637d6ce2
chore: Fix license issue (#3002) 2021-12-10 17:45:01 +09:00
Donny
82ece9d0ca chore: Publish crates 2021-12-07 15:15:08 +09:00
RiESAEX
ae4bb420ae
fix(es/transforms): Update helpers about array (#2970)
swc_ecma_transforms_base:
 - Update helpers. (Closes #2689)
2021-12-07 06:12:54 +00:00
Donny
b1a47ee971 chore: Publish crates 2021-12-07 14:34:44 +09:00
Donny/강동윤
e48263b2f3
refactor(visit): Remove &dyn Node from Visit (#2984)
swc_visit_macros:
 - Remove `&dyn Node` from `Visit`.
 - Implement `VisitWith<V>` for `[T]`.
2021-12-07 14:34:16 +09:00
Donny
acc45e7c36 chore: Publish crates 2021-12-05 17:34:04 +09:00
Donny/강동윤
1ea965cecb
fix(es/parser): Drop outdated options (#2974)
swc_ecma_parser:
 - Drop flags in `EsConfig`.
 - Drop flags in `TsConfig`.
 - Drop unused variants from `SyntaxError`.
2021-12-05 17:33:34 +09:00
Donny
529f980693 chore: Publish crates 2021-12-05 15:44:50 +09:00
David Sherret
97df4cef80
refactor(es/parser): Remove import_assertions from TsConfig (#2950) 2021-12-05 05:43:41 +00:00
Donny
42a93dd8ef chore: Publish crates 2021-12-04 11:53:14 +09:00
David Sherret
67280b6fb0
fix(es/typescript): Run resolver before typescript::strip (#2951)
swc_ecma_transforms_base:
 - `resolver`: Handle some typescript nodes.

swc_ecma_transforms_typescript:
 - `strip`: Use identifier span hygiene information for stripping types.
2021-12-04 02:35:16 +00:00
Donny
32e2f3e46c chore: Publish crates 2021-12-04 01:55:54 +09:00
David Sherret
beb2c73c2c
fix(swc/hygiene): Prefer not renaming top level variables (#2940)
swc_ecma_transforms_base:
 - `hygiene`: Use concept of depth to prevent renaming top level nodes.
2021-12-04 01:55:27 +09:00
Donny
e8225a66a0 chore: Publish crates 2021-12-02 16:29:34 +09:00
David Sherret
4d993c26b6
fix(es/hygiene): Reduce renaming (#2938)
swc_ecma_transforms_base:
 - `hygiene`: Treat class methods and constructors as a scope.
2021-12-02 07:28:09 +00:00
Donny
67dc0d3b94 chore: Publish crates 2021-12-02 10:08:22 +09:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny
d4ffce13b5 chore: Publish crates 2021-11-24 10:08:01 +09:00
Donny/강동윤
7a6bf424c5
fix(es/transforms/base): Fix ts_resolver (#2826)
swc_ecma_transforms_base:
 - `ts_resolver`: Hoist type aliases.
2021-11-21 16:31:12 +09:00
Donny
218a269bb5 chore: Publish crates 2021-11-21 15:48:05 +09:00
Donny/강동윤
9cd3d1610d
fix(es/transforms/base): Fix ts_resolver (#2824)
swc_ecma_transforms_base:
 - `ts_resolver`: Hoist interface declarations.
2021-11-21 15:47:38 +09:00
Donny/강동윤
d64b066ef1
bench(es/visit): Add some benchmarks (#2820) 2021-11-21 14:08:55 +09:00
Donny/강동윤
665c8e05fc
fix(es): Move TargetEnv to loader from ast (#2719)
swc_ecma_ast:
 - Move `TargetEnv` to `swc_ecma_loader`.

swc_ecma_loader:
 - Drop unused dependencies.
2021-11-11 20:00:46 +09:00
Donny/강동윤
2b2f6955f2
refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00