Commit Graph

1615 Commits

Author SHA1 Message Date
Donny/강동윤
bf0007bec0
feat(rplugin): Implement general AST processing plugin system (#2671)
swc_common:
 - Implement `StableAbi` for `BytePos`.
 - Implement `StableAbi` for `Span`.

rplugin:
 - Add `StableAst`.

swc_plugin_api:
 - Drop unused dependencies.

swc_ecma_plugin_ast:
 - Initialize crate.
2021-11-09 18:46:24 +09:00
Donny
797f4fff14 chore: Publish crates 2021-11-09 16:13:52 +09:00
OJ Kwon
8fe0d2583f
fix(es/transforms/compat): Apply regenerator for default function declarations (#2681)
swc_ecma_transforms_compat:
 - `regenerator`: Handle `DefaultDecl::Fn`. (Closes #2677)
2021-11-09 07:07:48 +00:00
Donny/강동윤
9824fdaae2
test(css/codegen): Add tests for parenthesis (#2691)
swc_css_codegen:
 - Ensure that parenthesis is preserved for support query. (https://github.com/vercel/next.js/issues/30570)
 - Ensure that parenthesis is preserved for media query. (https://github.com/vercel/next.js/issues/30480)
2021-11-09 15:48:38 +09:00
Donny/강동윤
22ce68cfaa
fix(swc): Don't print same error twice (#2692) 2021-11-09 15:18:11 +09:00
Donny
bcf1cfa6a1 chore: Publish crates 2021-11-09 15:17:27 +09:00
RiESAEX
7ab3b5b0b8
fix(es/transforms/react): Fix handling of whitespaces (#2638)
swc_ecma_transforms_react:
 - `jsx`: Preserve more whitespaces in input. (Closes #2208)
2021-11-09 06:10:23 +00:00
Alexander Akait
ca2338edbd
test(css/parser): Add a test for BOM (#2686) 2021-11-09 05:46:26 +00:00
Donny/강동윤
368b9e2ff2
chore: Update rustc to prevent CVE-2021-42574 (#2690) 2021-11-09 14:20:02 +09:00
Donny
7e259abae1 chore: Publish crates 2021-11-08 16:26:51 +09:00
Alexander Akait
465c18860e
fix(css/parse): Fix parsing of pseudo elements and pseudo classes (#2672)
swc_css_parser:
 - Exclude whitespaces from pseudo elements and pseudo classes.
2021-11-08 07:22:11 +00:00
Donny
76d9ae7656 chore: Publish crates 2021-11-08 16:01:09 +09:00
OJ Kwon
891591382d
refactor(es/transforms/bugfix): Migrate edge_default_param to VisitMut (#2676) 2021-11-08 06:28:51 +00:00
Donny
6b478ccce0 chore: Publish crates 2021-11-08 15:05:21 +09:00
Alexander Akait
4484d64f94
refactor(css/ast): Remove UniversalSelector (#2673) 2021-11-08 04:29:52 +00:00
Donny
98fc40988c chore: Publish crates 2021-11-08 13:06:54 +09:00
OJ Kwon
01727c0e5a
fix(es/transforms/async_to_generator): Fix handling of this (#2667)
swc_emca_transforms_compat:
 - `async_to_generator`: Do not bind `this` to generator for prototypes.
2021-11-08 12:39:14 +09:00
Donny
fd14b4f1dd chore: Publish crates 2021-11-08 00:29:47 +09:00
Alexander Akait
75e6e08e14
refactor(css/ast): Refactor complex selector to represent all css (#2660)
swc_css_ast:
 - Add a type to represent a child of `ComplexSelector`.
2021-11-08 00:29:25 +09:00
OJ Kwon
94cb4303ae
refactor: Remove trailing whitespace (#2668) 2021-11-07 20:46:12 +09:00
Donny
999ad77a3d chore: Publish crates 2021-11-07 02:27:34 +09:00
Alexander Akait
6ae3af3673
feat(css/ast): Add nested selector (#2641) 2021-11-06 16:58:41 +00:00
Donny
5c2479c005 chore: Publish crates 2021-11-07 01:19:57 +09:00
Alexander Akait
c361982963
refactor(css/ast): Rename NamespacedName to TypeSelector (#2642) 2021-11-06 16:01:50 +00:00
Donny
b3fd7046d7 chore: Publish crates 2021-11-06 18:35:38 +09:00
Alexander Akait
a8e4c72f33
fix(css/parser): Exclude whitespace from span (#2659) 2021-11-06 09:32:24 +00:00
Donny/강동윤
3dc1e765e9
feat(swc): Provide &Program to pass creator (#2665)
swc:
 - Use `impl |prorgram: &Program| -> impl Fold` instead of `impl Fold`. (Closes https://github.com/swc-project/swc/issues/2664)
2021-11-06 18:05:10 +09:00
Donny
0240beccdf chore: Publish crates 2021-11-05 20:48:06 +09:00
Alexander Akait
20f4e2148c
refactor(css/ast): Use names from specification for ast types (#2643)
swc_css_ast:
 - Rename `AttrSelectorOp` to `AttrSelectorMatcher`.
2021-11-05 11:42:51 +00:00
Donny/강동윤
994c9655c8
feat(es/ast): Add utils (#2657)
swc_ecma_ast:
 - Add `as_ident` to `PatOrExpr`.
 - Add `as_ident_mut` to `PatOrExpr`.
 - Replace `Is` macro for `ParOrExpr` with custom impl.
2021-11-05 16:09:08 +09:00
Donny
224972f487 chore: Publish crates 2021-11-05 05:14:56 +09:00
Sosuke Suzuki
d1523dc5e8
fix(es/transforms/compat): Fix static blocks (#2652)
swc_ecma_transforms_compat:
 - `static_blocks`: Use correct name for generated private properties.
2021-11-05 05:14:24 +09:00
Donny/강동윤
a6836368a2
fix(plugin): Fix serialization and deserialization (#2651)
swc_plugin_api:
 - Add `serialize_ast`.
 - Add `deserialize_ast`.
2021-11-04 21:15:18 +09:00
magic-akari
b6a5656f69
fix(node/types): Add es6 to ModuleConfig (#2648) 2021-11-04 11:43:48 +00:00
Donny
46e32a6a72 chore: Publish crates 2021-11-04 19:59:54 +09:00
Donny/강동윤
0414c31480
feat(es/ast): Implement Take for more types (#2649) 2021-11-04 19:59:28 +09:00
Donny
04befab67a chore: Publish crates 2021-11-04 19:27:31 +09:00
Donny/강동윤
380722976a
feat(plugin): Proxy swc_common apis (#2646)
swc_common:
 - Add `Runtime` trait for plugin.
 - Implement `serde` for diagnostics.
 - Proxy diagnostics using `Runtime`.
 - Proxy `HygieneData::with` with `Runtime`.
 - Add implementation of `Runtime` with cargo feature `plugin-rt`.
 - Make `Runtime` implement `StableAbi`.

swc_plugin:
 - Move api code to `swc_plugin_api`.
 - Depend on `swc_common/plugin-mode`.
 - Configure `Runtime` before invoking custom transforms.
 - Use `bincode` for serde.

swc_plugin_runner:
 - Depend on `swc_common/plugin-rt`.
 - Pass `Runtime` implementation to the plugins.
 - Use `bincode` for serde.
2021-11-04 19:24:49 +09:00
Alexander Akait
0b76d29ae4
feat(css/ast): Add SelectorList (#2639)
swc_css_ast:
 - Add `SelectorLsit`.
 - Use `SelectorList` instead of `Vec<ComplexSelector>`.
2021-11-04 09:54:55 +00:00
Alexander Akait
8c61d0d609
feat(css/ast): Add RoundBracketBlock to Value (#2618) 2021-11-04 12:05:29 +09:00
Donny
7403956d4a chore: Publish crates 2021-11-03 22:46:51 +09:00
Donny/강동윤
808d57822b
fix(es/minifier): Fix for @emotion/react and murmur2 (#2637)
swc_ecma_minifier:
 - Check for the operator while folding binary assignments. 
 - `sequences`: More check before inlining into operator assignments.
2021-11-03 22:46:25 +09:00
Donny
a973b0bed4 chore: Publish crates 2021-11-03 13:55:27 +09:00
Donny/강동윤
f4efd7ad92
fix(es/transforms): Fix detection of this (#2634)
swc_ecma_utils:
 - `contains_this_expr`: Exclude `this` in object properties.

swc_ecma_transforms_compat:
 - `arrow`: Exclude `this` in object properties. (https://github.com/vercel/next.js/issues/30592)
 - `parameters`: Exclude `this` in object properties.
2021-11-03 13:53:23 +09:00
Donny
1c5f75485f chore: Publish crates 2021-11-03 13:21:40 +09:00
Donny/강동윤
550584f93c
fix(es/compat): Fix order of transforms (#2629)
swc_ecma_transforms_compat:
 - Change order of `regenerator` and `destructring`. (https://github.com/vercel/next.js/issues/30683, Closes https://github.com/swc-project/swc/issues/2413)
2021-11-03 13:18:43 +09:00
Donny
4e003b60f7 chore: Publish crates 2021-11-03 11:25:56 +09:00
OJ Kwon
12be4b1799
fix(es/transforms/typescript): Allow (foo as any) = bar (#2631)
swc_ecma_transforms_typescript:
 - `strip`: Handle paren in the LHS of assignment expressions properly. (Closes https://github.com/swc-project/swc/issues/2606)
2021-11-03 11:25:18 +09:00
Donny/강동윤
04238d0b93
feat(swc_common): Allow dylib (#2628)
swc_common:
 - Add `dylib` to `crate-type`.
2021-11-02 23:54:20 +09:00
Donny
74aa0068db chore: Publish crates 2021-11-02 20:15:43 +09:00