Commit Graph

893 Commits

Author SHA1 Message Date
Alexander Akait
1904944bf7
refactor(css/ast): Use Dimension instead of UnitValue (#3401) 2022-01-30 12:15:05 +00:00
Donny
db674354d3 chore: Publish crates 2022-01-30 14:04:12 +09:00
Alexander Akait
2dc31d9d14
feat(css/ast): Add / to the delimiters (#3402) 2022-01-30 04:49:48 +00:00
Donny
b28b636986 chore: Publish crates 2022-01-30 13:14:38 +09:00
Alexander Akait
3c8d985a07
fix(css/parser): Fix bugs related to url (#3403) 2022-01-30 04:10:58 +00:00
Alexander Akait
64383e385c
test(css/codegen): Add more tests (#3405) 2022-01-30 12:37:21 +09:00
Donny
a94f1ddb6f chore: Publish crates 2022-01-30 12:36:38 +09:00
Artur
9dec9236f7
feat(es/lints): Implement no-debugger rule (#3398) 2022-01-30 03:33:46 +00:00
Donny
7de339530c chore: Publish crates 2022-01-30 11:59:53 +09:00
Alexander Akait
3ded88bffc
fix(css/parser): Fix parser logic related to case insensivity (#3382) 2022-01-30 11:59:20 +09:00
Donny
930a1c2405 chore: Publish crates 2022-01-29 13:37:17 +09:00
Donny/강동윤
cebc5dc148
fix(swc): Run resolver before everything (#3400)
swc:
 - Use `ts_resolver` for typescript. This is required to handle decorators properly.
 - Apply `resolver` before creating custom passes.
2022-01-29 13:36:34 +09:00
Donny
c49ffc2c8b chore: Publish crates 2022-01-29 12:10:57 +09:00
Alexander Akait
b31619d48e
refactor(css/ast): Refactor delimited values (#3397) 2022-01-29 12:10:29 +09:00
Donny/강동윤
74b433080b
refactor(es/minifier): Remove unused crates (#3395) 2022-01-28 20:17:08 +09:00
Donny/강동윤
839d0ac480
refactor(es/parser): Flatten tests to make git faster (#3393) 2022-01-28 19:11:30 +09:00
Donny
0e7d525352 chore: Publish crates 2022-01-28 16:09:16 +09:00
Donny/강동윤
91d78000ea
feat(es/minifier): Implement drop_console (#3392)
swc_ecma_minifier:
 - Merge `drop_console` into pure optimizer.
 - Implement `drop_console`. (Closes #2321)
2022-01-28 16:08:41 +09:00
Donny
e215e077ef chore: Publish crates 2022-01-28 15:37:22 +09:00
RiESAEX
1dcc188dd8
fix(es/modules): Allow using dynamic import with a name from another import (#3390) 2022-01-28 06:36:20 +00:00
Donny
6690354f79 chore: Publish crates 2022-01-28 13:43:58 +09:00
Donny/강동윤
38c2499358
fix(es/minifier): Fix evaluator (#3391) 2022-01-28 13:43:29 +09:00
Donny
3eaebdf479 chore: Publish crates 2022-01-28 01:14:47 +09:00
magic-akari
9eb77738fd
fix(es/compat): Add the missing span in optional_chaining (#3384) 2022-01-28 01:14:09 +09:00
Donny
2cdd4300cf chore: Publish crates 2022-01-28 01:13:16 +09:00
Alexander Akait
c73835bfeb
feat(css/parser): Improve selector parser (#3386) 2022-01-28 01:11:26 +09:00
Donny/강동윤
78e83a386b
chore(repo): Add clippy to git push hook (#3383) 2022-01-28 00:22:43 +09:00
Donny
33d906caf3 chore: Publish crates 2022-01-27 21:45:13 +09:00
Alexander Akait
0537ef1a11
feat(css/codegen): Implement minify: true (#3369) 2022-01-27 21:44:38 +09:00
Donny/강동윤
0359deb484
perf(node-swc): Speed up parse and parseFile (#3380)
node-swc:
 - Use a worker thread for json serialization.
2022-01-27 19:01:58 +09:00
Donny
3c50e82193 chore: Publish crates 2022-01-27 19:00:30 +09:00
Donny
3bda85e303 chore: Publish v1.2.135 2022-01-27 17:42:57 +09:00
Donny/강동윤
7ef3bfa5b6
refactor(es/minifier): Merge execution tests into a file to make git faster (#3377) 2022-01-27 17:41:43 +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
6b2f3bb8a0 chore: Publish crates 2022-01-27 15:36:55 +09:00
Donny/강동윤
68e9017376
fix(es/minifier): Improve minifier (#3350)
swc_ecma_transforms_optimization:
 - `expr_simplifier`: Track more changes.

swc_ecma_minifier:
 - Analyze after applying the pure optimizer.
 - Preserve access to a variable not in scope.
 - `compress`: Remove string literal if it was not a directive.
 - `pure/collapse_vars`: Merge vars declared in the first statement into one with initializers if `collapse_vars` and `join_vars` are enabled.
 - `unused`: Use `usage_count` instead of `ref_count`.
 - `unused`: Fix dropping rule for member expressions.
 - `unused`: Fix dropping rule for declarations.
 - `hoist_props`: Preserve exported items.
2022-01-27 15:36:22 +09:00
Donny
bcc3ae86ae chore: Publish crates 2022-01-26 20:39:45 +09:00
Artur
987213797f
feat(es/lints): Implement "no-console" rule (#3269)
swc_ecma_lints:
 - Add types for general configuration.
 - Add `no-console`rule.

swc:
 - Expose the lint config via `jsc.lints`.
2022-01-26 20:39:19 +09:00
Donny
8a0ebebb08 chore: Publish crates 2022-01-26 20:37:51 +09:00
Donny
316d4762c3 chore: Publish crates 2022-01-26 20:36:44 +09:00
Alexander Akait
dfa0286aca
feat(css/ast): Add types for dashed identifiers and @color-profile at-rules (#3364) 2022-01-26 20:35:49 +09:00
Donny
fb299a3bb1 chore: Publish crates 2022-01-26 13:47:13 +09:00
Alexander Akait
50521d8ffa
feat(css/parser): Improve parsing of urls (#3362) 2022-01-26 04:45:49 +00:00
Donny
ac2bb9b7bd chore: Publish crates 2022-01-26 13:12:02 +09:00
Donny/강동윤
703972dc29
fix(es/minifier): Prepend/append correctly (#3367)
swc_ecma_minifier:
 - Add some assertions for injections.
 - Fix prepend/append logic of statements.
2022-01-26 13:11:26 +09:00
Donny
14e87d3a95 chore: Publish crates 2022-01-26 01:31:13 +09:00
Alexander Akait
6fc7562686
refactor(css/ast): Rename PercentValue to Percent (#3363) 2022-01-25 14:44:28 +00:00
Donny
a5ba590450 chore: Publish crates 2022-01-25 22:51:07 +09:00
Alexander Akait
7787f90da0
refactor(css/ast): Fix type definitions related to @import at-rule (#3351) 2022-01-25 22:50:23 +09:00
Donny
74b0624c0c chore: Publish v1.2.134 2022-01-25 17:28:37 +09:00
Donny
4a4cb731be chore: Publish crates 2022-01-25 17:24:18 +09:00
Donny/강동윤
b1a8db6194
fix(es/block-scoping): Pop scope correctly on early returns (#3360)
swc_ecma_transforms_compat:
 - `block_scoping`: Pop scope even on fast-path.
2022-01-25 17:22:58 +09:00
OJ Kwon
a8debc17f6
feat(plugin): Pass host context to plugins for diagnostics emission (#3359) 2022-01-25 08:13:39 +00:00
Donny
27a8bf5104 chore: Publish crates 2022-01-25 14:48:41 +09:00
Yunfei He
fcb7288eb6
feat(es/codegen): Emit comments of Module and Script (#3358) 2022-01-25 14:48:03 +09:00
Donny
ad860c9a1c chore: Publish crates 2022-01-25 06:22:21 +09:00
RiESAEX
afdb168aad
fix(es/loader): Add an option to resolve symlinks with true as a default (#3340) 2022-01-24 21:21:06 +00:00
Donny
29f3446df1 chore: Publish crates 2022-01-25 05:57:14 +09:00
Austaras
29aaac1f15
fix(es/compat): Handle nested functions in private_field (#3355) 2022-01-24 20:55:43 +00:00
Donny
df2ca10cb6 chore: Publish crates 2022-01-25 05:22:20 +09:00
Alexander Akait
c7e5faea5c
feat(css/ast): Add Ratio, which is defined by spec (#3335) 2022-01-24 14:27:10 +00:00
Donny
79ab4d6138 chore: Publish crates 2022-01-24 22:07:14 +09:00
Donny/강동윤
d9dc2b99dd
fix(swc): Respect jsc.experimental.keepImportAssertions (#3352)
swc:
 - Fix `Merge` impl of `JscExperimental`.
2022-01-24 22:06:17 +09:00
Donny
b7c2e13237 chore: Publish crates 2022-01-24 21:11:03 +09:00
Donny/강동윤
8007b2dc93
feat(es/minifier): Handle array literals in sequences (#3348)
swc_ecma_minifier:
 - `sequences`: Implement more rules for array literals.
2022-01-24 21:10:20 +09:00
OJ Kwon
438649818f
refactor(plugin): Remove multivalue polyfill (#3346) 2022-01-24 15:13:30 +09:00
Donny
2d26041d1d chore: Publish crates 2022-01-24 15:11:53 +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
efdbda5808 chore: Publish crates 2022-01-24 00:19:56 +09:00
Donny/강동윤
6921ffbbda
fix(es/minifier): Respect block scoping while negating if statements (#3344)
swc_ecma_minifier:
 - Don't negate a if statement if it has `let`/`const` binding.
2022-01-24 00:19:33 +09:00
Donny
ffe793660d chore: Publish crates 2022-01-23 21:22:03 +09:00
Alexander Akait
c664eafdef
refactor(css/ast): Merge several kinds of blocks into a single type (#3336) 2022-01-22 14:10:25 +00:00
Donny
c977ce3ed1 chore: Publish crates 2022-01-22 17:11:56 +09:00
magic-akari
da709fe3d3
fix(es/typescript): Handle typescript enums with string values (#3339) 2022-01-22 08:10:59 +00:00
padorang684
b2bf38d025
fix(es/module): Remove .jsx file extension (#3334) 2022-01-21 14:10:33 +00:00
Donny
919c49b78b chore: Publish crates 2022-01-21 22:33:10 +09:00
Alexander Akait
9f3806029c
fix(css): Fix @supports at-rule (#3329) 2022-01-21 22:32:49 +09:00
Donny
4ee4672e4d chore: Publish crates 2022-01-21 14:01:51 +09:00
Donny/강동윤
d52a1f3899
fix(es/minifier): Don't inline a var if the initializer is reassigned (#3333)
swc_ecma_minifier:
 - Consider reassignment to initializer while inlining a variable.
2022-01-21 14:01:20 +09:00
Donny
29985df91d chore: Publish crates 2022-01-21 11:46:07 +09:00
Alexander Akait
f89ffa67ae
fix(css): Fix @keyframes at-rule (#3331) 2022-01-21 01:55:49 +00:00
Donny
846a91e14c chore: Publish crates 2022-01-21 10:25:41 +09:00
Donny/강동윤
4f23d651d1
fix(es/minifier): Consider capturing while inlining (#3322)
swc_ecma_minifier:
 - Don't inline functions if it captures the environment.
2022-01-21 10:24:41 +09:00
Donny
57e79b6fce chore: Publish crates 2022-01-21 10:03:21 +09:00
Alexander Akait
34943ffa15
fix(css): Fix the type definition of @support at-rules (#3330) 2022-01-21 00:57:29 +00:00
Donny
af53b9487f chore: Publish crates 2022-01-20 23:57:38 +09:00
magic-akari
6d1ad368ac
fix(es/compat): Fix regression of destructuring (#3326) 2022-01-20 14:46:58 +00:00
Donny
2cc852a0b5 chore: Publish crates 2022-01-20 23:19:23 +09:00
Alexander Akait
506a31078a
fix(css/parser): Fix parsing of at rules (#3328) 2022-01-20 14:15:36 +00:00
LongYinan
8a76935ca2
perf(node): Avoid cloning options (#3325) 2022-01-20 10:47:37 +00:00
Donny
faacce3246 chore: Publish crates 2022-01-20 18:34:36 +09:00
Donny
848e9c8b8a chore: Publish v1.2.133 2022-01-20 17:13:10 +09:00
Donny
e2424af430 chore: Publish crates 2022-01-20 16:10:32 +09:00
Donny
f62e6312d5 chore: Publish crates 2022-01-20 16:07:42 +09:00
Donny/강동윤
57204e39cd
fix(es/minifier): Don't inline functions used as arguments (#3320)
swc_ecma_minifier:
 - Preserve a variable initialized with a function expression if it's used as an argument.
2022-01-20 16:06:23 +09:00
Donny
e0c362b978 chore: Publish v1.2.132 2022-01-20 12:04:05 +09:00
Donny
cb50328d85 chore: Publish crates 2022-01-20 11:58:57 +09:00
Alexander Akait
0723ee2828
fix(css): Fix parsing of media queries (#3318)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-01-20 02:57:24 +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
Donny
1bd01b4829 chore: Publish crates 2022-01-20 10:34:54 +09:00
David Campion
5af79f634b
doc(repo): Update contributing docs (#3298) 2022-01-20 10:08:28 +09:00
Donny
ca2598391c chore: Publish v1.2.131 2022-01-19 23:33:01 +09:00
Donny
11aac9b89f chore: Publish crates 2022-01-19 23:17:46 +09:00
Donny/강동윤
b4d21bf077
fix(es/minifier): Prevent infinite loop due to negation (#3310)
swc_ecma_minifier:
 - Don't mark as modified while negating.
2022-01-19 23:17:17 +09:00
Donny
70ce6a0e32 chore: Publish crates 2022-01-19 23:12:32 +09:00
Austaras
9e636c7e58
refactor(es): Add visit_obj_and_computed macro (#3304) 2022-01-19 23:11:52 +09:00
Donny
b4f268fa23 chore: Publish crates 2022-01-19 17:39:58 +09:00
Donny/강동윤
1aa494b1c0
fix(es/minifier): Fix logic for checking arguments (#3313)
swc_ecma_minifier:
 - Don't mark `arguments` in nested scope as a inline blocker.
2022-01-19 17:39:24 +09:00
Donny
4966af8273 chore: Publish crates 2022-01-19 16:38:33 +09:00
Donny/강동윤
289122009b
refactor(es/minifier): Fix clippy warnings (#3312) 2022-01-19 16:37:55 +09:00
Donny
173a3a2ac9 chore: Publish crates 2022-01-19 13:25:21 +09:00
Donny/강동윤
18cd98e54c
doc(swc): Document typescript::strip (#3305) 2022-01-19 13:24:35 +09:00
Donny
dca1c919c2 chore: Publish crates 2022-01-18 20:52:56 +09:00
Donny/강동윤
8e796cdc0a
fix(es/minifier): Don't emit invalid code (#3302)
swc_ecma_minifier:
 - Add lots of debug assertions for invalid codes.
 - Remove all invalid AST nodes eagerly.
 - `pure`: Normalize `PatOrExpr`.
 - `analyzer`: Handle `PatOrExpr` correctly.
2022-01-18 20:52:21 +09:00
Donny
1e4bf76c2b chore: Publish crates 2022-01-18 16:46:13 +09:00
Donny/강동윤
210ecf83bb
feat(es/minifier): Drop more expressions from parallel optimizer (#3303)
swc_ecma_minifier:
 - `pure`: Implement more rule for dropping useless expressions.
2022-01-18 16:45:47 +09:00
Donny
cea7d21ca4 chore: Publish crates 2022-01-18 12:52:37 +09:00
Donny/강동윤
18a11d7c8f
fix(es/minifier): Remove more side-effect-free expressions. (#3301)
swc_ecam_minifier:
- `pure`: Drop more binary expressions.
- `pure`: Drop more literals.
2022-01-18 12:51:31 +09:00
Donny
3d7d96588e chore: Publish crates 2022-01-18 12:26:37 +09:00
OJ Kwon
c6ffdc8717
feat(plugin): Add PluginError (#3300) 2022-01-18 12:26:04 +09:00
Donny
5a08327784 chore: Publish crates 2022-01-18 11:30:19 +09:00
asquared31415
641265b147
fix(common): Use siphasher directly and upgrade transitive dependencies to avoid UB (#3299) 2022-01-18 11:29:53 +09:00
Donny
d7964dd547 chore: Publish crates 2022-01-17 22:42:52 +09:00
Donny
ba4083959f chore: Publish crates 2022-01-17 22:41:25 +09:00
Austaras
89235b8294
fix(es/compat): Apply static_blocks before class_properties (#3292) 2022-01-17 13:20:02 +00:00
Donny
be33d20baf chore: Publish crates 2022-01-17 16:18:53 +09:00
Donny/강동윤
9a898951bc
fix(es/resolver): Ignore names of jsx attributes (#3289)
swc_ecma_transforms_base:
 - Ignore names of jsx attributes. (Closes #2854)
2022-01-17 16:18:07 +09:00
Donny
d696c324fb chore: Publish crates 2022-01-17 16:05:12 +09:00
Satish Srinivasan
2352920889
feat(es/compat): Use remove useless source map entries generated by classes (#3242) 2022-01-17 06:48:31 +00:00
Donny
a424ac30ed chore: Publish crates 2022-01-17 15:17:30 +09:00
Donny/강동윤
fa5c063144
fix(es/minifier): Inline into interpolations in tagged template literals (#3287)
swc_ecma_minifier:
 - Inline into tagged template literals. (Closes #2923)
2022-01-17 15:17:01 +09:00
Donny
023fc956ae chore: Publish crates 2022-01-17 14:30:25 +09:00
Donny/강동윤
b55ae4b312
fix(es/minifier): Fix analysis of unary expressions (#3286)
swc_ecma_minifier:
 - Mark update as usage and assignment. (Closes #3265)
2022-01-17 14:28:35 +09:00
Donny
a282146f7f chore: Publish v1.2.130 2022-01-17 13:38:10 +09:00
Donny
681de03e4b chore: Publish crates 2022-01-17 13:36:00 +09:00
Austaras
90a62bb215
refactor(es/utils): Merge the super field visitor with FnEnvHoister (#3279) 2022-01-17 13:35:32 +09:00
Donny
7ff5f0f9f2 chore: Publish crates 2022-01-17 00:22:39 +09:00
RiESAEX
b76d1da699
fix(es/transforms): Handle template literals within jsonify pass (#3282) 2022-01-16 14:57:12 +00:00
Donny
0955c3646b chore: Publish crates 2022-01-16 23:32:02 +09:00
Niklas Mischkulnig
162c1fe047
fix(es/transforms): Remove unsafe new String("...") optimization (#3284) 2022-01-16 23:31:08 +09:00
Donny
7ec6e94cb0 chore: Publish crates 2022-01-16 16:58:21 +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
2ec540da35 chore: Publish crates 2022-01-16 04:22:00 +09:00
RiESAEX
6406b49df2
fix(es/parser): Throw an error when function body has use strict and paramaters is not simple (#3278) 2022-01-16 04:21:02 +09:00
Donny
d396c32fe5 chore: Publish crates 2022-01-15 21:56:36 +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
a4e93eb2df chore: Publish crates 2022-01-15 17:20:51 +09:00
magic-akari
f4b3cb714a
fix(es/resolver): Treat a switch statement as a block scope (#3275) 2022-01-15 17:20:17 +09:00
Donny/강동윤
357a350390
refactor(*): Cleanup (#3274) 2022-01-15 16:43:34 +09:00
Donny/강동윤
2690742db0
refactor(es/transforms): Cleanup (#3273) 2022-01-15 15:36:40 +09:00
Donny
9b98ada0d2 chore: Publish crates 2022-01-15 14:11:49 +09:00
OJ Kwon
66d1a92635
feat(plugin/runner): Free allocated memory on errors (#3270) 2022-01-15 05:10:19 +00:00
OJ Kwon
a4c497464d
feat(plugin/runnner): Support wasm32-wasi targets (#3271) 2022-01-15 04:40:00 +00:00
Donny
6ad418339e chore: Publish crates 2022-01-14 23:14:37 +09:00
RiESAEX
d3cc488ac1
feat(es/compat): Use var for _len and args in rest parameters (#3267) 2022-01-14 14:13:42 +00:00
Donny
8753f8cfc7 chore: Publish crates 2022-01-14 20:24:12 +09:00
Alexander Akait
c195335012
feat(css): Support @layer at-rule (#3258) 2022-01-14 11:21:41 +00:00
Donny
235a849485 chore: Publish crates 2022-01-14 16:38:01 +09:00
Donny/강동윤
efd86715c9
fix(es/minifier): Preserve side effects in correct position (#3263)
swc_ecma_minifier:
 - Add `fake_block` mark.
 - Inject statements for side effects from `visit_mut_stmt` instead of `visit_mut_stmt_likes`. (Closes #2926)
2022-01-14 16:36:48 +09:00
Donny
d03824b13d chore: Publish crates 2022-01-14 12:45:45 +09:00
Donny/강동윤
7c19e26d0f
fix(es/transforms): Fix this in async arrow class properties (#3252)
swc_ecma_transforms_compat:
 - `async_to_generator`: Fix `this` in async class properties. (https://github.com/vercel/next.js/issues/33283)
 - Add a test for #3228 (Closes #3228).
2022-01-14 12:44:34 +09:00
Donny
1f49793ac9 chore: Publish crates 2022-01-14 10:41:07 +09:00
Alexander Akait
ade8ab8c35
fix(css/lexer): Resolve a TODO (#3260) 2022-01-13 23:59:52 +00:00
Donny
c114e1b6a9 chore: Publish crates 2022-01-14 08:34:08 +09:00
mrauhu
69978518c9
fix(es/ast): Update EsVersion::latest() (#3261) 2022-01-14 08:33:38 +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
dc111bbcac chore: Publish crates 2022-01-13 18:42:02 +09:00
Donny/강동윤
0843f742c5
fix(swc): Remove wrong-target (#3251)
swc:
 - Remove the cargo feature `wrong-target`. (Closes #1108)
2022-01-13 18:41:34 +09:00
Donny
59651a1ff1 chore: Publish v1.2.129 2022-01-13 13:46:11 +09:00
Donny
311758572d chore: Publish crates 2022-01-13 13:42:06 +09:00
David Sherret
282232c995
fix(es/typescript): Remove rogue println (#3244) 2022-01-13 13:41:34 +09:00
Donny
c13bba8401 chore: Publish crates 2022-01-12 18:39:56 +09:00
OJ Kwon
432d5d3fb7
feat(plugin/macro): Add safe API for plugins based on a proc-macro (#3240) 2022-01-12 09:32:52 +00:00
Donny
db952ecf01 chore: Publish crates 2022-01-12 16:58:23 +09:00
Donny/강동윤
74fd353053
fix(es/minifier): Fix bugs (#3238)
swc_ecma_minifier:
 - `collapse_vars`: Respect `mutated`. (Closes #2679)
 - Add a test for https://github.com/vercel/next.js/issues/31084.
2022-01-12 16:57:54 +09:00
Donny
dc99778808 chore: Publish crates 2022-01-12 08:28:25 +09:00
Donny/강동윤
12dd0a6c1f
fix(es/minifier): Fix optimization of assignment expressions (#3231)
swc_ecma_minifier:
 - Check if the operator is `=` before optimizing assignment with a binary expression.
2022-01-12 08:26:56 +09:00
Donny
a2445e743b chore: Publish crates 2022-01-12 04:46:21 +09:00
David Sherret
105cbc2017
fix(es/parser): Fix span of ComputedPropName (#3234) 2022-01-12 04:45:52 +09:00
Donny
acfce35d77 chore: Publish crates 2022-01-11 19:37:43 +09:00
Donny/강동윤
78720c4c91
fix(es/minifier): Fix handling of inlined call to a hoisted function (#3223) 2022-01-11 19:37:06 +09:00
Donny
c5f2feaf58 chore: Publish crates 2022-01-11 19:35:28 +09:00
magic-akari
2e5150d2b7
fix(es/compat): Transform &&= operator (#3225) 2022-01-11 10:33:57 +00:00
OJ Kwon
a2f2b5ac89
feat(plugin): Don't serialize/deserialize needlessly (#3227)
swc_common:
 - Add `Serialized`.

swc_plugin_runner:
 - Accept `Serialized` instead of `Program`.
 - Pass `Serialized` from previous plugin instead of deserializing it.
2022-01-11 10:11:04 +00:00
Donny
540bc09888 chore: Publish v1.2.128 2022-01-11 16:53:04 +09:00
Donny
9a62ef21b7 chore: Publish crates 2022-01-11 16:48:26 +09:00
RiESAEX
b649d23bac
feat(es/compat): Implement object super (#3127)
swc_ecma_transforms_compat:
 - Implement object super. (Closes #2684)
2022-01-11 07:45:01 +00:00
Donny
7fbe8f644e chore: Publish crates 2022-01-11 16:15:11 +09:00
Guillaume Malette
9565149539
fix(es/modules): Fix lazy import handling (#3211)
swc_ecma_transforms_module:
 - `common_js`: Correctly track lazy imports. (Closes #3081)
2022-01-11 07:13:12 +00:00
Donny
d51904b93e chore: Publish crates 2022-01-11 14:42:17 +09:00
Donny/강동윤
1edbf1a37a
feat(es/ast): Update is-macro (#3226)
swc_ecma_ast:
 - Add `as_*` for ast enums.
2022-01-11 14:41:34 +09:00
Donny
54a0f51876 chore: Publish crates 2022-01-10 23:48:35 +09:00
Sosuke Suzuki
3fb76f64c4
feat(es/parser): Accept strings for import/exports (#3190) 2022-01-10 23:48:04 +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
OJ Kwon
7e7421ea52
feat(plugin): Perform actual transforms in plugins (#3220) 2022-01-10 21:34:16 +09:00
Donny/강동윤
057fca4196
chore(es/minifier): Add scripts to extract tests automatically (#3212) 2022-01-10 16:59:21 +09:00
Donny
db71f7a42d chore: Publish crates 2022-01-10 15:16:55 +09:00
Donny
0d4b671052 chore: Publish crates 2022-01-10 15:05:26 +09:00
Donny
5cd352e5dd chore: Publish crates 2022-01-09 15:42:56 +09:00
Austaras
cdb46cfb91
fix(es/hygiene): Visit computed properties in usage analyzer (#3217) 2022-01-09 15:42:19 +09:00
OJ Kwon
c9ded9b720
feat(plugin): Allow multi-value for the plugin signature (#3216) 2022-01-09 15:02:56 +09:00
Donny
9e0f6958a3 chore: Publish crates 2022-01-09 01:05:51 +09:00
magic-akari
5bee4e4902
refactor(es/compat): Preserve length of functions in async_generator (#3202) 2022-01-08 15:19:41 +00:00
Donny
1ca49a56b3 chore: Publish crates 2022-01-08 23:29:33 +09:00
Donny/강동윤
42f726873e
feat(es/transforms): Add Assumptions (#3215)
swc_ecma_transforms_base:
 - Add `Assumptions`. (Closes #2057)

swc_ecma_transforms:
 - Reexport `Assumptions`.

swc:
 - Add `jsc.assumptions`.
2022-01-08 23:26:09 +09:00
Donny/강동윤
70c2f3b3a5
security(repo): Fix crev integration (#3210) 2022-01-07 20:03:03 +09:00
Donny
56d1f03556 chore: Publish crates 2022-01-07 15:18:26 +09:00
OJ Kwon
92de2c7884
feat(plugin): Pass serialized ast to a wasm file (#3199)
swc_common:
 - Use correct cargo feature for plugin apis.

swc_plugin:
 - Add hidden functions required for memory operations from host.

swc_plugin_runner:
 - Pass serialized AST to a wasm file.
2022-01-07 15:13:46 +09:00
Donny
fa212be6ae chore: Publish crates 2022-01-07 14:49:46 +09:00
Donny/강동윤
54353a6fb5
fix(es/helpers): Don't transpile _typeof helper (#3208)
swc_ecma_transforms_base:
 - Add a directive to `_typeof` helper.

swc_ecma_transforms_compat:
 - Don't transpile `_typeof` helper. (Closes #3201)

swc_ecma_minifier:
 - Drop swc/babel directives.
2022-01-07 14:48:08 +09:00
Donny
80bf7f25ff chore: Publish crates 2022-01-06 21:25:35 +09:00
Donny/강동윤
0105939426
fix(es/minifier): Drop unreachable statements eagerly (#3204)
swc_ecma_minifier:
 - `pure`: Drop unreachable statements. (Closes #3173)
2022-01-06 21:25:06 +09:00
Donny
7c59765b2f chore: Publish crates 2022-01-06 20:51:06 +09:00
Donny/강동윤
69b5f799f3
fix(es/minifier): Disable inlining of expressions from collapse_vars (#3200)
swc_ecma_minifier:
 - `collapse_vars`: Disable for member expressions. (Closes #2614)
 - `sequences`: Respect `inline_prevented`.
2022-01-06 20:49:10 +09:00
Donny
6892f27ad7 chore: Publish crates 2022-01-06 20:19:36 +09:00
Sosuke Suzuki
432f877790
feat(es/ast): Use ModuleExportName for ExportNamespaceSpecifier (#3195) 2022-01-06 20:19:11 +09:00
Donny
3458e9f1d3 chore(ci): Fix publish scripts 2022-01-05 14:45:02 +09:00
Donny
28ff0592a4 refactor(plugin/runner): Reuse wasmer 2022-01-05 14:01:57 +09:00
OJ Kwon
c3895ca9aa
refactor(plugin/runner): Replace wasm runtime (#3196) 2022-01-05 04:44:41 +00:00
Donny
27a5284539 chore: Publish v1.2.127 2022-01-05 12:01:49 +09:00
Donny
e679c04873 chore: Publish crates 2022-01-05 11:59:44 +09:00
Donny/강동윤
913c82a2ab
fix(es/lints): Fix incorrect duplicate binding error (#3194)
swc_ecma_transforms_base:
 - `resolver`: Fix resolving of `const` and `let`.

swc_ecma_lints:
 - `duplicate_bindings`: Don't mark ambient function declararions as a binding. (Closes #3193)
2022-01-05 11:59:10 +09:00
Donny
e2b5a31882 chore: Publish crates 2022-01-05 08:48:03 +09:00
David Sherret
517662c9c2
fix(es/visit): Make noop_visit_type visit typescript nodes that executes at runtime (#3192) 2022-01-05 08:47:25 +09:00
Donny
1b8b062621 chore: Publish crates 2022-01-05 05:13:24 +09:00
Donny/강동윤
1c1c9f0eae
fix(es/minifier): Fix bugs (#2955)
swc_ecma_minifier:
 - Improve the script for extracting inputs from next.js app.
 - Ensure the name is removed on inlining.
 - Respect `inline_prevented`.
2022-01-05 05:12:52 +09:00
Donny
781aa79b82 chore: Publish crates 2022-01-04 19:29:50 +09:00
OJ Kwon
32d3342283
refactor(plugin): Remove codes related to the plugin system based on abi_stable (#3188) 2022-01-04 10:26:17 +00:00
Donny/강동윤
c758997180
refactor(dbg-swc): Rename esdiff to dbg-swc (#3189) 2022-01-04 18:39:43 +09:00
Donny
8b633a93ff chore: Publish crates 2022-01-04 17:41:12 +09:00
Donny/강동윤
51c792eb30
feat(esdiff): Create a command to determine problematic file (#3181)
swc_ecma_diff:
 - Fix diff logic of `Vec`.

esdiff:
 - `diff-min`: Normalize `Str.has_escape`.
 - `diff-min`: Normalize empty var declaration.
 - Add `redue-min`.
2022-01-04 17:40:40 +09:00
Donny
9cc72fe8e9 chore: Publish crates 2022-01-04 16:16:35 +09:00
OJ Kwon
b61c49fe39
refactor(plugin/runner): Avoid redundant filesystem reads (#3186) 2022-01-04 07:10:39 +00:00
Donny
a66eec2d16 chore: Publish crates 2022-01-04 15:16:19 +09:00
David Sherret
e5e6e84300
feat(es/dep-graph): Improve DependencyDescriptor to combine import_assertions with dynamic_import_assertions (#3183) 2022-01-04 05:54:45 +00:00
Donny
ab10f77af9 chore: Publish crates 2022-01-04 14:19:00 +09:00
Donny
d77bb8aff0 chore: Publish crates 2022-01-04 14:18:19 +09:00
OJ Kwon
fc4c6708f2
refactor(plugin): Add a loader for wasm-based plugin system (#3179) 2022-01-03 19:03:01 +00:00
Donny
aa1a243f56 chore: Publish crates 2022-01-03 22:00:34 +09:00
Donny
fece2aae55 chore: Publish v1.2.126 2022-01-03 20:36:16 +09:00
Donny
1ef435e1ce chore: Publish crates 2022-01-03 20:35:10 +09:00
YuChao Liang
db51ce4461
fix(es/minifier): Fix comparison of objects, numbers and strings (#3172) 2022-01-03 11:31:49 +00:00
Donny
1e5bc88cd3 chore: Publish crates 2022-01-03 17:45:09 +09: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
Donny
08399d2e95 chore: Publish v1.2.125 2022-01-03 05:57:48 +09:00
Donny
cb13512e84 chore: Publish crates 2022-01-03 05:55:39 +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
e14aa9dab4 chore: Publish crates 2022-01-03 00:08:39 +09:00
Donny/강동윤
790c50631b
fix(es/minifier): Fix for modules (#3170)
swc_ecma_minifier:
 - Handle exported declarations correctly.

swc:
 - Change default of `compress.toplevel` and `mangle.top_level` to true for modules. (Closes #3169)
2022-01-03 00:07:42 +09:00
Donny
ad3dca82b9 chore: Publish crates 2022-01-03 00:06:38 +09:00
magic-akari
366dc0eec3
fix(es/typescript): Declare the exported variables in a namespace (#3162) 2022-01-02 15:06:03 +00:00
Donny/강동윤
1aa55e616a
feat(es/diff): Add a internal CLI program for debugging minifier (#3168) 2022-01-02 19:55:12 +09:00
Donny
a883e604f2 chore: Publish crates 2022-01-02 16:24:06 +09:00
Donny/강동윤
bf751cb690
feat(es/ast): Add rkyv support (#3166)
ast_node:
 - `#[ast_node]`: Add support for `rkyv`.

swc_common:
 - Add a feature flag for `rkyv`.

swc_ecma_ast:
 - Add a feature flag for `rkyv`.
2022-01-02 16:23:37 +09:00
Donny
b1a72315db chore: Publish crates 2022-01-02 12:50:50 +09:00
Donny/강동윤
7a83c0cb57
perf(es/ast/serde): Make deserialization faster (#3160)
ast_node:
 - Improve deserialization of enums.

swc_css_ast:
 - Fix a compilation issue.

swc_ecma_ast:
 - Update `serde`.

swc_ecma_parser:
 - Fix a compilation issue.

swc_estree_ast:
 - Fix serialization.
2022-01-02 12:49:09 +09:00
Donny
29f05b55fc chore: Publish crates 2022-01-02 05:02:48 +09:00
magic-akari
e02307d4c8
fix(es/typescript): Fix handling of references in a TypeScript enum (#3163) 2022-01-01 19:51:39 +00:00
Donny
b52240d8e5 chore: Publish crates 2021-12-31 04:02:07 +09:00
magic-akari
e11210309c
fix(es/compat): Fix new.target in class properties (#3156) 2021-12-31 04:01:28 +09:00
Donny
097e1e310c chore: Publish crates 2021-12-30 19:48:39 +09:00
magic-akari
f78d005a95
fix(es/compat): Fix length of async functions (#3136)
swc_ecma_transforms_compat:
 - `async_to_generator`: Preserve function length. (Closes #3135)
2021-12-30 10:26:26 +00:00
Donny/강동윤
194b3e9b67
refactor(*): Use 2021 edition (#3151) 2021-12-30 18:59:18 +09:00
Jim Berlage
a4e8e53c19
test(es/parser): Add tests about null escape (#3147) 2021-12-30 08:54:10 +00:00
Donny
b9c3fba904 chore: Publish crates 2021-12-30 17:22:27 +09:00
magic-akari
35b64613bb
fix(es/compat): Visit all private class methods (#3150) 2021-12-30 17:21:54 +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
Donny/강동윤
8a1016fb40
refactor(bundler): Improve test suite (#3144) 2021-12-29 19:19:44 +09:00
Donny
bf820b7937 chore: Publish crates 2021-12-29 16:01:48 +09:00
Donny/강동윤
333acb5622
doc(es/ast): Improve rustdoc (#3142)
swc_ecma_ast:
 - Document `Str.kind`.
 - Document `TpleElement.cooked`.
2021-12-29 16:01:15 +09:00
OJ Kwon
72c963662d
refactor(*): Drop unused dependencies (#3138) 2021-12-29 15:27:51 +09:00
Donny
737b6108d4 chore: Publish crates 2021-12-29 13:46:45 +09:00
Donny/강동윤
43c8cda31a
fix(es/renamer): Fix renamer (#3139)
swc_ecma_transforms_base:
 - `resolver`: Ignore named export with source.
 - `hygiene`: Ignore named export with source. (Closes #2924, Closes #3114)

swc_ecma_minifier:
 - Handle `export default` declarations as declaration instead of expressions. (Closes #2717)
 - Don't override already-processed identifiers. (Closes #2988)

swc_bundler:
 - Adjust the syntax context for named re-exports.
2021-12-29 13:44:48 +09:00
Donny
fc9622f779 chore: Publish crates 2021-12-28 23:33:53 +09:00
Andreu Botella
2f3ca22ecf
fix(es/parser): Support import assertions in specifier-less imports (#3134) 2021-12-28 14:00:00 +00:00
Donny
0fc5c37154 chore: Publish crates 2021-12-28 22:27:29 +09:00
Austaras
f8f04e031e
refactor(es/react/fast-refresh): Use VisitMut (#3129) 2021-12-28 22:26:59 +09:00
Donny
2ab65c2cea chore: Publish crates 2021-12-28 22:25:47 +09:00
Donny/강동윤
693c22aa93
fix(es/optimization): Fix inlining (#3132)
swc_ecma_transforms_optimization:
 - `inlining`: Mark all usages as modification. (Closes #2108)
2021-12-28 22:25:07 +09:00
Donny
b824baefe7 chore: Publish crates 2021-12-28 21:38:03 +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
ba187c3c6a chore: Publish crates 2021-12-28 20:23:21 +09:00
Andreu Botella
c9adf03338
fix(es): Handle import assertions correctly (#3113)
swc_ecma_codegen:
 - Implement codegen for static import assertions.

swc_ecma_transforms_proposal:
  - `import_assertions`: Support `export`s.

swc:
 - Add `jsc.experimental.keep_import_assertions`.

node-swc:
 - Fix typo.
2021-12-28 11:18:33 +00:00
Donny/강동윤
cec325be63
security(repo): Configure cargo-crev (#3124) 2021-12-28 18:49:33 +09:00
Donny
a0d31f5ce4 chore: Publish crates 2021-12-28 17:12:28 +09:00
magic-akari
27d3fd93b0
fix(es/compat): Fix computed_properties (#3120)
swc_ecma_transforms_compat:
 - `computed_properties`: Fix handling of getter/setter properties. (Closes #2680)
2021-12-28 08:07:30 +00: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
4ab82fb4a7 chore: Publish crates 2021-12-27 04:38:36 +09:00
magic-akari
1b6ac25d5c
fix(es/compat): Fix private methods of a class (#3123)
swc_ecma_transforms_compat:
 - `class_properties`: Handle private method calls properly. (Closes #3055)
2021-12-26 19:37:46 +00:00
Donny
836cbd63a8 chore: Publish crates 2021-12-26 23:38:59 +09:00
magic-akari
ac78a527eb
fix(es/compat): Fix handling of hoisted functions in regenerator (#3119)
swc_ecma_ast:
 - Implement `Take` for `FnDecl`.

swc_ecma_transforms_compat:
 - `regenerator`: Handle hoisted function declarations properly. (Closes #2556)
 - `regenerator`: Fix handling of class properties with an async function as the initializer. (Closes #2620)
2021-12-26 14:36:21 +00:00
Donny
4ddc01e219 chore: Publish crates 2021-12-26 00:35:28 +09:00
magic-akari
a1cb4a4aa5
fix(es/compat): Fix handling of class methods with a big int as a key (#3118) 2021-12-25 14:46:56 +00:00
Donny
3b1a815db7 chore: Publish crates 2021-12-25 20:55:16 +09:00