Commit Graph

299 Commits

Author SHA1 Message Date
Donny/강동윤
c2c923e205 chore: Publish crates 2022-07-01 11:50:45 +09:00
SWC Bot
1a6997fb49 chore: Publish crates 2022-06-29 11:29:36 +00:00
magic-akari
ef543b1b22
fix(es/modules): Handle this in class methods (#5065) 2022-06-29 11:27:06 +00: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
SWC Bot
74527a6ac5 chore: Publish crates 2022-06-28 10:50:35 +00:00
magic-akari
e13364f976
fix(es/modules): Handle module references in binding idents (#5055) 2022-06-28 10:47:46 +00:00
SWC Bot
e599d9cd5d chore: Publish crates 2022-06-28 06:34:03 +00:00
magic-akari
2cc229e6fb
feat(es/modules): Optimize a dynamic import with a literal path (#5049) 2022-06-28 06:31:24 +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
4883fe8011 chore: Publish crates 2022-06-25 05:06:17 +00:00
magic-akari
04fc1cb429
fix(es/compat): Fix name conflict of Array (#5034) 2022-06-25 04:55:59 +00:00
SWC Bot
a2fa4a78e2 chore: Publish crates 2022-06-18 09:39:27 +00:00
magic-akari
d736b31e08
fix(es/typescript): Preserve export = for AMD (#4995) 2022-06-18 09:31:08 +00:00
Donny/강동윤
36d960c7e9
perf(es/hygiene): Make hygiene faster (#4952) 2022-06-15 14:36:57 +00:00
Donny/강동윤
0782c533b5 chore: Publish crates 2022-06-15 13:59:06 +09:00
LongYinan
db9f7a5ad4
chore(ci): Fix publish build on Windows (#4970) 2022-06-14 15:58:10 +00:00
Donny/강동윤
4a27e6f84a
fix(es/helpers): Allow using external helpers with type: module (#4962) 2022-06-13 18:41:35 +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
SWC Bot
7c9ab26256 chore: Publish crates 2022-06-08 07:24:11 +00:00
Donny/강동윤
36a82ccfc9
feat(es/modules/amd): Convert ts import equals to normal AMD import (#4906) 2022-06-08 07:21:17 +00:00
SWC Bot
73f5ca754e chore: Publish crates 2022-06-08 03:33:59 +00:00
Donny/강동윤
10f6849f7a
fix(es/modules/amd): Support export * as foo from 'foo' (#4904) 2022-06-08 03:30:54 +00:00
Donny/강동윤
eb0acc3859 chore: Publish crates 2022-06-06 04:54:19 +09:00
SWC Bot
424e62e663 chore: Publish crates 2022-05-26 16:01:22 +00:00
SWC Bot
2086e66eb3 chore: Publish crates 2022-05-26 13:09:21 +00:00
Donny/강동윤
f4c6a20654
fix(es/modules): Fix lazy option of common js (#4807) 2022-05-26 13:06:43 +00:00
SWC Bot
a163279c88 chore: Publish crates 2022-05-26 11:35:19 +00:00
SWC Bot
e9ce992250 chore: Publish crates 2022-05-25 18:11:42 +00:00
OJ Kwon
2b03047cb0
fix(es/modules): Fix local scoped amd require (#4800) 2022-05-25 18:08:49 +00:00
SWC Bot
85b1d35cc9 chore: Publish crates 2022-05-24 11:03:16 +00:00
Donny/강동윤
75bb8586cc
fix(es/modules): Adjust absolute path while rewriting imports (#4776) 2022-05-24 20:00:26 +09:00
Donny/강동윤
995e9661cc chore: Publish crates 2022-05-24 13:15:57 +09:00
SWC Bot
fa649d87be chore: Publish crates 2022-05-24 04:14:30 +00:00
Donny/강동윤
b8d2fb8546
feat(es/helpers): Import only used helpers (#4767) 2022-05-24 04:09:59 +00:00
Donny/강동윤
417b2182ce
fix(es/loader): Fix jsc.paths on windows (#4739) 2022-05-22 20:12:22 +00:00
SWC Bot
032d584265 chore: Publish crates 2022-05-21 19:58:14 +00:00
Donny/강동윤
d9bb59a8cb
fix(es/modules/cjs): FIx detection of exported names (#4737) 2022-05-21 19:55:35 +00:00
SWC Bot
73d049123c chore: Publish crates 2022-05-21 18:34:49 +00:00
OJ Kwon
886585b90e
feat(es/modules/amd): Support local-scoped amd requires (#4727) 2022-05-21 18:32:34 +00:00
SWC Bot
fc071d0ae7 chore: Publish crates 2022-05-17 11:08:15 +00:00
brightwu
7ce572b497
fix(es/modules): Fix reassignment of exported vars (#4688) 2022-05-17 11:06:03 +00:00
SWC Bot
e3ef5f8578 chore: Publish crates 2022-05-15 16:46:18 +00:00
Daniel Grant
49c40afb7e
fix(es/modules): Fix handling of import.meta.url (#4670) 2022-05-15 16:44:02 +00:00
SWC Bot
ead25ee153 chore: Publish crates 2022-05-15 05:09:48 +00:00
Donny/강동윤
20692cdff1
fix(es/modules): Fix jsc.paths (#4620) 2022-05-12 04:14:51 +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
RiESAEX
086840956d
fix(es): Use unresolved_mark (#4573) 2022-05-08 09:19:26 +00:00
SWC Bot
e4ce388632 chore: Publish crates 2022-05-06 04:10:39 +00:00
SWC Bot
b38f6ac3e3 chore: Publish crates 2022-05-04 15:10:39 +00:00
Donny/강동윤
f3b262e340
fix(es/modules): Preserve extensions (#4524) 2022-05-04 15:07:28 +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
RiESAEX
7d40208377
fix(es/helpers): Update _interopRequireWildcard (#4479) 2022-04-30 00:56:48 +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
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
SWC Bot
c769c95ac5 chore: Publish crates 2022-04-18 11:00:14 +00:00
Donny/강동윤
5c1ce0ba05
fix(es/modules/cjs): Fix order of statements (#4361) 2022-04-18 10:57:55 +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
Austaras
720244fff9
fix(es/module): Support top-level await in dynamic imports (#4277) 2022-04-08 15:28:10 +09: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
Donny/강동윤
1f466e1d2f
chore(ci): Fix benchmark action (#4242) 2022-04-04 20:12:03 +09: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
SWC Bot
6125de9808 chore: Publish crates 2022-03-28 12:20:51 +00:00
RiESAEX
ea0de90137
fix(es/codegen): Emit sourcemap of key-value properties correctly (#4166) 2022-03-27 14:26:53 +09: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
SWC Bot
2ea781bc26 chore: Publish crates 2022-03-19 10:03:42 +00:00
meskill
6ac7934017
fix(es/module/cjs): Fix conflict of a local export and exports-alls (#4089) 2022-03-19 09:56:14 +00:00
SWC Bot
e7d450c8af chore: Publish crates 2022-03-19 07:07:31 +00:00
Donny/강동윤
d0f687bf44
feat(es/module/cjs): Support import.meta.url (#4087) 2022-03-19 07:05:11 +00:00
Donny/강동윤
22d005e224
fix(es/modules): Fix sourcemap, really (#4074) 2022-03-18 08:26:58 +00:00
SWC Bot
a564ced26a chore: Publish crates 2022-03-18 03:05:36 +00:00
Donny/강동윤
9458f08092
feat(es/modules): Support namespaced reexports (#4073) 2022-03-18 03:03:02 +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/강동윤
834cd4f7b6
fix(es/modules): Use correct span for ExportAlls (#4038) 2022-03-16 17:10:47 +09:00
Donny/강동윤
dac84b98e3
doc(api/rust): Add examples (#4002) 2022-03-13 22:07:34 +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
666f55e01c chore: Publish crates 2022-03-10 07:48:19 +00:00
OJ Kwon
86ea23785d
perf(*): Update tracing to improve performance of disabled spans (#3932) 2022-03-10 03:15:49 +00:00
SWC Bot
1fbe209c53 chore: Publish crates 2022-03-09 14:16:10 +00:00
magic-akari
dc457b4883
fix(es/module): Use correct return values for suffix update expressions (#3927) 2022-03-09 23:14:06 +09:00
SWC Bot
531812c28a chore: Publish crates 2022-03-09 06:32:12 +00:00
magic-akari
8559fc9623
fix(es/module): Fix exported vars with bigint values (#3909) 2022-03-09 06:30:28 +00:00
SWC Bot
782df70560 chore: Publish crates 2022-03-08 09:25:38 +00:00
magic-akari
534fc52a72
fix(es/module): Make exported vars follow specification (#3906) 2022-03-08 09:23:40 +00:00
SWC Bot
d72a2f32af chore: Publish crates 2022-03-07 20:41:37 +00:00
Guillaume Malette
f575b1bc48
fix(es/module/cjs): Allow re-exports to be lazy (#3856) 2022-03-07 20:39:45 +00:00
Donny/강동윤
8e30d83d14
fix(es/module): Revert fix for jest.spyOn 2022-03-07 18:21:14 +09: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
cc84e9595e chore: Publish crates 2022-03-06 12:36:47 +00:00
Donny/강동윤
a65755fd9a
fix(es/module): Fix jsc.paths (#3879) 2022-03-06 12:33:48 +00:00
SWC Bot
308d1b42ee chore: Publish crates 2022-03-06 05:04:57 +00:00
Donny/강동윤
6a005fc15a
fix(es/module): Visit the value of class properties (#3877) 2022-03-06 14:03:08 +09:00
SWC Bot
fd453b9170 chore: Publish crates 2022-03-05 19:34:45 +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
Guillaume Malette
1f70fa6e08
feat(es/module/cjs): Support regex-based patterns for lazy config (#3704) 2022-03-05 07:56:18 +00:00
SWC Bot
add86a7e6a chore: Publish crates 2022-03-05 06:48:00 +00:00
SWC Bot
88ee527917 chore: Publish crates 2022-03-04 07:06:49 +00:00
Donny/강동윤
9546eefe72
fix(es/module): Fix jest.spyOn (#3845) 2022-03-04 07:04:56 +00:00
SWC Bot
5f8f114b62 chore: Publish crates 2022-03-04 05:26:32 +09:00
Donny/강동윤
8beaa202e2
fix(es/minifier): Fix optimizations of terminating expressions (#3794) 2022-03-01 09:55:45 +00:00
SWC Bot
b75a038706 chore: Publish crates 2022-03-01 14:22:55 +09:00
underfin
557a520a6d
feat(es/modules): Support system js (#3659) 2022-03-01 05:18:55 +00:00
SWC Bot
cc2b753895 chore: Publish crates 2022-02-27 10:01:46 +00:00
magic-akari
ad0a8539e0
feat(es/module): Workaround stack overflow bug of JavaScriptCore related to too many exports (#3763) 2022-02-27 09:59:40 +00:00
SWC Bot
4fe874dd77 chore: Publish crates 2022-02-26 15:11:21 +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
9a4e961b2b chore: Publish crates 2022-02-25 19:50:18 +00:00
Donny/강동윤
1094018153
perf(es/modules): Reduce usage of generics (#3743) 2022-02-25 19:46:46 +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
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
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
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
magic-akari
fa0216d908
fix(es/modules): Hoist named exports (#3479) 2022-02-09 04:50:33 +00:00
Donny/강동윤
e9ceb57584 chore: Publish crates 2022-02-09 12:01:52 +09:00
RiESAEX
ff6eb272a0
fix(es/modules): Use correct StrKind after rewriting import path (#3489) 2022-02-09 12:01:22 +09:00
Donny/강동윤
38e2ffb929 chore: Publish crates 2022-02-05 14:49:39 +09:00
RiESAEX
745604b26d
fix(es/modules): Allow using a dynamic import with an expression from another import (#3450) 2022-02-05 14:49:13 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
Donny
b104fd3db0 chore: Publish crates 2022-02-01 22:45:54 +09:00
Donny/강동윤
2c99ca1bab
fix(es/modules): Fix span of imports (#3418)
swc_ecma_transforms_module:
 - `common_js`: Use original span with the syntax conext of an import specifier.
2022-02-01 22:37:42 +09:00
Donny
e215e077ef chore: Publish crates 2022-01-28 15:37:22 +09:00