Commit Graph

355 Commits

Author SHA1 Message Date
magic-akari
9443419591
fix(es/fixer): Preserve parens for optional chaining expressions (#5388) 2022-08-04 04:20:25 +00:00
Austaras
77497e4fbe
fix(es/fixer): Don't insert extra paren when left of BinExpr is UpdateExpr (#5376) 2022-08-03 08:41:40 +00:00
magic-akari
42d8ad26ce
fix(es/codegen): Emit type parameters of class super expression (#5338) 2022-07-29 11:52:13 +00:00
Donny/강동윤
b378c06081
perf(es/minifier): Make name mangler faster (#5336) 2022-07-29 08:05:23 +00:00
OJ Kwon
5c9ea16b2a
build(cargo): Update packages (#5331) 2022-07-29 08:30:41 +09:00
SWC Bot
129a886e13 chore: Publish crates 2022-07-27 04:18:47 +00:00
SWC Bot
3aa4471a0f chore: Publish crates 2022-07-27 03:58:55 +00:00
magic-akari
b3269fda8e
fix(es/fixer): Wrap await and yield in callee (#5314) 2022-07-27 03:57:00 +00:00
Austaras
0f254d5ce5
feat(es/codegen): Remove extra space before a private method (#5295) 2022-07-26 03:35:49 +00:00
Donny/강동윤
a37fdca969 chore: Publish crates 2022-07-22 21:06:43 +09:00
SWC Bot
fe74b7067c chore: Publish crates 2022-07-20 04:10:58 +00:00
OJ Kwon
0d91741eb9
build(cargo): Align dependency versions (#5248) 2022-07-20 03:42:04 +00:00
Donny/강동윤
54982d4d72 chore: Publish crates 2022-07-19 11:38:23 +09:00
三丝
df426d7b1d
chore: Typo (#5238) 2022-07-17 17:39:16 +00:00
SWC Bot
510a87e102 chore: Publish crates 2022-07-14 05:59:36 +00:00
Donny/강동윤
436f6200bc
fix(es/fixer): Handle invalid numeric literals (#5201) 2022-07-14 05:57:28 +00:00
Donny/강동윤
b433b69263 chore: Publish crates 2022-07-12 23:58:30 +09:00
SWC Bot
2bd5b4413a chore: Publish crates 2022-07-09 10:17:04 +00:00
SWC Bot
297228a690 chore: Publish crates 2022-07-07 07:48:49 +00:00
SWC Bot
9385103649 chore: Publish crates 2022-07-06 04:44:10 +00:00
SWC Bot
5a5cfb7e86 chore: Publish crates 2022-07-05 10:52:11 +00:00
Austaras
528d4c5aa4
fix(es/fixer): Preserve parens in more opt calls (#5111) 2022-07-05 10:49:05 +00:00
SWC Bot
a049d7481d chore: Publish crates 2022-07-05 09:57:54 +00:00
magic-akari
3e3c44a0b6
fix(es/fixer): Preserve parens in opt calls (#5110) 2022-07-05 09:55:21 +00:00
SWC Bot
198aa2d323 chore: Publish crates 2022-07-05 05:07:28 +00:00
Austaras
9519e801ea
fix(es/resolver): Fix handling of block scoped functions (#5092) 2022-07-05 05:04:49 +00:00
SWC Bot
f5447cd1b1 chore: Publish crates 2022-07-02 03:53:10 +00:00
magic-akari
1e33dbab24
feat(es/modules): Support node interop (#5069) 2022-07-01 03:28:03 +00:00
Donny/강동윤
c2c923e205 chore: Publish crates 2022-07-01 11:50:45 +09:00
SWC Bot
73874486b2 chore: Publish crates 2022-06-29 11:05:08 +00:00
SWC Bot
5576c3c601 chore: Publish crates 2022-06-29 03:37:57 +00:00
Donny/강동윤
8b042745c6 chore: Publish crates 2022-06-27 21:36:54 +09:00
magic-akari
fa68cbd74a
refactor(es/module): Implement new module transformer (#4758) 2022-06-27 12:32:06 +00:00
SWC Bot
1e313c07d0 chore: Publish crates 2022-06-21 05:48:32 +00:00
Donny/강동윤
fd73895a7b
fix(es/transforms): Add custom Sync + Send for the renamer (#5018) 2022-06-21 05:45:34 +00:00
SWC Bot
6ec6bbd4aa chore: Publish crates 2022-06-15 14:40:06 +00:00
Donny/강동윤
36d960c7e9
perf(es/hygiene): Make hygiene faster (#4952) 2022-06-15 14:36:57 +00:00
SWC Bot
dc78cb48b9 chore: Publish crates 2022-06-15 05:27:21 +00:00
Donny/강동윤
b3f6f20721
fix(es/resolver): Make catch parameter not disturb resolving (#4976) 2022-06-15 05:24:39 +00:00
Donny/강동윤
0782c533b5 chore: Publish crates 2022-06-15 13:59:06 +09:00
Donny/강동윤
1bf2b80f97
chore(ci): Use macos for release builds (#4968)
We need more memory
2022-06-14 19:54:34 +09:00
Donny/강동윤
3e03ebf8bb
fix(es/parser): Don't assume the length of char (#4967) 2022-06-14 07:05:35 +00:00
Donny/강동윤
4a27e6f84a
fix(es/helpers): Allow using external helpers with type: module (#4962) 2022-06-13 18:41:35 +00:00
SWC Bot
4cae0e8270 chore: Publish crates 2022-06-13 15:54:56 +00:00
Donny/강동윤
ea92a6ab8a
refactor(es/resolver): Prepare parallel resolver (#4957) 2022-06-13 15:52:15 +00:00
SWC Bot
ccd86a1f4d chore: Publish crates 2022-06-13 08:13:14 +00:00
Donny/강동윤
445d58518d
perf(es/transforms): Make rename operator parallel (#4951) 2022-06-13 08:10:09 +00:00
Donny/강동윤
bfede71e6c chore: Publish crates 2022-06-11 16:47:29 +09:00
SWC Bot
0f094da77f chore: Publish crates 2022-06-11 07:45:15 +00:00
Donny/강동윤
35c93be60f
perf(es/transforms): Make transforms parallel (#4939) 2022-06-11 07:42:43 +00:00
SWC Bot
946f2062b6 chore: Publish crates 2022-06-10 06:13:45 +00:00
Austaras
5bb417ef88
fix(es/fixer): Preserve parens in optional calls (#4923) 2022-06-10 06:11:05 +00:00
SWC Bot
4c45b1755b chore: Publish crates 2022-06-07 23:45:49 +00:00
Donny/강동윤
a9f91dc797
fix(es/resolver): Hoist namespaces (#4902) 2022-06-07 23:42:19 +00:00
SWC Bot
f54bc12e26 chore: Publish crates 2022-06-07 17:20:45 +00:00
Donny/강동윤
4e3a878b48
fix(es/helpers): Fix syntax context of helpers (#4900) 2022-06-07 17:18:16 +00:00
Donny/강동윤
eb0acc3859 chore: Publish crates 2022-06-06 04:54:19 +09:00
Donny/강동윤
0567f67664
fix(es/minifier): Apply name mangler for more cases (#4840) 2022-05-29 11:15:16 +00:00
SWC Bot
424e62e663 chore: Publish crates 2022-05-26 16:01:22 +00:00
Donny/강동윤
a487fc1d28
refactor(es/transforms): Remove concurrent (#4808) 2022-05-26 15:58:19 +00:00
Austaras
573bcb5b49
fix(es/compat): Use define for non-spread props (#4754) 2022-05-26 20:32:41 +09:00
SWC Bot
555e08d4d6 chore: Publish crates 2022-05-24 09:27:11 +00:00
brightwu
f28d9c143b
fix(es/resolver): Fix more edge cases related to catch and var (#4773) 2022-05-24 09:24:42 +00:00
SWC Bot
26578c8c0a chore: Publish crates 2022-05-24 07:55:58 +00:00
brightwu
e2da3ddc03
fix(es/resolver): Handle var after catch with the same name (#4772) 2022-05-24 16:53:13 +09:00
SWC Bot
565fb38aec chore: Publish crates 2022-05-24 05:58:20 +00:00
Austaras
65b7c4b695
fix(es/fixer): Preserve the paren in a spread element (#4771) 2022-05-24 05:55:45 +00:00
Donny/강동윤
995e9661cc chore: Publish crates 2022-05-24 13:15:57 +09:00
Donny/강동윤
b8d2fb8546
feat(es/helpers): Import only used helpers (#4767) 2022-05-24 04:09:59 +00:00
Kevin Barabash
72fbf692a4
fix(es/codegen): Don't add a newline after an arrow body (#4711) 2022-05-19 07:12:37 +00:00
Donny/강동윤
98e4845fce
build(repo): Update rustc (#4667) 2022-05-15 09:03:54 +00:00
SWC Bot
ead25ee153 chore: Publish crates 2022-05-15 05:09:48 +00:00
Donny/강동윤
eb8508f88c
feat(es/codegen): Implement ascii-only (#4660) 2022-05-15 05:07:21 +00:00
Donny/강동윤
053f42b3aa
feat(es/minifier): Improve minifier (#4655)
swc_ecma_transforms_base:
 - Improved `fixer`.

swc_ecma_minifier:
 - `ignore_return_value`: Support computed access to array literals.
2022-05-14 07:06:03 +00:00
SWC Bot
0b06ab4022 chore: Publish crates 2022-05-13 06:34:22 +00:00
David Sherret
2745cb7949
fix(es/resolver): Ensure that a parameter type is resolved to parent (#4645) 2022-05-13 06:31:52 +00:00
Donny/강동윤
79f87e03db
test(es/minifier): Execute more tests (#4636) 2022-05-12 16:28:52 +09:00
SWC Bot
97808349a2 chore: Publish crates 2022-05-11 16:17:07 +00:00
SWC Bot
90569d4673 chore: Publish crates 2022-05-11 04:38:52 +00:00
Donny/강동윤
6a97c7bef8
fix(es/utils): Fix wrong apis (#4604)
# API Changes

## `swc_ecma_utils`

### Renames

 - `find_ids` => `find_pat_ids`
 - `prepend` => `prepend_stmt`
 - `as_bool` => `cast_to_bool`
 - `as_number` => `as_pure_number`
 - `as_string` => `cast_to_string`
 - (`as_pure_bool`, `cast_to_number` is not renamed)
 - `UsageFinder` => `IdentUsageFinder`.
 - `IdentFinder` => `IdentRefFinder`.

## Changes

 - Re-export of `HANDLER` from `swc_common::errors` is removed. Use `swc_common::error::HANDLER` instead.
 - Re-export of `Id` from `swc_ecma_ast` is removed. Use `swc_ecma_ast::Id` instead.
 - `ExprCtx` is used for apis related to `Expr`.
 - `preserve_effects` is now a method of `ExprCtx`. It was a top-level function.
 - `extract_side_effects_to` is now a method of `ExprCtx`. It was a top-level function.
 - `IdentUsageFinder` (previously `UsageFinder`) now takes `Id` instead of `Ident`.
 - `IdentRefFinder` (previously `IdentFinder`) now takes `Id` instead of `Ident`.
 - `ExprExt::is_ident_ref_to` is removed.
 - `Expr::is_global_ref_to` is added.
 - `:🆔:id` is removed. Use `Ident::to_id()` instead.
2022-05-11 04:36:22 +00:00
Donny/강동윤
2c861bd9e5
feat(es/ast): Improve Id APIs (#4614)
# API Changes

 - `Ident` now has `to_id()`. This method is added to allow removing an import.
2022-05-11 12:02:14 +09:00
SWC Bot
6c425d3d0a chore: Publish crates 2022-05-10 04:19:24 +00:00
Donny/강동윤
d611d543ea
fix(es/fixer): Handle new yield (#4598) 2022-05-10 04:17:11 +00:00
Donny/강동윤
097ff1ddc1
fix(es/minifier): Fix with and NaN (#4596) 2022-05-10 03:21:43 +00:00
SWC Bot
2482c93449 chore: Publish crates 2022-05-09 20:20:17 +00:00
Donny/강동윤
6ac4a23aa2
feat(es/hygiene): Drop syntax context (#4594) 2022-05-09 20:15:15 +00:00
SWC Bot
df31bb1731 chore: Publish crates 2022-05-09 08:52:56 +00:00
Donny/강동윤
56c3010f6b
fix(es/resolver): Fix more try catch issues (#4582) 2022-05-09 17:50:30 +09:00
SWC Bot
d27b6e6dbe chore: Publish crates 2022-05-08 10:15:15 +00:00
Donny/강동윤
9e79f9ced6
fix(es/resolver): Fix handling of a complex try catch (#4574) 2022-05-08 10:12:50 +00:00
SWC Bot
2a1a0bbaf5 chore: Publish crates 2022-05-07 08:45:21 +00:00
Donny/강동윤
13cc228262
doc(es/resolver): Add docs for top-level mark (#4560) 2022-05-07 08:42:46 +00:00
SWC Bot
e4ce388632 chore: Publish crates 2022-05-06 04:10:39 +00:00
Donny/강동윤
a6d404a8c2
chore(repo): Configure prettier (#4523) 2022-05-04 14:25:28 +00:00
SWC Bot
00695f4b23 chore: Publish crates 2022-05-03 07:50:35 +00:00
Donny/강동윤
f30ffdf200
fix(es/decorators): Make legacy decorator identical to tsc (#4496) 2022-05-03 07:48:09 +00:00
SWC Bot
ceed408e3c chore: Publish crates 2022-05-02 04:37:58 +00:00
magic-akari
1e1d081805
fix(es/compat): Support updating a private field with bigint value (#4136) 2022-05-02 13:34:46 +09:00
SWC Bot
a36e6a6726 chore: Publish crates 2022-04-30 00:59:36 +00:00
RiESAEX
7d40208377
fix(es/helpers): Update _interopRequireWildcard (#4479) 2022-04-30 00:56:48 +00:00
SWC Bot
989ea98ed0 chore: Publish crates 2022-04-28 04:19:17 +00:00
Donny/강동윤
0bc0bae90d
fix(es/async-generator): Fix yield* in async generators (#4452) 2022-04-28 04:14:17 +00:00
Donny/강동윤
27f9b30ef2 chore: Publish crates 2022-04-26 19:30:11 +09:00
Donny/강동윤
53610fdafc
feat(es/resolver): Use different syntax context for unresolved refs (#4436)
- We don't need a list of bindings to check if an identifier is unresolved.
 - Checking if an identifier is unresolved is now one CPU instruction.
   - Previously it was one hashmap operation.
 - This PR also improves performance, by removing the hashmaps mentioned above.
2022-04-26 07:38:50 +00:00
SWC Bot
e0f10f876f chore: Publish crates 2022-04-25 06:59:03 +00:00
Donny/강동윤
8ab12fd97b
fix(es/minifier): Preserve more side effects (#4420) 2022-04-25 06:56:19 +00:00
SWC Bot
7d23492b16 chore: Publish crates 2022-04-21 10:02:50 +00:00
OJ Kwon
8419b60430
fix(plugin): Align deps to fix build (#4377) 2022-04-20 08:05:02 +00:00
Donny/강동윤
a8ed5ba357
fix(es/minifier): Apply name mangler as much as we can (#4365) 2022-04-19 17:20:12 +09:00
Donny/강동윤
8309440008
chore(es): Rename benchmarks (#4355) 2022-04-17 18:36:15 +00:00
Dion
4c9973010a
fix(es/codegen): Fix codegen of arrow expressions (#4306)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-04-15 08:00:04 +00:00
SWC Bot
995b4367cc chore: Publish crates 2022-04-15 07:39:50 +00:00
Donny/강동윤
6c9882ec68 fix(es/compat): Fix renaming bug of block_scoping (#4310) 2022-04-12 22:11:34 +09:00
SWC Bot
fa880634bd chore: Publish crates 2022-04-11 20:05:28 +00:00
SWC Bot
4a097adbf7 chore: Publish crates 2022-04-11 18:48:43 +00:00
那里好脏不可以
37a8c90750
chore(*): Typo + fomatting (#4304) 2022-04-11 18:45:58 +00:00
OJ Kwon
fad652f879
chore(plugin): Align version of swc_common to include dummy comment api (#4270) 2022-04-07 07:21:37 +00:00
SWC Bot
5eb3d8315a chore: Publish crates 2022-04-05 12:49:22 +00:00
Alexander Akait
f39d3aca4d
feat(es/ast): Add raw to Num (#4245) 2022-04-05 12:46:35 +00:00
Donny/강동윤
c32f42b374
test(es): Organize tests (#4251) 2022-04-05 08:21:19 +00:00
OJ Kwon
4093814895
chore(build): Dedup swc_common (#4247) 2022-04-05 14:28:07 +09:00
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