Jason
a34f3592b3
feat(css/ast): Support @scope
at-rule ( #7837 )
...
> ### Describe the feature
> [Chrome 118 is shipping
soon](https://chromium-review.googlesource.com/c/chromium/src/+/4790561 ),
which is expected to be one of the more popular CSS features, giving new
hope for style isolation of components.
>
> * Explainer https://css.oddbird.net/scope/explainer
> * Specification https://drafts.csswg.org/css-cascade-6/#scope-atrule
>
Closed : #7836
2023-08-24 08:18:35 +00:00
SWC Bot
da5bc1084d
chore: Publish crates
2023-08-24 07:37:21 +00:00
Austaras
65db1badff
refactor(es/minifier): Pre-calculate reassigned
( #7832 )
2023-08-24 07:35:26 +00:00
SWC Bot
662f236aa5
chore: Publish crates
2023-08-22 02:06:20 +00:00
Donny/강동윤
7fe01e64dd
fix(es/minifier): Don't inline properties if the var is not fn-local
( #7839 )
...
**Related issue:**
- https://github.com/vercel/next.js/issues/54192 .
2023-08-22 11:04:15 +09:00
SWC Bot
6a8ea89f4b
chore: Publish crates
2023-08-18 06:26:59 +00:00
SWC Bot
f87581f67d
chore: Publish crates
2023-08-18 04:27:30 +00:00
Donny/강동윤
1ab406cd7a
refactor(es/helpers): Move packages for monorepo ( #7833 )
2023-08-18 04:25:37 +00:00
Donny/강동윤
6e37fd2932
chore: Publish crates
2023-08-18 04:30:40 +09:00
SWC Bot
becea47a2d
chore: Publish crates
2023-08-17 18:11:16 +00:00
Donny/강동윤
31de19ece2
fix(es/minifier): Preserve more analysis data upon inlining ( #7823 )
...
**Related issue:**
- Closes #7821 .
2023-08-17 18:09:02 +00:00
SWC Bot
9dbfadb48d
chore: Publish crates
2023-08-17 14:38:07 +00:00
Donny/강동윤
9099883175
feat(es/module): Improve error message about relative jsc.baseUrl
( #7827 )
2023-08-17 14:35:39 +00:00
SWC Bot
ebbc9292e3
chore: Publish crates
2023-08-17 05:18:03 +00:00
Austaras
f8ca366cc1
fix(es/minifier): Abort seq inliner if var is not fn_local or reassigned ( #7804 )
...
**Description:**
It turns out that the original implementation of `infect`is incomplete
because it cannot cover function param, and the new implementation
introduced in #7772 is redundant because what
[terser](https://github.com/terser/terser/blob/master/lib/compress/tighten-body.js#L909C18-L909C28 )
do is basically checking `fn_local`
**Related issue:**
- Closes #7784
2023-08-17 05:15:59 +00:00
SWC Bot
a6a5ec30cd
chore: Publish crates
2023-08-17 04:37:14 +00:00
Donny/강동윤
05990a98fd
fix(es/minifier): Preserve cooked
while compressing template literals ( #7773 )
...
**Related issue:**
- Closes #7770
2023-08-17 04:35:07 +00:00
SWC Bot
05200ad352
chore: Publish crates
2023-08-17 04:03:33 +00:00
Donny/강동윤
3766a7c776
fix(es/compat): Remove wrong logic for object patterns in object_rest
( #7788 )
...
**Related issue:**
- Closes #7776
2023-08-17 04:01:30 +00:00
SWC Bot
0d036b4915
chore: Publish crates
2023-08-16 19:11:18 +00:00
Donny/강동윤
04921f301a
fix(es/codegen): Add quotes to property names when ascii_only
is true
( #7820 )
...
**Related issue:**
- Closes #7805 .
2023-08-16 19:09:27 +00:00
SWC Bot
e9dfe879d9
chore: Publish crates
2023-08-16 18:04:14 +00:00
David Sherret
981d7b152b
refactor(common): Make ahash
optional ( #7816 )
...
**Description:**
This adds the ability to not include `ahash` with swc_common, which
caused some issues for me compiling dprint-plugin-typescript to Wasm
because of:
```
Compiling ahash v0.8.3
Compiling getrandom v0.2.10
error: the wasm*-unknown-unknown targets are not supported by default, you may need to enable the "js" feature. For more information see: https://docs.rs/getrandom/#webassembly-support
--> C:\Users\david\.cargo\registry\src\index.crates.io-6f17d22bba15001f\getrandom-0.2.10\src\lib.rs:285:9
|
285 | / compile_error!("the wasm*-unknown-unknown targets are not supported by \
286 | | default, you may need to enable the \"js\" feature. \
287 | | For more information see: \
288 | | https://docs.rs/getrandom/#webassembly-support ");
| |________________________________________________________________________^
```
(I can't enable the JS feature because it's running the wasm file in
Wasmer and also I don't support Wasi in dprint plugins)
**BREAKING CHANGE:**
This removes swc_common's "perf" feature and makes it the default, then
adds an `ahash` feature instead. An alternative would be to make the
`ahash` dep optional and part of the default features, then do
`default-features = false` in the downstream crates (I think, but I'm
not sure), but I figure most people will be using the perf default
anyway? I'm not sure what's preferable.
**Related issue:**
- Closes #7729 .
2023-08-16 18:02:05 +00:00
SWC Bot
d5495eeb9a
chore: Publish crates
2023-08-16 14:18:56 +00:00
David Sherret
b43e38d3f9
refactor: Use ahash
from swc_common
in more places ( #7815 )
...
**Description:**
Uses ahash from swc_common in more places. This allows for more easily
swapping out ahash with rustc_hash.
2023-08-16 23:16:52 +09:00
SWC Bot
2dc88ef147
chore: Publish crates
2023-08-16 13:26:52 +00:00
Donny/강동윤
8b809dbe23
refactor(es/parser): Remove needless unsafe
( #7818 )
...
**Related issue:**
- Closes #7797
2023-08-16 13:24:35 +00:00
SWC Bot
a671afa0aa
chore: Publish crates
2023-08-16 02:12:39 +00:00
Johnil Quezada
478fa4736f
feat(es/ast): Expose Archived
types ( #7811 )
...
**Description:**
For crates using both `rkyv` and `swc`, where ast nodes from
`swc_ecma_ast` are included in data that's serialized with `rkyv`, it's
difficult to access the archived data from the archived ast nodes since
the types are private.
More context in the issue.
**Related issue:**
- Closes #7810 .
2023-08-16 02:10:51 +00:00
SWC Bot
023042dfb9
chore: Publish crates
2023-08-15 15:29:35 +00:00
Donny/강동윤
42dec557ed
fix(es/compat): Revert #7610 ( #7813 )
...
**Related issue:**
- Reverts #7610 .
- Closes #7798 .
- Closes #7789 .
- Opens #7561 .
2023-08-15 15:27:38 +00:00
SWC Bot
47350a8ac6
chore: Publish crates
2023-08-14 16:35:22 +00:00
Donny/강동윤
fe1ca26218
fix(es): Resolve jsc.baseUrl
for .swcrc
specified by --config-file
( #7801 )
...
**Related issue:**
- Closes #7800
2023-08-14 16:33:17 +00:00
SWC Bot
0f66ee315a
chore: Publish crates
2023-08-14 15:47:58 +00:00
David Sherret
e527c12a82
fix(es/parser): Revert lexer fix for <<
( #7807 )
...
This temporarily reverts commit 68503726a7
until https://github.com/swc-project/swc/issues/7621 can be fixed.
Re-opens #7187 .
2023-08-14 15:45:51 +00:00
SWC Bot
74d446f759
chore: Publish crates
2023-08-14 01:35:45 +00:00
Manish Goregaokar
5e7834aa2e
refactor(es/parser): Don't attempt to handle shebangs in read_token_number_sign
( #7803 )
...
bump() has a safety invariant that there must be input in the buffer to
read (See https://github.com/swc-project/swc/issues/7709 ).
This function as currently written calls `bump()` after calling
`read_token_interpreter()`, which *may* have exhausted the buffer
already in the specific case that it is handling a shebang. (The input
string `#!/bin/js` with no newline is sufficient to cause UB here)
Fortunately, shebangs never reach this function, due to `read_shebang`!
Hurray!
It's cleaner to not attempt to handle shebangs here when this code path
will never be reached, and use a debug assertion to ensure that we're
not dealing with shebangs.
2023-08-14 01:33:50 +00:00
Donny/강동윤
7fac0270c4
chore: Publish crates
2023-08-10 17:13:03 +09:00
SWC Bot
b5dcce03c1
chore: Publish crates
2023-08-10 08:01:19 +00:00
Donny/강동윤
54f38cb47e
chore: Publish crates
2023-08-10 12:05:44 +09:00
SWC Bot
be58d36c42
chore: Publish crates
2023-08-10 02:50:53 +00:00
Donny/강동윤
552d9aa344
fix(es/minifier): Do not drop properties used via this
( #7785 )
...
**Related issue:**
- Closes #7783 .
2023-08-10 02:48:35 +00:00
SWC Bot
e90b555790
chore: Publish crates
2023-08-09 20:44:26 +00:00
Donny/강동윤
eff0caca2b
feat(es/minifier): Support mangle.eval
( #7777 )
...
**Related issue:**
- Closes #7754
2023-08-09 20:42:12 +00:00
SWC Bot
0edc4207f4
chore: Publish crates
2023-08-09 20:04:15 +00:00
Austaras
ef8d12154d
fix(es/minifier): Abort seq inliner if a same var is defined in outer scope ( #7772 )
...
**Description:**
The algorithm here is directly copied from terser, I don't if it's correct or can be improved, but it does fix the issue.
**Related issue:**
- Closes #7749
2023-08-09 20:01:59 +00:00
SWC Bot
c04ca528b8
chore: Publish crates
2023-08-09 09:19:00 +00:00
Donny/강동윤
76c6258d15
perf(es/compat): Improve time complexity of class_properties
( #7786 )
...
**Related issue:**
- Closes #7780
2023-08-09 09:17:14 +00:00
SWC Bot
fd2d6747be
chore: Publish crates
2023-08-09 08:37:37 +00:00
SWC Bot
1c2eb88a60
chore: Publish crates
2023-08-09 05:00:38 +00:00
Donny/강동윤
5c4bfa61f9
fix(es/module): Use jsc.baseUrl
while resolving absolute paths ( #7775 )
...
**Related issue:**
- Closes #7761
2023-08-09 13:58:45 +09:00
Donny/강동윤
000f817bcc
chore: Publish crates
2023-08-08 14:05:39 +09:00
SWC Bot
83983f49c8
chore: Publish crates
2023-08-07 22:56:50 +00:00
Donny/강동윤
f7afe7edec
refactor(es/minifier): Support stable rustc ( #7734 )
2023-08-07 22:55:00 +00:00
SWC Bot
14906e279f
chore: Publish crates
2023-08-07 22:20:08 +00:00
Donny/강동윤
b45649b8d6
fix(es/codegen): Don't strip necessary escape characters ( #7687 )
...
**Related issue:**
- Closes #7678 .
2023-08-07 22:17:59 +00:00
SWC Bot
0219eebeb9
chore: Publish crates
2023-08-07 21:31:50 +00:00
Fy
5f97f8656f
refactor(es/parser): Do not validate top-level await with target ( #7774 )
2023-08-07 21:30:04 +00:00
SWC Bot
1323c25ed6
chore: Publish crates
2023-08-07 20:38:40 +00:00
Donny/강동윤
36ccbec061
fix(es/minifier): Abort on Array.slice
with start >= end
( #7745 )
...
**Related issue:**
- Closes #7742 .
2023-08-07 20:36:15 +00:00
SWC Bot
1e6ade8cfa
chore: Publish crates
2023-08-07 20:01:21 +00:00
Manish Goregaokar
2258274233
refactor(es/ast): Avoid transmute
in impl of Hash
for Number
( #7771 )
...
**Description:**
[`f64::to_bits()`](https://doc.rust-lang.org/stable/std/primitive.f64.html#method.to_bits ) does the same thing.
2023-08-08 04:59:15 +09:00
SWC Bot
76c78f8794
chore: Publish crates
2023-08-07 08:17:54 +00:00
SWC Bot
51d17b66ad
chore: Publish crates
2023-08-06 22:16:01 +00:00
Donny/강동윤
d57ac0dd28
fix(es/utils): Ignore typeof Id
while preserving side effects ( #7763 )
...
**Related issue:**
- Closes #7750
2023-08-06 22:14:05 +00:00
SWC Bot
434472a678
chore: Publish crates
2023-08-06 21:44:26 +00:00
Ian Kerins
b69ae8f433
fix(es/compat): Fix loose mode of the spread
pass ( #7760 )
2023-08-06 21:42:33 +00:00
SWC Bot
97289b4edc
chore: Publish crates
2023-08-06 20:31:13 +00:00
Gareth McSorley
e50cfde938
refactor(es/parser): Do not use lexical
( #7758 )
...
This PR replaces the current usage of lexical within the swc_ecma_parser
crate with equivalent parsing of large numbers using BigInt.
**Description:**
As discussed in
https://github.com/swc-project/swc/issues/7752 , lexical contains a
number of soundness issues but doesn't appear to be actively supported.
Given the relatively low integration surface it seems reasonable to
replace the usage of lexical with another package to avoid this issue.
**Related issue:**
- Closes #7752
2023-08-06 20:29:17 +00:00
SWC Bot
c9a55603ae
chore: Publish crates
2023-08-03 22:23:07 +00:00
Fy
1122de7d8b
fix(plugin/runner): Use fs cache properly ( #7748 )
2023-08-03 22:20:51 +00:00
SWC Bot
875a7a7393
chore: Publish crates
2023-08-03 03:23:59 +00:00
Donny/강동윤
28dfc51887
feat(es): Alias format
as output
for minify()
( #7746 )
...
**Related issue:**
- Closes #7738 .
2023-08-03 03:22:09 +00:00
SWC Bot
d0ea6bdd84
chore: Publish crates
2023-08-03 02:45:17 +00:00
thy486
f713f6aba8
fix(es/module): Fix handling of continuous assignments in systemjs
( #7741 )
...
**Description:**
Fix transpile the continuous assignment code like `d.a = d.b = d.c = d.d = ... = void 0;` to SystemJS may cause Infinite loop.
**Related issue:**
- Closes #7143 .
2023-08-03 02:43:17 +00:00
Donny/강동윤
5afdd2ed54
chore: Publish crates
2023-08-03 07:19:43 +09:00
SWC Bot
e22cdccedd
chore: Publish crates
2023-08-02 22:04:35 +00:00
Donny/강동윤
3873f58499
fix(es/minifier): Mark args of new
s as references ( #7743 )
...
**Related issue:**
- Closes #7739 .
2023-08-03 07:02:15 +09:00
SWC Bot
791025943a
chore: Publish crates
2023-08-02 20:43:00 +00:00
Jean-Cédric Huet
22e06cce63
fix(es): Fix typo in a warning ( #7740 )
2023-08-02 20:40:57 +00:00
Donny/강동윤
6d7e13ae26
chore: Publish crates
2023-08-01 12:41:32 +09:00
SWC Bot
383509fd9d
chore: Publish crates
2023-07-31 15:46:19 +00:00
Felipe Armoni
216c4f17df
test(es/compat): Add a test for optional chaining with loose mode ( #7726 )
2023-07-31 15:44:28 +00:00
SWC Bot
5284220d6c
chore: Publish crates
2023-07-31 08:08:38 +00:00
Donny/강동윤
b4f3332b21
feat(es/preset-env): Update builtin definitions for core-js
imports ( #7715 )
...
**Related issue:**
- Closes #7712 .
2023-07-31 08:06:24 +00:00
SWC Bot
1a5a3313cf
chore: Publish crates
2023-07-31 04:12:06 +00:00
Austaras
5ea6f27eb0
fix(es/minifier): Handle synthesized export default expression ( #7707 )
...
**Related issue:**
- Closes #7634 .
2023-07-31 04:10:18 +00:00
SWC Bot
ef306256d2
chore: Publish crates
2023-07-31 03:33:30 +00:00
Donny/강동윤
e8c58cfd77
fix(es/utils): Fix string evaluation of array literals ( #7731 )
...
**Related issue:**
- Closes #7714 .
2023-07-31 03:31:37 +00:00
Donny/강동윤
ffe99a9665
chore: Publish crates
2023-07-29 04:36:29 +09:00
SWC Bot
640318c616
chore: Publish crates
2023-07-28 16:59:14 +00:00
Donny/강동윤
f901b417d1
fix(es/minifier): Do not drop used properties ( #7702 )
...
**Related issue:**
- Closes #7700 .
- Closes #7710 .
2023-07-28 16:57:07 +00:00
SWC Bot
d3b516d692
chore: Publish crates
2023-07-28 05:59:26 +00:00
Rene B
864bdefbe0
refactor(es/parser): Make stacker
an optional dependency ( #7720 )
2023-07-28 05:57:31 +00:00
SWC Bot
9a57f8ab6d
chore: Publish crates
2023-07-28 05:22:07 +00:00
magic-akari
40136f7c54
fix(es/module): Do not determine module name for modules without exports in UMD ( #7718 )
...
**Related issue:**
- Closes #6263 .
2023-07-28 05:20:16 +00:00
SWC Bot
3f3de2e316
chore: Publish crates
2023-07-28 04:42:31 +00:00
Felipe Armoni
7ba7b6ec1f
fix(es/compat): Fix handling of private members in optional chaining pass ( #7610 )
...
**Related issue:**
- Closes #7561 .
2023-07-28 04:40:19 +00:00
SWC Bot
e105f207df
chore: Publish crates
2023-07-28 03:30:04 +00:00
OJ Kwon
2bc96373b7
feat(swc_core): Expose visit/serde
as serde feature ( #7722 )
2023-07-28 12:27:55 +09:00
SWC Bot
9daa0e2c6a
chore: Publish crates
2023-07-25 08:17:01 +00:00
Donny/강동윤
900701fbf2
feat(es): Add a validation for a wrong config ( #7704 )
...
**Related issue:**
- Closes #6956 .
2023-07-25 08:14:49 +00:00
Donny/강동윤
42198679aa
chore: Publish crates
2023-07-25 12:53:29 +09:00
SWC Bot
4c43d5aa3d
chore: Publish crates
2023-07-25 03:32:13 +00:00
Donny/강동윤
a26dbce981
fix(es/minifier): Abort seq inliner using visitor ( #7699 )
...
**Related issue:**
- Closes #7697 .
2023-07-25 03:30:33 +00:00
SWC Bot
cd98859482
chore: Publish crates
2023-07-25 02:56:16 +00:00
Austaras
bf723625b0
refactor(es/minifier): Respect top-level when invoking IIFE ( #7690 )
2023-07-25 02:53:55 +00:00
SWC Bot
11efd4e7c5
chore: Publish crates
2023-07-24 04:39:18 +00:00
Donny/강동윤
c017874085
fix(es/typescript): Fix handling of optional chaining ( #7660 )
...
**Related issue:**
- Closes #7659 .
2023-07-24 04:37:30 +00:00
SWC Bot
ab17d2a4ae
chore: Publish crates
2023-07-21 05:24:53 +00:00
Donny/강동윤
951138cd13
fix(es/minifier): Drop line comments starting with !
( #7689 )
...
**Related issue:**
- Closes #7653
2023-07-21 05:23:11 +00:00
SWC Bot
aff07b1a0a
chore: Publish crates
2023-07-21 02:00:00 +00:00
magic-akari
241c04ab4a
fix(es/minifier): Only cast global Infinity
/undefined
/NaN
( #7684 )
...
**Related issue:**
- Closes #7683 .
2023-07-21 01:57:39 +00:00
SWC Bot
549e138443
chore: Publish crates
2023-07-20 07:15:09 +00:00
Donny/강동윤
57398af270
chore(ci): Fix CI ( #7679 )
2023-07-20 07:13:12 +00:00
SWC Bot
026101b71e
chore: Publish crates
2023-07-20 05:57:51 +00:00
Jason
cfb7b511ee
feat(css/parser): Support @starting-style
( #7677 )
2023-07-20 14:55:50 +09:00
SWC Bot
c61dd52909
chore: Publish crates
2023-07-20 02:37:25 +00:00
Austaras
9893bd2d43
refactor(es/minifier): Respect toplevel
and module
options ( #7671 )
2023-07-20 11:35:08 +09:00
SWC Bot
ce7f4b693d
chore: Publish crates
2023-07-19 05:22:34 +00:00
Kei Sakamoto
11b4679231
fix(css/modules): Preserve attr selectors used with :global
( #7670 )
...
**Related issue:**
- Closes #7669
2023-07-19 05:20:37 +00:00
Donny/강동윤
6c181256f3
chore: Publish crates
2023-07-18 13:22:16 +09:00
SWC Bot
3c89bdfd99
chore: Publish crates
2023-07-18 04:13:08 +00:00
Donny/강동윤
a65be14a00
fix(es/minifier): Do not reuse identifier used for import bindings ( #7639 )
...
**Related issue:**
- Closes #7634 .
2023-07-18 04:11:00 +00:00
SWC Bot
c31846ded6
chore: Publish crates
2023-07-18 03:35:40 +00:00
SWC Bot
7c12060b70
chore: Publish crates
2023-07-18 01:10:44 +00:00
Donny/강동윤
6be1f7075d
fix(es/minifier): Fix a bug about eval
of name mangler ( #7615 )
...
**Description:**
- Repro: https://github.com/avitorio/swcminify-debug
**Related issue:**
- https://github.com/vercel/next.js/discussions/30237#discussioncomment-6288339
2023-07-18 01:09:00 +00:00
SWC Bot
3930f77b54
chore: Publish crates
2023-07-17 07:19:08 +00:00
magic-akari
a2d0408597
fix(es/module): Skip CJS and AMD transformations for Script
( #7661 )
...
**Related issue:**
- Closes #7650
2023-07-17 07:17:17 +00:00
SWC Bot
bed73c168c
chore: Publish crates
2023-07-14 20:56:32 +00:00
Austaras
04b0f6d823
feat(es/minifier): Drop recursively used var declaration ( #7649 )
2023-07-15 05:54:34 +09:00
SWC Bot
7bf4ab39b0
chore: Publish crates
2023-07-13 05:13:38 +00:00
Donny/강동윤
c0e480593f
test(es): Add a test for a unreproducible issue ( #7656 )
...
**Related issue:**
- Closes #5644 .
2023-07-13 05:11:51 +00:00
SWC Bot
7d5feccccf
chore: Publish crates
2023-07-13 04:36:21 +00:00
Donny/강동윤
7528de1897
test(es/modules): Add a test for unreproducible issue ( #7655 )
...
**Related issue:**
- Closes #7417 .
2023-07-13 04:34:22 +00:00
Donny/강동윤
d9209ec3d7
chore: Publish crates
2023-07-13 11:21:28 +09:00
SWC Bot
26d79444c6
chore: Publish crates
2023-07-13 02:09:23 +00:00
Manish Goregaokar
a961090c9d
chore(es/parser): Scope use of lexical
to certain features ( #7644 )
2023-07-13 11:07:25 +09:00
SWC Bot
e4f9f734ad
chore: Publish crates
2023-07-07 04:09:05 +00:00
Donny/강동윤
19ba714ea1
fix(es/minifier): Don't drop unused properties of top-level vars ( #7638 )
...
**Related issue:**
- Closes #7635 .
2023-07-07 04:07:13 +00:00
SWC Bot
e80c695c89
chore: Publish crates
2023-07-07 02:59:38 +00:00
Donny/강동윤
7e9e84e230
feat(es/preset-env): Update compat data ( #7630 )
2023-07-07 02:57:48 +00:00
SWC Bot
1fe263903d
chore: Publish crates
2023-07-07 02:17:07 +00:00
lsdyi
a7daa5b28e
fix(es/compat): Fix loose mode of the spread
pass ( #7608 )
...
**Related issue:**
- Closes #7354
2023-07-07 11:15:07 +09:00
SWC Bot
2ef760357f
chore: Publish crates
2023-07-06 03:29:42 +00:00
Donny/강동윤
d2ac2c16a3
fix(es/compat): Visit children of while
statement in the generator
pass ( #7624 )
...
**Related issue:**
- Closes #7622 .
2023-07-06 03:27:49 +00:00
SWC Bot
2e7b05e588
chore: Publish crates
2023-07-05 06:54:45 +00:00
SWC Bot
735a82d6a4
chore: Publish crates
2023-07-05 03:52:51 +00:00
Donny/강동윤
b34f1adbcc
build(cargo): Update rustc
to 2023-07-03
( #7623 )
2023-07-05 03:50:43 +00:00
Donny/강동윤
40ee26b2c9
chore: Publish crates
2023-07-05 10:08:41 +09:00
SWC Bot
7544ea960b
chore: Publish crates
2023-07-04 07:01:59 +00:00
Donny/강동윤
c087c82aa3
fix(es/compat): Visit transformed expression in optional chaining pass ( #7614 )
...
**Related issue:**
- Closes #7612 .
2023-07-04 06:59:58 +00:00
SWC Bot
984fdc8ef5
chore: Publish crates
2023-07-04 06:25:39 +00:00
Austaras
4f866de878
fix(es/minifier): Add usage to inlined ident eagerly ( #7597 )
...
**Related issue:**
- Closes #7591 .
2023-07-04 06:23:49 +00:00
SWC Bot
9214427667
chore: Publish crates
2023-07-04 05:49:44 +00:00
Austaras
ff1ad95b59
feat(es/minifier): Compress common sub expressions in sequences ( #7587 )
2023-07-04 05:47:37 +00:00
SWC Bot
9cb9f055ba
chore: Publish crates
2023-07-04 05:13:14 +00:00
Donny/강동윤
47d2edd4dc
feat(es/minifier): Drop unused properties ( #7534 )
...
**Related issue:**
- Closes #7472 .
2023-07-04 05:11:33 +00:00
SWC Bot
cf902d3808
chore: Publish crates
2023-07-03 01:54:53 +00:00
David Sherret
0a26066b7b
refactor(es/compat): Remove usage of box_patterns
( #7613 )
2023-07-03 01:52:51 +00:00
SWC Bot
cba986807a
chore: Publish crates
2023-06-30 07:43:11 +00:00
Donny/강동윤
68503726a7
fix(es/parser): Re-lex <<
as two <
-s if required ( #7439 )
...
**Related issue:**
- Closes #7187 .
2023-06-30 07:41:19 +00:00
SWC Bot
af3654c0c3
chore: Publish crates
2023-06-30 03:30:23 +00:00
OJ Kwon
8209594a8c
fix(plugin/runner): Disable wasi env cleanup ( #7607 )
...
**Description:**
Even after setting shared runtime for the wasi env, `cleanup` still panics. I suspect something internal to cleanup doesn't honor those handles correctly; for now, disable it and try to see if this works.
As commented, this is not a huge issue as the plugin usually doesn't have resources to be cleaned up anyway.
2023-06-30 03:28:35 +00:00
SWC Bot
efcad6a499
chore: Publish crates
2023-06-30 02:55:28 +00:00
suxin2017
f0ab5b39f7
fix(css/modules): Fix :local
and :global
( #7600 )
...
**Related issue:**
- Close #7599 .
2023-06-30 02:53:10 +00:00
SWC Bot
3aee9a23aa
chore: Publish crates
2023-06-30 02:15:04 +00:00
廖应龙
ac02b84918
feat(es/optimization): Support default
imports for const modules ( #7604 )
2023-06-30 02:12:45 +00:00
SWC Bot
efc1afd96a
chore: Publish crates
2023-06-29 14:15:31 +00:00
Donny/강동윤
bcd5a1d666
feat(es/compat): Implement transform for explicit resource management ( #7376 )
...
**Related issue:**
- Closes #7316 .
- Closes #7369 .
2023-06-29 14:13:43 +00:00
SWC Bot
be33efaecd
chore: Publish crates
2023-06-29 07:52:19 +00:00
underfin
e2725451aa
fix(es/fixer): Don't change default decls to default expr exports ( #7585 )
...
**Related issue:**
- Closes #7584 .
2023-06-29 07:50:25 +00:00
SWC Bot
ae0d81b48d
chore: Publish crates
2023-06-29 06:13:42 +00:00
Cong-Cong Pan
769d6516a5
fix(xml/codegen): Fix wrong minification of spaces in a self-closing tag ( #7595 )
...
**Description:**
xml codegen with option `minify: true`.
input:
```xml
<foo attributeName="OK" />
```
expected:
```xml
<foo attributeName="OK"/>
```
actual:
```xml
<foo attributeName="OK" />
```
---
We already escape the attribute value in `escape_string` function, so we
do not need to check whether it contains a specific string.
2023-06-29 06:11:34 +00:00
Donny/강동윤
00eb41847b
chore: Publish crates
2023-06-29 11:20:28 +09:00
SWC Bot
8f016cd8f3
chore: Publish crates
2023-06-29 01:58:47 +00:00
OJ Kwon
9512ea31ff
feat(plugin/runner): Share runtime Engine
( #7590 )
2023-06-29 01:56:55 +00:00
SWC Bot
ed9a4ae5bc
chore: Publish crates
2023-06-27 15:25:59 +00:00
Donny/강동윤
a685c88c61
fix(es/minifier): Don't drop assignments to unused top-level variables ( #7581 )
...
**Related issue:**
- Closes #7568
2023-06-27 15:24:06 +00:00
SWC Bot
d3b934f619
chore: Publish crates
2023-06-27 14:36:35 +00:00
SWC Bot
7f2ace5d3f
chore: Publish crates
2023-06-27 02:16:08 +00:00
Donny/강동윤
398e922ca0
feat(es/minifier): Inline constants even if they are exported ( #7583 )
...
**Related issue:**
- Closes #7575 .
2023-06-27 02:14:09 +00:00
SWC Bot
b4ae28b053
chore: Publish crates
2023-06-26 04:02:12 +00:00
Donny/강동윤
9d5dda1299
fix(es/parser): Adjust context while parsing type arguments of TypeScript type queries ( #7582 )
...
**Related issue:**
- Closes #7580 .
2023-06-26 04:00:00 +00:00
SWC Bot
fcd650c0e6
chore: Publish crates
2023-06-24 01:30:47 +00:00
OJ Kwon
ab7b17cf10
feat(plugin/runner): Update wasmer
to v4
( #7576 )
2023-06-24 01:28:50 +00:00
SWC Bot
4efefb0f4e
chore: Publish crates
2023-06-23 02:28:10 +00:00
Kieran Siek
95ac74e6e4
refactor(common): Remove add_bitflags
and update bitflags
( #7571 )
2023-06-23 11:26:22 +09:00
SWC Bot
068c17206a
chore: Publish crates
2023-06-22 14:26:37 +00:00
OJ Kwon
d86f8f6a3c
fix(estree/compat): Adjust loc.col
( #7565 )
2023-06-22 14:24:52 +00:00
SWC Bot
8c1436aaf5
chore: Publish crates
2023-06-22 13:40:52 +00:00
Donny/강동윤
d57d0d3ad3
build(cargo): Update deps ( #7566 )
2023-06-22 13:37:35 +00:00
SWC Bot
33355cf707
chore: Publish crates
2023-06-22 07:43:38 +00:00
Donny/강동윤
d12dc70c91
build(cargo): Update deps ( #7564 )
2023-06-22 07:40:41 +00:00
SWC Bot
f9c5265bde
chore: Publish crates
2023-06-21 15:44:11 +00:00
Donny/강동윤
54410047fa
build(deps): Update syn
to v2
( #7557 )
2023-06-21 15:38:46 +00:00
SWC Bot
c9f2838071
chore: Publish crates
2023-06-21 09:40:25 +00:00
Donny/강동윤
07a858030c
feat(es/minifier): Enable hoist_props
by default ( #7535 )
2023-06-21 18:38:35 +09:00
SWC Bot
2a32a4dc6a
chore: Publish crates
2023-06-21 09:07:16 +00:00
SWC Bot
690ca6c8e1
chore: Publish crates
2023-06-21 07:27:39 +00:00
Donny/강동윤
3ad07a7d2e
feat(es/minifier): Support __NO_SIDE_EFFECTS__
( #7532 )
...
**Related issue:**
- Closes #7525 .
2023-06-21 07:25:29 +00:00
SWC Bot
5b01fa92e7
chore: Publish crates
2023-06-21 06:34:40 +00:00
SWC Bot
c023a03d7b
chore: Publish crates
2023-06-21 03:18:22 +00:00
Donny/강동윤
46fb4619ba
feat(testing): Add CARGO_TARGET_DIR
and use it from other crates ( #7552 )
2023-06-21 03:16:33 +00:00
Donny/강동윤
5bee46263c
chore: Publish crates
2023-06-20 18:39:53 +09:00
SWC Bot
8b765e6763
chore: Publish crates
2023-06-20 05:37:57 +00:00
Donny/강동윤
6e5d8b3cf1
feat(es/codegen): Support preamble
( #7551 )
...
**Related issue:**
- Closes #7475 .
2023-06-20 14:35:46 +09:00
SWC Bot
f27d6ea58c
chore: Publish crates
2023-06-20 05:05:01 +00:00
Donny/강동윤
1d9f972fb4
fix(es/resolver): Resolve the super class before registering a class name ( #7550 )
...
**Related issue:**
- Closes #7546 .
2023-06-20 05:03:01 +00:00
SWC Bot
69b034931e
chore: Publish crates
2023-06-20 04:14:44 +00:00
Donny/강동윤
bc6e95052e
fix(es/compat): Visit arrow body from optional chaining pass ( #7549 )
...
**Related issue:**
- Closes #7547 .
2023-06-20 04:12:31 +00:00
SWC Bot
fec056f5db
chore: Publish crates
2023-06-20 03:21:20 +00:00
Donny/강동윤
862f095e65
test(es): Add one more test for a wrong issue ( #7545 )
...
**Related issue:**
- Closes #7513 .
2023-06-20 03:19:20 +00:00
SWC Bot
17e339fc26
chore: Publish crates
2023-06-20 01:54:14 +00:00
Curtis Wilson
8cfc4f9e9a
fix(es/preset-env): Don't log Yield
to the console ( #7548 )
...
**Description:**
When a `yield` token is encountered by the parser, the word "Yield" is unnecessarily logged to the console. This PR removes the extra logging.
2023-06-20 01:52:24 +00:00
SWC Bot
8f1c8ea9fa
chore: Publish crates
2023-06-19 06:36:31 +00:00
Donny/강동윤
1d84e952fe
fix(es): Accept parse
option for minify()
( #7543 )
...
**Description:**
We don't support them. but this is to make API more compatible with `terser`.
**Related issue:**
- Closes #7455 .
2023-06-19 06:34:44 +00:00
SWC Bot
44aac8fe27
chore: Publish crates
2023-06-19 05:51:51 +00:00
Donny/강동윤
aa82e5fff3
test(plugin/runner): Share target
directory ( #7544 )
...
**Description:**
This will reduce CI time greatly.
2023-06-19 05:49:45 +00:00
SWC Bot
2f2a15f3df
chore: Publish crates
2023-06-19 05:01:43 +00:00
Donny/강동윤
70bc605c67
test(es): Add a test for a wrong issue ( #7542 )
...
**Related issue:**
- Closes #7513 .
2023-06-19 04:59:28 +00:00
Donny/강동윤
d1430c00b4
chore: Publish crates
2023-06-19 12:36:16 +09:00
Donny/강동윤
fe1a545e65
chore: Publish crates
2023-06-19 12:26:07 +09:00
SWC Bot
2669fc214a
chore: Publish crates
2023-06-19 03:20:19 +00:00
Donny/강동윤
76aa91f83c
fix(es/typescript): Don't panic of @jsxFrag null
( #7540 )
...
**Related issue:**
- Closes #7539 .
2023-06-19 12:18:19 +09:00
SWC Bot
d38c40914e
chore: Publish crates
2023-06-19 03:02:08 +00:00
Justin Ridgewell
990e48e0e8
fix(es/compat): Fix optional chaining ( #7530 )
...
**Description:**
This fixes a few bugs with optional chaining:
-
[`a?.c()`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAA9PXVwjOyC%2FNSVFISrXi0tdXSFSwtVXIK83JUbBXKM1LSU3LzEtNUbBSSNRL1tC05kq0h9AAouc%2F7DgAAAA%3D&config=H4sIAAAAAAAAA2VSu27DMAzc8xUC5wAZii7ZWnRJgXTKDxAKkyrQwyDpNEbgf69kxI4jexAk3olH3fm%2BMgYoXsFszT3vywchHQm2pa7cwXos28T0LRl4m0qnxJY%2BvD8wRsmHUGDllibGsYsYnN2FJrHWoCKfScudUbsv2LDARewEgI4CM24uezqj7b4oj4aauOpf5EdoT4pHVFxSmNDqS1tjNhvDbVQXKNuAraaA6iysC5DYWI8izs4uwIMOC%2F6cpL%2Bc%2FnanHwwkDVpaDJM5rdBn67y6WHv5eNCVfGpCzibDJ%2FQyw%2Fv1qtqAT0lqHWiQhfjVSumi4m2I3QYUy65RmNl0kdtS8OlvPWxfhTw0lnd45pv%2FstbTLOKuGeyzKYQULwIT08l%2B5BaJVf8PfP2zz7YCAAA%3D )
-
[`a?.b.c()`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAA9PXVwjOyC%2FNSVFISrXi0tdXSFSwtVXIK83JUbBXKM1LSU3LzEtNUbBSSNRL0kvW0LTmSrSHsQBsP8xLPAAAAA%3D%3D&config=H4sIAAAAAAAAA2VSu27DMAzc8xUC5wAZii7ZWnRJgXTKDxAKkyrQwyDpNEbgf69kxI4jexAk3olH3fm%2BMgYoXsFszT3vywchHQm2pa7cwXos28T0LRl4m0qnxJY%2BvD8wRsmHUGDllibGsYsYnN2FJrHWoCKfScudUbsv2LDARewEgI4CM24uezqj7b4oj4aauOpf5EdoT4pHVFxSmNDqS1tjNhvDbVQXKNuAraaA6iysC5DYWI8izs4uwIMOC%2F6cpL%2Bc%2FnanHwwkDVpaDJM5rdBn67y6WHv5eNCVfGpCzibDJ%2FQyw%2Fv1qtqAT0lqHWiQhfjVSumi4m2I3QYUy65RmNl0kdtS8OlvPWxfhTw0lnd45pv%2FstbTLOKuGeyzKYQULwIT08l%2B5BaJVf8PfP2zz7YCAAA%3D )
-
[`a.c?.()`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAAxWKsQ3AIAwEe6b4Ehq7J0IMkQGQYxMlkkUq9g80d1ccM87nm264eg7MiE2aomwvSiJNKAVjuqNiDuv3O7ohY4%2Bk4r7WdAQhrRRX%2FIwaKV1TAAAA&config=H4sIAAAAAAAAA2VSu27DMAzc8xUC5wAZii7ZWnRJgXTKDxAKkyrQwyDpNEbgf69kxI4jexAk3olH3fm%2BMgYoXsFszT3vywchHQm2pa7cwXos28T0LRl4m0qnxJY%2BvD8wRsmHUGDllibGsYsYnN2FJrHWoCKfScudUbsv2LDARewEgI4CM24uezqj7b4oj4aauOpf5EdoT4pHVFxSmNDqS1tjNhvDbVQXKNuAraaA6iysC5DYWI8izs4uwIMOC%2F6cpL%2Bc%2FnanHwwkDVpaDJM5rdBn67y6WHv5eNCVfGpCzibDJ%2FQyw%2Fv1qtqAT0lqHWiQhfjVSumi4m2I3QYUy65RmNl0kdtS8OlvPWxfhTw0lnd45pv%2FstbTLOKuGeyzKYQULwIT08l%2B5BaJVf8PfP2zz7YCAAA%3D )
-
[`a.b.c?.()`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAAyWLsQ3AIAwEe6b4Ehq7J0IMkQEQ2ESJZJGK%2FYNCdVfcMeO832mK1qNjhi%2B1tCJI2xYrtUASkBLGNEPGHNqvZ3RFxM5Jqtk%2FhMOtgSSTX%2FoBjF6UKV8AAAA%3D&config=H4sIAAAAAAAAA2VSu27DMAzc8xUC5wAZii7ZWnRJgXTKDxAKkyrQwyDpNEbgf69kxI4jexAk3olH3fm%2BMgYoXsFszT3vywchHQm2pa7cwXos28T0LRl4m0qnxJY%2BvD8wRsmHUGDllibGsYsYnN2FJrHWoCKfScudUbsv2LDARewEgI4CM24uezqj7b4oj4aauOpf5EdoT4pHVFxSmNDqS1tjNhvDbVQXKNuAraaA6iysC5DYWI8izs4uwIMOC%2F6cpL%2Bc%2FnanHwwkDVpaDJM5rdBn67y6WHv5eNCVfGpCzibDJ%2FQyw%2Fv1qtqAT0lqHWiQhfjVSumi4m2I3QYUy65RmNl0kdtS8OlvPWxfhTw0lnd45pv%2FstbTLOKuGeyzKYQULwIT08l%2B5BaJVf8PfP2zz7YCAAA%3D )
-
[`a?.b[c?.d]`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAA9PXVwjOyC%2FNSVFISrXi0tdX0IhPVLBVSNRUsLVVyCvNyVGwVyjLz0xRMFCwUohP1EuK1ohPBipIxq4gWS8l1por0R6oLtkezAYAJs%2FWxmEAAAA%3D&config=H4sIAAAAAAAAA2VSu27DMAzc8xUC5wAZii7ZWnRJgXTKDxAKkyrQwyDpNEbgf69kxI4jexAk3olH3fm%2BMgYoXsFszT3vywchHQm2pa7cwXos28T0LRl4m0qnxJY%2BvD8wRsmHUGDllibGsYsYnN2FJrHWoCKfScudUbsv2LDARewEgI4CM24uezqj7b4oj4aauOpf5EdoT4pHVFxSmNDqS1tjNhvDbVQXKNuAraaA6iysC5DYWI8izs4uwIMOC%2F6cpL%2Bc%2FnanHwwkDVpaDJM5rdBn67y6WHv5eNCVfGpCzibDJ%2FQyw%2Fv1qtqAT0lqHWiQhfjVSumi4m2I3QYUy65RmNl0kdtS8OlvPWxfhTw0lnd45pv%2FstbTLOKuGeyzKYQULwIT08l%2B5BaJVf8PfP2zz7YCAAA%3D )
- [`delete
foo?.bar`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAA9PXVwjOyC%2FNSVFISrXi0tdXSMvPV7C1VcgrzclRsFcoKSpNVbBSSEnNSS1JBcnpJSUWcSG49iA%2BAGcLTstEAAAA&config=H4sIAAAAAAAAA1WPSw7CMAxE9zlF5DULYIEEd%2BAQVnCrVPkpTiWqqncnTZMAO3vG42evQkqYWMFDrrnMTcDIFHufFV5cwndWgJRFVlGHBKfmTrxbAxqmIm2HAwnjSKmk%2BHq%2B3GsCjPdMWU5xpipZ7fSw%2FCKVtyESc9vcaRbdaOgfKCoUrH%2FNxayvpCXQccANvkMN1heD5mdL7leJ7QOQNa2NFgEAAA%3D%3D )
- [`function foo(a, b = a?.b)
{}`](https://play.swc.rs/?version=1.3.64&code=H4sIAAAAAAAAA9PXVwjOyC%2FNSVFISrXi0tdXSCvNSy7JzM9TSMvP10jUUUhSsFXQ0NBUsLVTqFYoSyxSiE%2B0VnjUsEyhVlNDU1OhupYLm45Ee70kkCQAp8DQOl8AAAA%3D&config=H4sIAAAAAAAAA22Rz07DMAzG73uKyOdJAw5I7Ii4cBjvYKXuyJQ%2Fle3AqmnvTltIm63cHH%2B%2F%2BPtkXzbGwEks7M1lKIeHMkZpE4e5NbU9HdH2b2QToyYeROVM2wVoinQgxQYV1wgTWr0Za8xuZzhHdYH2BjBrCqjOwnYUEhvrUcTZ6gP84bDia0g%2FOX2%2Ftx8YSDq0tAozMFnoNTuvLsp%2FckNf5FMXKI6ZW%2FRS6ddSzgX4lOTeBzpkIb5dpfRR8TzmJxtQLLtOoVrTSc5rw2W%2F92GXBIp8JJ0Gy9PD48s0dJIhpCZ7qq7cd%2FQLPsMMOTkUrBhAcNG1fcmzuf4AkV7gUzECAAA%3D )
It also optimizes the AST for runtime evaluation. Before, we constructed
a leftwards conditional tree (`(_a_b = (_a = a) == null ? void 0 : _a.b)
== null ? void 0 : _a_b.c`) instead of a rightward tree (`(_a = a) ==
null ? void 0 : (_a_b = _a.b) == null ? void 0 : _a_b.c`), which
required multiple `== null` checks after the first nullish is found.
**Related issue:**
- Closes #7531 .
2023-06-19 12:00:11 +09:00
SWC Bot
0859b76ed0
chore: Publish crates
2023-06-16 06:46:25 +00:00
Donny/강동윤
f42fdd21af
fix(es/module): Add "use strict"
while preserving directives ( #7537 )
...
**Related issue:**
- Closes #7536 .
2023-06-16 06:44:28 +00:00
SWC Bot
b9acc83fa7
chore: Publish crates
2023-06-16 02:59:35 +00:00
Donny/강동윤
3e9dd88e37
feat(es/module): Preserve custom use
directives ( #7528 )
...
**Related issue:**
- Closes #7315 .
2023-06-16 11:50:52 +09:00
Donny/강동윤
37c7296913
chore: Publish crates
2023-06-14 14:08:15 +09:00
SWC Bot
39276402bf
chore: Publish crates
2023-06-14 05:01:49 +00:00
Donny/강동윤
4644d005d2
fix(es/compat): Fix handling of this
of optional chaining pass ( #7527 )
...
**Related issue:**
- Closes #7526 .
2023-06-14 13:59:35 +09:00
SWC Bot
db85bf3ee2
chore: Publish crates
2023-06-13 16:14:41 +00:00
Donny/강동윤
f27838dedc
fix(es/codegen): Fix regression of source maps ( #7523 )
...
**Related issue:**
- Closes #7506 .
2023-06-13 16:12:45 +00:00
SWC Bot
275db1baec
chore: Publish crates
2023-06-13 03:39:28 +00:00
廖应龙
a0da02d0ff
fix(es/codegen): Emit type arguments of jsx element names ( #7522 )
2023-06-13 03:37:39 +00:00
Donny/강동윤
e773efc3a8
chore: Publish crates
2023-06-12 21:33:11 +09:00
SWC Bot
08574e690b
chore: Publish crates
2023-06-12 08:04:50 +00:00
Donny/강동윤
3958f1792c
refactor(es/ast): Remove unused fields ( #7518 )
...
**Related issue:**
- Closes #7347 .
- Closes #7487 .
2023-06-12 08:02:34 +00:00
SWC Bot
96895b1f3f
chore: Publish crates
2023-06-12 06:49:35 +00:00
Donny/강동윤
aa83584634
refactor(es/ast): Reimplement optional chaining ( #7441 )
...
**Related issue:**
- Closes #7003 .
- Closes #7156 .
2023-06-12 06:47:40 +00:00
SWC Bot
d8f5158963
chore: Publish crates
2023-06-12 02:24:36 +00:00
Austaras
8e933c8a9f
fix(es/react): Default to empty string when emitting refresh signature ( #7514 )
...
**Related issue:**
- Closes #7471 .
2023-06-12 02:22:31 +00:00
SWC Bot
cea1237c5e
chore: Publish crates
2023-06-12 01:39:32 +00:00
Pig Fang
6c00a2422a
feat(es/parser): Disallow tagged tpl in optional chaining ( #7515 )
2023-06-12 01:37:39 +00:00
SWC Bot
b46bcf3f50
chore: Publish crates
2023-06-08 05:08:56 +00:00
Donny/강동윤
cc4146c9d3
fix(es/compat): Make stage 3 decorator pass use correct state for inner classes ( #7508 )
...
**Related issue:**
- Closes #7499 .
2023-06-08 05:06:51 +00:00
SWC Bot
37634a758d
chore: Publish crates
2023-06-08 04:15:29 +00:00
Austaras
7f9f0b8bce
fix(es/minifier): Infect mutation when assigning a property ( #7503 )
2023-06-08 04:13:42 +00:00
SWC Bot
3fe1236fe0
chore: Publish crates
2023-06-08 03:28:07 +00:00
Donny/강동윤
d545df6dd9
perf(css/prefixer): Convert macro to a function call to reduce binary size ( #7507 )
...
**Related issue:**
- https://github.com/vercel/next.js/pull/50365
2023-06-08 03:26:19 +00:00
SWC Bot
eeac6fa68a
chore: Publish crates
2023-06-08 02:21:20 +00:00
OJ Kwon
73929fc43c
feat(plugin/runner): Support shared wasix runtime ( #7504 )
2023-06-08 02:19:07 +00:00
SWC Bot
89bee900e4
chore: Publish crates
2023-06-07 05:10:31 +00:00
David Sherret
064bcf4854
fix(es/codegen): Remove extra spaces in AssignPatProp
and KeyValuePatProp
( #7488 )
...
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2023-06-07 05:08:35 +00:00
SWC Bot
f634c3ad2f
chore: Publish crates
2023-06-07 04:25:48 +00:00
Austaras
62075faeaa
feat(es/minifier): Remove unused labels ( #7478 )
2023-06-07 04:23:40 +00:00
SWC Bot
b6b4b0fd2e
chore: Publish crates
2023-06-07 03:03:16 +00:00
David Sherret
a343e7ccae
feat(es/codegen): Add ability to set indentation string via rust api ( #7494 )
...
**Description:**
This adds the ability to set the indentation string of JsWriter via the Rust API. The motivation behind this change is to allow people to use other indentations in the emit output like tabs or two spaces via the Rust API.
2023-06-07 03:01:16 +00:00
SWC Bot
61dc611da3
chore: Publish crates
2023-06-05 04:47:07 +00:00
Donny/강동윤
abd62bc797
perf(es): Use &dyn Comments
for jsx and TypeScript ( #7490 )
2023-06-05 13:44:38 +09:00
SWC Bot
47dc78f607
chore: Publish crates
2023-06-05 04:06:15 +00:00
Donny/강동윤
2c3ac682e2
perf(es): Use &dyn Comments
to reduce binary size ( #7489 )
...
**Related issue:**
- https://github.com/vercel/next.js/pull/50365
2023-06-05 13:04:08 +09:00
Donny/강동윤
ddb5635ebf
chore: Publish crates
2023-06-03 18:23:17 +09:00
SWC Bot
b190879a51
chore: Publish crates
2023-06-03 07:07:33 +00:00
Donny/강동윤
decebadff1
chore: Publish crates
2023-06-03 00:44:10 +09:00
SWC Bot
b71222b086
chore: Publish crates
2023-06-02 15:36:55 +00:00
SWC Bot
9de08611e1
chore: Publish crates
2023-06-02 15:24:25 +00:00
Donny/강동윤
65ce5d1081
perf(es/minifier): Make minifier not overly generic ( #7483 )
...
**Description:**
Generics cause binary bloat.
**Related issue:**
- https://github.com/vercel/next.js/pull/50365
2023-06-03 00:22:30 +09:00
SWC Bot
d6bbbc332d
chore: Publish crates
2023-05-31 01:59:26 +00:00
Donny/강동윤
e506635f74
fix(es/minifier): Don't generate generator arrows ( #7466 )
...
**Related issue:**
- Closes #7457 .
2023-05-31 01:57:13 +00:00
Donny/강동윤
ad8e6a006c
chore: Publish crates
2023-05-30 14:41:39 +09:00
SWC Bot
a63905aa2c
chore: Publish crates
2023-05-30 05:18:06 +00:00
OJ Kwon
56ac9eb6b3
feat(common): Enable bytecheck for missing structs ( #7465 )
2023-05-30 05:15:46 +00:00
SWC Bot
a29ef90589
chore: Publish crates
2023-05-30 04:37:04 +00:00
Donny/강동윤
8274cce9a7
test(es/parser): Add a test for a fixed issue ( #7467 )
...
**Related issue:**
- Closes #7456 .
2023-05-30 04:35:07 +00:00
SWC Bot
076b4d4023
chore: Publish crates
2023-05-30 03:24:10 +00:00
David Sherret
3935d02e36
fix(es/codegen): Emit ;
for TsImportEqualsDecl
( #7464 )
2023-05-30 03:22:07 +00:00
SWC Bot
81a413b332
chore: Publish crates
2023-05-28 14:12:53 +00:00
OJ Kwon
1868d36cfe
fix(plugin/runner): Disable wasi_env
cleanup ( #7458 )
2023-05-28 14:11:01 +00:00
SWC Bot
dcda6498f3
chore: Publish crates
2023-05-28 13:29:30 +00:00
Donny/강동윤
e15adaf6ea
chore(es/preset-env): Update data ( #7459 )
2023-05-28 13:27:38 +00:00
SWC Bot
15217a1f9e
chore: Publish crates
2023-05-25 05:40:33 +00:00
suxin2017
d370324cfd
fix(css/modules): Don't drop the correct selector ( #7450 )
...
**Related issue:**
- Closes #7447 .
2023-05-25 05:38:41 +00:00
SWC Bot
a85816d505
chore: Publish crates
2023-05-25 04:54:11 +00:00
Donny/강동윤
77850dd8f0
fix(es/parser): Fix parsing of generic jsx element name ( #7449 )
...
**Related issue:**
- Closes #7444 .
2023-05-25 13:52:14 +09:00
SWC Bot
8d52500a9a
chore: Publish crates
2023-05-25 04:00:53 +00:00
Austaras
0cd2b61b05
feat(es/minifier): Inline for loop variables ( #7445 )
2023-05-25 03:59:02 +00:00
Donny/강동윤
c856808f61
chore: Publish crates
2023-05-25 11:25:07 +09:00
SWC Bot
1b5aa4a09b
chore: Publish crates
2023-05-25 02:17:22 +00:00
limerick
0c92e534a5
fix(es): Ignore input sourcemap error ( #7446 )
2023-05-25 11:15:21 +09:00
SWC Bot
6c3ff01a53
chore: Publish crates
2023-05-24 07:48:00 +00:00
Donny/강동윤
e83368e574
refactor(visit): Reduce expanded LOCs ( #7442 )
...
**Description:**
x-ref: https://vercel.slack.com/archives/C03EWR7LGEN/p1684898884673379
**Related issue:**
- https://github.com/web-infra-dev/rspack/issues/3058 .
2023-05-24 07:45:40 +00:00
SWC Bot
c1f2b4a09f
chore: Publish crates
2023-05-24 06:59:37 +00:00
Donny/강동윤
a37d59a134
fix(es/parser): Fix parsing of tsx with a type annotation in a conditional expression ( #7440 )
...
**Related issue:**
- Closes #7224 .
2023-05-24 15:57:50 +09:00
SWC Bot
b95cd8444e
chore: Publish crates
2023-05-24 06:27:35 +00:00
Donny/강동윤
33a922b6f8
fix(es/parser): Allow using package
as a parameter name in interface ( #7438 )
...
**Related issue:**
- Closes #7186 .
2023-05-24 06:25:39 +00:00
SWC Bot
f9f0cc2380
chore: Publish crates
2023-05-24 05:44:06 +00:00
Donny/강동윤
f3d660f972
fix(es/compat): Fix variable scoping of object rest pass. ( #7437 )
...
**Related issue:**
- Closes #6988 .
2023-05-24 05:41:57 +00:00
SWC Bot
c14306c914
chore: Publish crates
2023-05-24 04:52:50 +00:00
OJ Kwon
786cf3a10f
fix(es): Init filesystem cache only if plugin exists ( #7436 )
2023-05-24 04:50:51 +00:00
SWC Bot
552bc0ba18
chore: Publish crates
2023-05-23 07:16:28 +00:00
Donny/강동윤
2071f89d4e
fix(es/preset-env): Fix pass ordering ( #7434 )
...
**Related issue:**
- Closes #6898 .
- Closes #7432 .
2023-05-23 07:14:37 +00:00
SWC Bot
8872b41272
chore: Publish crates
2023-05-23 06:25:54 +00:00
Donny/강동윤
97d0f79142
fix(es/compat): Fix stage 3 decorator pass ( #7392 )
2023-05-23 06:24:05 +00:00
SWC Bot
47114702ef
chore: Publish crates
2023-05-23 05:30:42 +00:00
Donny/강동윤
1cab43f17d
fix(es/parser): Reset class context ( #7433 )
...
**Related issue:**
- Closes #7428 .
2023-05-23 05:28:56 +00:00
SWC Bot
ed9d316833
chore: Publish crates
2023-05-22 05:29:02 +00:00
OJ Kwon
558ca40b99
fix(swc_core): Correctly expose plugin with host ( #7427 )
...
**Description:**
Following up https://github.com/swc-project/swc/pull/7422 , `swc_core::plugin` itself is not exposed to `__plugin_transform_host`, so still not able to access the inner plugin proxy.
2023-05-22 05:27:01 +00:00
SWC Bot
7964e1cb78
chore: Publish crates
2023-05-22 04:09:40 +00:00
OJ Kwon
cfdd407896
refactor(swc_core): Make common_plugin_transform
agnostic to mode ( #7422 )
2023-05-22 04:07:55 +00:00
SWC Bot
12b966ea21
chore: Publish crates
2023-05-22 03:23:50 +00:00
Donny/강동윤
66d52ec849
fix(es/compat): Fix destructuring handling of block_scoping
( #7425 )
...
**Related issue:**
- Closes #7418 .
2023-05-22 03:21:50 +00:00
SWC Bot
344a6ea7be
chore: Publish crates
2023-05-20 04:47:53 +00:00
OJ Kwon
c03a74c198
refactor(plugin/runner): Add attributes to the module bytes ( #7419 )
2023-05-20 04:46:09 +00:00
SWC Bot
920013511b
chore: Publish crates
2023-05-20 04:00:44 +00:00
OJ Kwon
f8fe365c3b
feat(plugin/runner): Enable in-memory precompiled module cache ( #7420 )
2023-05-20 03:58:55 +00:00
Donny/강동윤
0ac3aebe3d
chore: Publish crates
2023-05-19 14:25:31 +09:00
SWC Bot
b2c9bb47a0
chore: Publish crates
2023-05-19 04:37:45 +00:00
Austaras
40d2bf7ec3
fix(es/minifier): Prevent inlining vars assigned outside current function scope ( #7414 )
...
**Related issue:**
- Closes #7412 .
2023-05-19 13:35:50 +09:00
SWC Bot
135c4fd16b
chore: Publish crates
2023-05-18 08:20:26 +00:00
Donny/강동윤
57ad722d06
fix(es/parser): Fix parsing of >
in typescript mode ( #7407 )
...
**Related issue:**
- Closes #7403 .
2023-05-18 08:18:27 +00:00
SWC Bot
9440f4b196
chore: Publish crates
2023-05-18 07:08:08 +00:00
OJ Kwon
ac5ab607c9
refactor(plugin/runner): Revise cache, module loading ( #7408 )
...
**Description:**
One of the oversight around design of `TransformExecutor` is
encapsulating plugin module logic. It has access to the cache and do its
own loading & storing. This means consumer of plugin runner have tricky
challenge to control its caching system. First, there is no way to
escape how swc_plugin_runner controls cache and cannot synchronize into
their own, also depends on the usecases cannot control the features they
want to opt in: for example, there's no way one interface uses in-memory
cache, and another uses filesystem since it is compile time configured
singleton.
PR revisits overall design of TransformExecutor: now it accepts a tratir
`PluginModuleBytes`, which abstracts any kind of bytes we are dealing
with, such as raw file slice or serialized `wasmer::Module`. Cache
instantiation and managing is now bubbled up to the application level
(`swc` in here), so if someone wants non-singleton caching or integrate
into their own caching system it can be customized.
Lastly, deprecated `memory_cache` feature and only exposes
`filesystem_cache`. Cache implementation uses in-memory is always
available, and can opt in filesystem cache where it's supported.
**BREAKING CHANGE:**
This is clearly breaking changes for the consumers of swc_core. for the
@swc/core, this PR takes care of necessary changes. I'll work on
next-swc changes later once we have new @swc/core version with this
changes.
2023-05-18 07:05:39 +00:00
SWC Bot
31d7b88555
chore: Publish crates
2023-05-18 01:21:08 +00:00
Austaras
5dbbbea2ef
fix(es/minifier): Mark all function params as potential property mutation ( #7409 )
...
**Description:**
This issue is more severe than I originally thought. It raises not in
array indexing, but in function calls and property mutation. We should
treat all function arguments as potentially be property mutated,
otherwise following example
```js
class A {
a = 1
toString() {
return this.a
}
}
const a = new A()
function foo(x) {
x.a++
}
const b = a + 1
foo(a)
console.log(b)
```
would be error(It should log 2, but logs 3 after compress).
As the result, massive regressions is unavoidable, since some of these
optimizations may indeed cause error. Part of them can be mitigated with
following optimization -- allow inline of ident even if its original
value is mutated. Consider
```js
export function foo(x) {
const y = x
x.a = 1
y.b = 2
}
```
If x is a primitive value, all mutations to its properties are ignored;
if x is a object, then y refers to the same object no matter what
mutation is performed.
And there's still room for more, currently following code
```js
export function foo(x) {
const y = Math.floor(x);
g(y);
}
```
But I'd rather do it in a separate PR.
**Related issue:**
- Closes #7402 .
2023-05-18 01:19:17 +00:00
SWC Bot
a2a544a0ae
chore: Publish crates
2023-05-17 13:12:20 +00:00
Yunfei He
dba78a0031
fix(es/compat): Mark reserved function names private ( #7298 )
2023-05-17 13:10:27 +00:00
SWC Bot
c520e7469e
chore: Publish crates
2023-05-17 06:17:15 +00:00
Donny/강동윤
95291f2c5d
fix(common): Disable tracing/release_max_level_info
( #7401 )
2023-05-17 06:15:18 +00:00
SWC Bot
8052d4dabd
chore: Publish crates
2023-05-17 04:53:45 +00:00
Donny/강동윤
1d3f32056c
fix(es/parser): Fix parsing of module
identifier ( #7400 )
...
**Related issue:**
- Closes #4176 .
- Closes #7372 .
2023-05-17 04:51:57 +00:00
SWC Bot
820f29ffc1
chore: Publish crates
2023-05-17 03:57:12 +00:00
Donny/강동윤
6b92eecd39
test(css/module): Add a test for a fixed issue ( #7399 )
...
**Related issue:**
- Closes #6897 .
2023-05-17 03:55:24 +00:00
SWC Bot
227c272904
chore: Publish crates
2023-05-16 12:33:08 +00:00
Donny/강동윤
eaba323581
test(es/parser): Add a test for a fixed issue ( #7398 )
...
**Related issue:**
- Closes #6976 .
2023-05-16 12:31:05 +00:00
SWC Bot
da0c612d85
chore: Publish crates
2023-05-16 05:18:57 +00:00
Donny/강동윤
3a0565f377
chore(plugin): Update rkyv
to v0.7.42
( #7397 )
2023-05-16 14:17:12 +09:00
SWC Bot
d3db7edd51
chore: Publish crates
2023-05-16 04:14:36 +00:00
Donny/강동윤
40ba242076
fix(es/codegen): Do not create duplicate source map entry ( #7309 )
2023-05-16 04:12:46 +00:00
SWC Bot
02b22f7625
chore: Publish crates
2023-05-16 03:23:16 +00:00
Donny/강동윤
f9cdd741c2
test(es/minifier): Enable more terser tests ( #7396 )
2023-05-16 03:21:08 +00:00
Donny/강동윤
4a53951fe3
chore: Publish crates
2023-05-15 13:18:22 +09:00
SWC Bot
a05e28906b
chore: Publish crates
2023-05-15 04:14:42 +00:00
OJ Kwon
05b4c11497
feat(swc_core): Expose plugin proxy to the host env ( #7391 )
2023-05-15 13:12:33 +09:00
Donny/강동윤
8e6fea8519
chore: Publish crates
2023-05-15 12:42:54 +09:00
SWC Bot
5e3d156aca
chore: Publish crates
2023-05-15 03:20:03 +00:00
OJ Kwon
bba1fad35c
feat(plugin): Add versioned wrapper struct ( #7382 )
2023-05-15 03:17:31 +00:00