Commit Graph

404 Commits

Author SHA1 Message Date
Austaras
573bcb5b49
fix(es/compat): Use define for non-spread props (#4754) 2022-05-26 20:32:41 +09: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
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
c070b43e5d chore: Publish crates 2022-05-09 05:45:55 +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
SWC Bot
6ca7af9212 chore: Publish crates 2022-05-02 06:46:02 +00:00
Donny/강동윤
5c5337d342
feat(es/preset-env): Update data (#4497) 2022-05-02 06:43:36 +00:00
SWC Bot
b44b7f9b3d chore: Publish crates 2022-04-28 02:55:32 +00:00
Austaras
4262874ce4
fix(es/preset-env): Do not import new features when using old core-js (#4458) 2022-04-28 02:52:35 +00:00
Donny/강동윤
27f9b30ef2 chore: Publish crates 2022-04-26 19:30:11 +09:00
SWC Bot
7cbf30d5ac chore: Publish crates 2022-04-25 15:34:29 +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/강동윤
8309440008
chore(es): Rename benchmarks (#4355) 2022-04-17 18:36:15 +00:00
SWC Bot
995b4367cc chore: Publish crates 2022-04-15 07:39:50 +00:00
Donny/강동윤
7599fe7431
fix(es/parser): Enable static blocks by default (#4334) 2022-04-15 07:31:41 +00: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
OJ Kwon
4093814895
chore(build): Dedup swc_common (#4247) 2022-04-05 14:28:07 +09:00
那里好脏不可以
06020bb76d
chore(es/preset-env): Typo (#4243) 2022-04-04 15:15:11 +00: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
Donny/강동윤
f39895e563 chore: Publish crates 2022-04-02 16:25:18 +09:00
Donny/강동윤
7eea95be7a
fix(es/preset-env): Change order of passes 2022-04-02 06:57:17 +00:00
SWC Bot
3337777f8c chore: Publish crates 2022-04-02 06:06:39 +00:00
SWC Bot
1068561800 chore: Publish crates 2022-04-01 04:29:08 +00:00
magic-akari
b793aa0200
feat(es/compat): Support more regex expressions (#4205) 2022-04-01 04:26:30 +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
Donny/강동윤
1d3763d96c
feat(es/minifier): Implement some unsafe evaluation rules (#4133) 2022-03-23 22:56:13 +00: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
Austaras
f5b9600b2b
fix(es/compat): Visit non-method properties in a nested object literal (#4094) 2022-03-19 14:11:54 +00:00
SWC Bot
e7d450c8af chore: Publish crates 2022-03-19 07:07:31 +00:00
SWC Bot
a74d4ca679 chore: Publish crates 2022-03-17 10:29:25 +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
8eb9476cfb chore: Publish crates 2022-03-16 08:13:01 +00:00
Donny/강동윤
38c0c0faa6 chore: Publish crates 2022-03-14 04:11:07 +09:00
Donny/강동윤
bd0fcb9ea4 chore(es/preset-env): Track .json files to make cargo happy 2022-03-12 20:47:29 +09:00
Donny/강동윤
f5e8cc2d09 chore: Publish crates 2022-03-12 20:13:53 +09:00
SWC Bot
8f1d6302d1 chore: Publish crates 2022-03-12 07:52:26 +00:00
Donny/강동윤
83722df21a
chore(es/preset-env): Use js script for copying files (#3986)
Description:
 - We don't store `.json` from dependencies in our repo anymore.
2022-03-12 07:45:25 +00:00
Donny/강동윤
ddfa490899 chore: Publish crates 2022-03-12 10:00:23 +09:00
SWC Bot
37c16b0c70 chore: Publish crates 2022-03-11 16:04:13 +00:00
Austaras
502f934ce5
fix(es/preset-env): Move out finished proposals (#3970) 2022-03-11 16:02:05 +00:00
SWC Bot
366e4d3362 chore: Publish crates 2022-03-11 15:38:18 +00:00
Donny/강동윤
858372ffad
fix(es/preset-env): Publish builtin.json (#3973) 2022-03-11 15:36:02 +00:00
SWC Bot
2f874d959a chore: Publish crates 2022-03-11 14:45:08 +00:00
Donny/강동윤
7ebfcfa70f
fix(es/preset-env): Fix compilation issue (#3972) 2022-03-11 14:43:17 +00:00
LongYinan
1206c84e19
feat(*): Update dependencies (#3964) 2022-03-11 23:00:55 +09:00
SWC Bot
4c29b26f3c chore: Publish crates 2022-03-11 12:51:44 +00:00
Austaras
487273fc5b
fix(preset-env): Use core-js-compat and @babel/compat-data directly (#3968) 2022-03-11 12:49:53 +00:00
SWC Bot
666f55e01c chore: Publish crates 2022-03-10 07:48:19 +00:00
Austaras
112f428734
feat(es/compat): Add pure comments for class fields keys (#3939) 2022-03-10 07:13:58 +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
3de647a50a chore: Publish crates 2022-03-05 07:58:10 +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
5f8f114b62 chore: Publish crates 2022-03-04 05:26:32 +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
SWC Bot
9a4e961b2b chore: Publish crates 2022-02-25 19:50:18 +00:00
SWC Bot
8f1aef47d4 chore: Publish crates 2022-02-25 06:10:45 +00:00
SWC Bot
8c94ea9fc5 chore: Publish crates 2022-02-24 09:22:18 +00:00
Donny/강동윤
e35d73adf4
chore(clippy): Improve config (#3691) 2022-02-23 06:07:42 +00:00
SWC Bot
fd606cb286 chore: Publish crates 2022-02-22 09:09:22 +00:00
Donny/강동윤
b1d24702e3
refactor(preset-env): Extract common logic for browserslist support (#3674) 2022-02-22 09:03:40 +00:00
SWC Bot
8012056bd8 chore: Publish crates 2022-02-22 08:11:02 +00:00
Donny/강동윤
210f17af8c
build(swc): Remove unused dependencies (#3673) 2022-02-22 08:05:54 +00:00
SWC Bot
70d670a126 chore: Publish crates 2022-02-22 07:29:55 +00:00
Pig Fang
319996698d
feat(es/preset-env): Upgrade browserslist-rs (#3670) 2022-02-22 16:16:36 +09: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
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
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/강동윤
5e82640b42 chore: Publish crates 2022-02-09 13:57:21 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
Donny
3a238df25a chore: Publish crates 2022-01-27 16:29:12 +09:00
Pig Fang
d3d754bd17
feat(es/preset-env): Upgrade browserslist-rs (#3375) 2022-01-27 07:00:35 +00:00
Donny
ad860c9a1c chore: Publish crates 2022-01-25 06:22:21 +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
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
681de03e4b chore: Publish crates 2022-01-17 13:36:00 +09:00
Donny
0955c3646b chore: Publish crates 2022-01-16 23:32:02 +09:00
Donny/강동윤
357a350390
refactor(*): Cleanup (#3274) 2022-01-15 16:43:34 +09:00
Donny/강동윤
15b604b6d6
refactor(*): Fix some clippy warnings (#3257) 2022-01-14 07:20:45 +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
9a62ef21b7 chore: Publish crates 2022-01-11 16:48:26 +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
6892f27ad7 chore: Publish crates 2022-01-06 20:19:36 +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
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
Austaras
356082ad84
fix(es/utils): Fix handling of new.target (#3145) 2021-12-29 11:38:32 +00:00
OJ Kwon
72c963662d
refactor(*): Drop unused dependencies (#3138) 2021-12-29 15:27:51 +09:00
Donny/강동윤
ec7e0aee25
fix(es/utils): Fix is_valid_ident (#3133)
swc_ecma_utils:
 - Fix `is_valid_ident`. (Closes #2118)
2021-12-28 21:37:38 +09:00
Donny
0951599a7b chore: Publish crates 2021-12-27 17:31:24 +09:00
Pig Fang
83f71c2c0b
feat(es/preset-env): Upgrade browserslist-rs (#3122) 2021-12-27 17:30:05 +09:00
Donny
cdc4676a88 chore: Publish crates 2021-12-20 18:25:51 +09:00
magic-akari
7d125f5cdb
feat(es/preset-env): Add .js to generated imports (#3077) 2021-12-20 09:15:04 +00:00
Donny
3d95ff4e41 chore: Publish crates 2021-12-20 10:26:08 +09:00
Sosuke Suzuki
7beaabd533
feat(es/preset-env): Add ES2022 features to preset-env (#3072) 2021-12-19 14:28:05 +00:00
Donny
23742e3b18 chore: Publish crates 2021-12-19 18:11:51 +09:00
Pig Fang
a1b315a114
feat(es/preset-env): Upgrade browserslist-rs (#3069) 2021-12-19 08:46:32 +00:00
Donny
9b36abbe75 chore: Publish crates 2021-12-15 16:22:00 +09:00
Donny
f86c077a37 chore: Publish crates 2021-12-13 06:46:14 +09:00
Donny
82ece9d0ca chore: Publish crates 2021-12-07 15:15:08 +09: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
Donny
42a93dd8ef chore: Publish crates 2021-12-04 11:53:14 +09:00
Donny
eade0374f2 chore: Publish crates 2021-12-02 17:23:50 +09:00
Pig Fang
3302d1733a
refactor(es/preset-env): Avoid unnecessary unwrap (#2943) 2021-12-02 08:03:28 +00:00
Donny
67dc0d3b94 chore: Publish crates 2021-12-02 10:08:22 +09:00
Austaras
1555ceb8a3
feat(es/transforms/compat): Add loose mode to parameters (#2911)
swc_ecma_utils:
 - Make `WrapperState` implement `Clone`.

swc_ecma_transforms_compat:
 - `paramters`: Fix handling of non-loose mode. (Closes #2800, Closes #2825)
2021-12-02 01:04:01 +00:00
Donny
f8fcee1c46 chore: Publish crates 2021-12-01 21:26:01 +09:00
Pig Fang
8a55870ce5
feat(es/preset-env): Upgrade browserslist-rs (#2927) 2021-12-01 12:18:11 +00:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny
167798b599 chore: Publish crates 2021-11-30 09:41:40 +09:00
Donny
666e3cc71e chore: Revert #2907 2021-11-30 08:42:45 +09:00
Donny
a46ee17281 chore: Publish crates 2021-11-29 19:30:33 +09:00
Pig Fang
5a68a360b4
fix(es/preset-env): Enable "mobile to desktop" (#2907) 2021-11-29 19:29:49 +09:00
Donny
756a9bad6a chore: Publish crates 2021-11-29 16:48:34 +09:00
Pig Fang
af216c1014
chore(es/preset-env): Upgrade browserslist-rs (#2889) 2021-11-29 16:48:07 +09:00
Donny
d4ffce13b5 chore: Publish crates 2021-11-24 10:08:01 +09:00
Donny
c1e99eee3e chore: Publish crates 2021-11-23 19:07:48 +09:00
Donny/강동윤
2c099bfd2c
feat(es/preset_env): Use browserslist-rs (#2845)
swc_ecma_preset_env:
 - Fix `default_path`.
 - Use `browserslist-rs` for query. (Closes #2781)
2021-11-23 19:07:16 +09:00
Donny
2cd565bfc0 chore: Publish crates 2021-11-15 14:31:44 +09:00
Austaras
dc58122283
feat(es/transforms/compat): Add more loose mode (#2611)
swc_ecma_transforms_compat:
- `computed_properties`: Add loose mode.
- `template_literals`: Add loose mode.
- `object_spread`: Add loose mode.
- `optional_chaining`: Add loose mode.
- `nullish_coalescing`: Add loose mode.
- `optional_chaining`: Fix #2734.
2021-11-15 14:31:21 +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