Donny/강동윤
90aa6c8318
fix(es/react): Allow spread children ( #6505 )
...
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/2037 .
2022-11-24 15:21:51 +00:00
Donny/강동윤
e6b1dd4731
feat(es/testing): Add an option to test sourcemap ( #6079 )
2022-10-07 05:52:22 +00:00
Donny/강동윤
1a182ef8d9
perf(es): Optimize memory layout of AST ( #5829 )
2022-09-20 12:47:21 +09:00
Donny/강동윤
1085667049
perf(es/minifier): Enable parallel processing ( #5705 )
2022-09-01 13:36:30 +09:00
Alex Kirszenberg
14606d9222
feat(es/react): Add VisitMut
bound to the return type of react preset ( #5499 )
2022-08-17 17:34:32 +09:00
Donny/강동윤
3eb1f4b2b1
chore(ci): Fix lints ( #5462 )
2022-08-12 13:13:35 +00:00
Donny/강동윤
037a53d5d1
perf(es/ast): Use Atom
in some places ( #5271 )
2022-07-22 20:09:25 +09:00
Austaras
375774d31e
fix(es): Check the syntax context of arguments
( #5174 )
2022-07-13 10:29:03 +00:00
magic-akari
cc555ef225
fix(es/react): Don't panic on invalid react pragma ( #5101 )
2022-07-04 11:55:08 +00:00
magic-akari
4d5783d9cd
feat(es/modules): Add pure annotations to interop functions ( #5087 )
2022-07-03 05:54:07 +00:00
magic-akari
9e162dcbae
fix(es/modules): Improve compatibility with cjs lexer ( #5080 )
2022-07-01 08:37:04 +00:00
magic-akari
fa68cbd74a
refactor(es/module): Implement new module transformer ( #4758 )
2022-06-27 12:32:06 +00:00
Donny/강동윤
36d960c7e9
perf(es/hygiene): Make hygiene
faster ( #4952 )
2022-06-15 14:36:57 +00:00
LongYinan
db9f7a5ad4
chore(ci): Fix publish build on Windows ( #4970 )
2022-06-14 15:58:10 +00:00
Donny/강동윤
3e03ebf8bb
fix(es/parser): Don't assume the length of char ( #4967 )
2022-06-14 07:05:35 +00:00
Donny/강동윤
35c93be60f
perf(es/transforms): Make transforms parallel ( #4939 )
2022-06-11 07:42:43 +00:00
OJ Kwon
6bc33cb042
feat(es/codegen): Support other source map implementations ( #4879 )
2022-06-05 14:40:55 +00:00
Donny/강동윤
a487fc1d28
refactor(es/transforms): Remove concurrent
( #4808 )
2022-05-26 15:58:19 +00:00
Donny/강동윤
5f45a3d496
fix(es/react): Fix span of error messages ( #4704 )
2022-05-18 21:34:36 +00:00
Donny/강동윤
da49f810db
feat(es): Add check for BytePos::DUMMY
( #4675 )
2022-05-16 03:29:24 +00:00
Donny/강동윤
98e4845fce
build(repo): Update rustc
( #4667 )
2022-05-15 09:03:54 +00:00
Austaras
1150e842ed
refactor(es/react): Use proper ident scope for react refresh ( #4649 )
2022-05-15 03:51:25 +00:00
Donny/강동윤
3b2b8c4512
fix(es/config): Merge jsc.transform
correctly ( #4615 )
2022-05-11 14:28:40 +09: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
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
Alexander Akait
f39d3aca4d
feat(es/ast): Add raw
to Num
( #4245 )
2022-04-05 12:46:35 +00:00
Alexander Akait
634d732803
feat(es/ast): Add raw
to Str
( #4071 )
2022-03-22 07:54:08 +00:00
Donny/강동윤
bb08354950
fix(es/react): Fix _createElement
( #4070 )
2022-03-17 22:13:23 +00:00
Donny/강동윤
3d43a9b69d
feat(es/testing): Print comments in test_fixture
( #3920 )
2022-03-09 02:54:27 +00:00
Donny/강동윤
b485b5a1d5
fix(es/react): Fix logic for extracting refresh comments ( #3796 )
2022-03-01 05:58:40 +00:00
OJ Kwon
5ae907f6f2
fix(es/react): Catch refresh directives widely ( #3791 )
2022-03-01 04:26:37 +00:00
Donny/강동윤
47ccff8a7c
feat(es/parser): Provide more api for reducing binary size ( #3747 )
2022-02-26 09:29:05 +09:00
Donny/강동윤
fd223793e8
refactor(es/transforms): Use recommended ast apis ( #3735 )
2022-02-25 06:50:19 +00:00
Donny/강동윤
135acf3b42
refactor(es): Improve ast apis ( #3690 )
2022-02-23 05:37:07 +00: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
LongYinan
9608605772
build(node-swc): Fix GLIBC < 2.18 compatible issues and android arm binary loading issue ( #3314 )
2022-01-20 02:21:24 +00:00
Austaras
9e636c7e58
refactor(es): Add visit_obj_and_computed
macro ( #3304 )
2022-01-19 23:11:52 +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/강동윤
e8670b3383
refactor(es): More fix for clippy ( #3280 )
2022-01-16 14:33:06 +09:00
Donny/강동윤
88a258a5fb
fix(es/react): Fix createElement
( #3277 )
...
swc_ecma_transforms_react:
- Fix arguments passed to `_createElement`. (https://github.com/vercel/next.js/issues/33291 )
2022-01-15 21:55:58 +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
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
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
Austaras
f8f04e031e
refactor(es/react/fast-refresh): Use VisitMut
( #3129 )
2021-12-28 22:26:59 +09:00
Shinobu Hayashi
ed704c906f
fix(es/react): Implement proper development
handling ( #2741 )
2021-12-10 09:19:03 +00: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/강동윤
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