Commit Graph

5775 Commits

Author SHA1 Message Date
bohan
2cdea3fbea
fix(es/codegen): Wrap quote for length greater than one (#8351) 2023-11-29 14:09:44 +00:00
SWC Bot
655e95a24d chore: Publish crates 2023-11-29 13:41:46 +00:00
magic-akari
ff719f0cdd
fix(es/fixer): Wrap yield expression in await expression (#8357)
**Related issue:**

 - Closes #8356
2023-11-29 13:39:46 +00:00
SWC Bot
1853280f4f chore: Publish crates 2023-11-29 02:43:33 +00:00
Donny/강동윤
55da0bb9dd
chore(css/linter): Document rules require porting (#8352) 2023-11-29 11:40:33 +09:00
SWC Bot
ddddd20559 chore: Publish crates 2023-11-27 01:56:46 +00:00
Donny/강동윤
1891afa2ad
fix(es/codegen): Fix panic due to \\ud (#8346)
**Related issue:**

 - Closes #8345
2023-11-27 01:54:45 +00:00
SWC Bot
e158c0e5a0 chore: Publish crates 2023-11-26 11:37:59 +00:00
Han Seung Min - 한승민
a423681df8
fix(es/parser): Fix conditional compilation (#8343)
**Description:**

`swc_ecma_parser` crate has a `typescript` feature which enables TS parsing, the `Syntax::Typescript` variant is behind the `typescript` feature, compiling without this feature fails as `Syntax::Typescript` is referenced at many places without `#[cfg(feature = "typescript")]`
2023-11-26 11:36:05 +00:00
SWC Bot
7e8b6c0f04 chore: Publish crates 2023-11-26 00:50:50 +00:00
Bin Xin
58568fa23b
fix(es/react): Make jsx with single spread child static (#8339)
**Description:**

Example:
```js
<h1>{...a}</h1>
```
Before:
```js
_jsx("h1", {
    children: [
        ...a
    ]
})
```
After:
```js
_jsxs("h1", {
    children: [
        ...a
    ]
})
```

Following the implementation in [Typescript](d4fbc9b57d/src/compiler/transformers/jsx.ts (L340)), jsx with a single spread child should also be considered as static jsx.

Live examples:
[Typescript](https://www.typescriptlang.org/play?target=99&jsx=4#code/MYewdgzgLgBAhjAvDAPACwIwD4DeA6AgbQwCYBmAXQF8UB6TLAKCA)
[Esbuild](https://esbuild.github.io/try/#dAAwLjE5LjcAewogIGxvYWRlcjogJ2pzeCcsCiAganN4OiAnYXV0b21hdGljJywKfQA8ZGl2PnsuLi5bXX08L2Rpdj4)
[SWC](https://play.swc.rs/?version=1.3.100-nightly-20231124.1&code=H4sIAAAAAAAAA0vOzysuUUhUsFWwSckss6vW09OLjq210QdxAHOBudocAAAA&config=H4sIAAAAAAAAA1WOMQrDMAxF95zCaO5QPPY2wijFIbaDJENL8N0rO2lJN%2F33kPT3yTlYJMDD7TZa2JCF%2BJeNyDsrvowAhYQSOG4Kt69dpCvlSoO0Q8BaipCJGVehkyljlrlwul5nwqAX0FHNGlPfBqxaEmoMcOr290WRn6Sjmvi796NWm9oHTYlQ69cAAAA%3D)
2023-11-26 00:48:51 +00:00
SWC Bot
ae6c30b221 chore: Publish crates 2023-11-25 02:45:12 +00:00
Austaras
ed5a9b3f2e
fix(es/minifier): Give up terminate merge if in try with finally (#8342)
**Related issue:**

 - Closes #8337.
 - Closes #8324.
 - Reverts #8328.
2023-11-25 02:43:18 +00:00
SWC Bot
727ce04f89 chore: Publish crates 2023-11-23 11:22:29 +00:00
Redfire
13156157eb
build(cargo): Update vergen to v8 (#8325)
**Description:**

Updates `vergen` build dependency in `swc_core` to v8. This reduces the amount of dependency duplication. In my case in particular, it allows me to remove `syn` v1 from my [repository](https://github.com/redfire75369/spiderfire).
2023-11-23 11:20:12 +00:00
SWC Bot
5d94418518 chore: Publish crates 2023-11-23 01:53:53 +00:00
Austaras
3dd73a3cd8
fix(es/renamer): Allow globalThis to be shadowed (#8327)
**Related issue:**

 - Closes #8317
2023-11-23 01:52:01 +00:00
SWC Bot
5ce4b368db chore: Publish crates 2023-11-23 00:57:05 +00:00
Donny/강동윤
01e2c7fc5a
fix(es/minifier): Fix if_return bug related to await and yield (#8328)
**Related issue:**

 - Closes #8324
2023-11-23 00:54:57 +00:00
SWC Bot
14cd8dda29 chore: Publish crates 2023-11-22 23:25:21 +00:00
magic-akari
8af6ffb1dd
fix(es/parser): Wrap with OptChain across TsNonNull (#8332)
**Related issue:**

- Closes #8326.
2023-11-23 08:23:30 +09:00
SWC Bot
185289775f chore: Publish crates 2023-11-22 06:22:12 +00:00
Zak
91ef7c9415
fix(es/decorators): Resolve enum for design:returntype (#8320) 2023-11-22 06:20:11 +00:00
SWC Bot
97d57f0e4f chore: Publish crates 2023-11-21 09:21:47 +00:00
David Sherret
c25601dec2
fix(es/typescript): Handle shebang with jsx pragma (#8318)
**Description:**

This handles a shebang with a jsx prag. Previously `h` would be removed as an import in this case.

**Related issue:**

https://github.com/denoland/deno/issues/21258
2023-11-21 09:19:40 +00:00
강동윤 (Donny)
23fdaf13f8 chore: Publish crates 2023-11-21 10:23:28 +09:00
SWC Bot
7cec0ac1a0 chore: Publish crates 2023-11-20 22:51:17 +00:00
Zzzen
51042e090d
fix(es/parsing): Fix parsing of type satisfies = 0; (#8305)
**Related issue:**

 - Closes #8121
2023-11-20 22:49:15 +00:00
SWC Bot
a8bd170634 chore: Publish crates 2023-11-20 22:19:11 +00:00
Donny/강동윤
7dfdc12218
fix(es/module): Read link if an import is resolved as symlink (#8297)
**Related issue:**

 - Closes #8265
2023-11-21 07:17:05 +09:00
SWC Bot
38c489c26c chore: Publish crates 2023-11-20 21:59:52 +00:00
magic-akari
feb8a6dad9
fix(es/parser): Report error for exported reserved name (#8313)
**Related issue:**

- Closes #8268.
2023-11-20 21:57:51 +00:00
SWC Bot
0744dbddc5 chore: Publish crates 2023-11-20 19:57:49 +00:00
강동윤 (Donny)
e9fa6e90c8 chore: Publish crates 2023-11-21 02:28:23 +09:00
SWC Bot
5fa2ed4bfd chore: Publish crates 2023-11-20 06:22:03 +00:00
magic-akari
00b88399a0
fix(es/parser): Fix parsing of import type from from (#8309)
**Related issue:**

- Closes #8308.
2023-11-20 06:20:06 +00:00
SWC Bot
af8c1d33f5 chore: Publish crates 2023-11-20 04:30:06 +00:00
David Sherret
2113bb3e19
fix(es/resolver): Ignore qualifiers of TsImportType (#8299) 2023-11-20 04:04:17 +00:00
SWC Bot
2cd893fb8a chore: Publish crates 2023-11-19 15:13:56 +00:00
Austaras
572ad63e08
fix(es/minifier): Apply new SyntaxContext to inlined Arrow correctly (#8312) 2023-11-20 00:11:38 +09:00
Donny/강동윤
a0048427dd
test(es/minifier): Update test refs (#8310) 2023-11-19 19:16:38 +09:00
SWC Bot
2b368f6731 chore: Publish crates 2023-11-19 06:35:42 +00:00
Zak
fab51e1843
fix(es/proposal): Improve resolving of design:returntype (#8303)
**Description:**

Emits `'design:returntype'` metadata when using `"decoratorMetadata": true`.

**Related issue:**

 - Closes #3319
2023-11-19 15:33:20 +09:00
SWC Bot
f38ad1eeef chore: Publish crates 2023-11-18 00:03:24 +00:00
Austaras
c18a959e3a
fix(es/minifier): Apply new SyntaxContext to inlined Arrow (#8301)
**Related issue:**

 - Closes #8288
2023-11-18 09:01:27 +09:00
SWC Bot
2a2b5ee5b1 chore: Publish crates 2023-11-16 08:52:11 +00:00
Donny/강동윤
07c8935904
fix(es/codegen): Fix get_ascii_only_ident (#8287)
**Related issue:**

 - Closes #8260
2023-11-16 08:50:12 +00:00
SWC Bot
9e8fe38d31 chore: Publish crates 2023-11-16 02:03:19 +00:00
David Sherret
369fb21e22
fix(es/codegen): Fix codegen of type args of an import type and a type query (#8296) 2023-11-16 02:01:15 +00:00
SWC Bot
c566b73bfb chore: Publish crates 2023-11-16 00:20:22 +00:00
Donny/강동윤
7985e02fc8
fix(es/minifier): Remove hack for built-in class names (#8293)
**Description:**

Regarding https://github.com/vercel/next.js/issues/55682, I made a mistake while investigating. I assumed it's `swcMinify`-only but it seems like `node-fetch` is fundamentally incompatible with our minification options.

I thought `node-fetch` works with terser, but it did not, and it **should not**. But as I thought `terser` works, I assumed that `terser` has a hack for `AbortSignal`. And that's how I fixed `swcMinify: true`. The correct fix is `keep_classnames: true` but it will result in +~10% bundle size bloat.
At first, I used the correct way (`keep_classnames: true`), but it resulted in the bundle size bloat, so I mimicked the hack of terser with https://github.com/vercel/next.js/pull/57904.

While working on other minification issues, I found that there's no such hack in `terser` and I need to remove the hack in the SWC minifier.
The repro in https://github.com/vercel/next.js/issues/55682 does not work with `swcMinify: false`, even with next@14. The problem of minifier and node-fetch was not exploited before `serverMinification: true`.


**Related issue:**

 - https://github.com/brix/crypto-js/issues/415
2023-11-16 09:17:42 +09:00
SWC Bot
666c843e7e chore: Publish crates 2023-11-15 23:38:46 +00:00
David Sherret
25ac679bd3
build(es): Remove duplicate phf dependency (#8294) 2023-11-15 23:36:38 +00:00
SWC Bot
c03f84e54e chore: Publish crates 2023-11-15 22:45:18 +00:00
David Sherret
66a4d37031
build(common): Remove dependency on string-cache (#8291) 2023-11-15 22:43:22 +00:00
SWC Bot
99617848ef chore: Publish crates 2023-11-15 22:04:42 +00:00
Zak
7d1836de3f
perf(es/minifier): Improve format.inline_script (#8292) 2023-11-15 22:02:29 +00:00
SWC Bot
36fdb179e4 chore: Publish crates 2023-11-15 17:49:24 +00:00
David Sherret
7bbe5e67d9
refactor: Remove swc_ecma_dep_graph (#8290) 2023-11-15 17:47:16 +00:00
SWC Bot
3bbd340205 chore: Publish crates 2023-11-15 01:09:49 +00:00
Austaras
73fec945b5
fix(es/minifier): Make Finalizer inline literals (#8285)
**Related issue:**

 - Closes #8284
2023-11-15 01:07:37 +00:00
SWC Bot
f86c12b0b4 chore: Publish crates 2023-11-14 21:39:03 +00:00
bohan
f059270348
feat(es/minifier): Support format.inline_script (#8252) 2023-11-14 21:37:05 +00:00
SWC Bot
5fed604276 chore: Publish crates 2023-11-14 20:02:17 +00:00
Donny/강동윤
1ccfc0762c
fix(es/minifier): Respect pure_funcs for tagged tpls (#8280)
**Related issue:**

 - Closes #8275.
2023-11-14 19:59:15 +00:00
SWC Bot
2f6af92232 chore: Publish crates 2023-11-14 16:47:24 +00:00
Austaras
65c3d0e3f4
feat(es/minifier): Swap bin expr to save paren (#8277) 2023-11-14 16:45:24 +00:00
SWC Bot
aa36a53c42 chore: Publish crates 2023-11-14 16:01:17 +00:00
Austaras
20fb5bab32
fix(es/minifier): Keep class with a static block (#8283)
**Related issue:**

 - Closes #8271.
2023-11-15 00:59:14 +09:00
SWC Bot
656e13143c chore: Publish crates 2023-11-13 22:55:08 +00:00
SWC Bot
9c438692c6 chore: Publish crates 2023-11-13 10:03:57 +00:00
magic-akari
c1281534b6
fix(es/parser): Fix ASI hazard of static (#8262)
**Related issue:**

 - Closes #8253
2023-11-13 10:02:02 +00:00
SWC Bot
35b95ae430 chore: Publish crates 2023-11-13 03:50:20 +00:00
Austaras
ebcd825225
fix(es/minifier): Enable seq inliner for const declarations (#8255) 2023-11-13 03:47:49 +00:00
SWC Bot
07cc635489 chore: Publish crates 2023-11-11 19:12:50 +00:00
Donny/강동윤
9a0572b968
refactor(swc_node_base): Rename to swc_malloc (#8272)
**Description:**

This is quite convinient.
2023-11-11 19:10:56 +00:00
SWC Bot
14a6bf0747 chore: Publish crates 2023-11-11 17:27:26 +00:00
Donny/강동윤
ee0c12e4e7
chore(ci): Fix CI (#8267) 2023-11-12 02:25:36 +09:00
SWC Bot
2ef3de0021 chore: Publish crates 2023-11-10 13:10:36 +00:00
Donny/강동윤
0678c3c55f
fix(es/parser): Adjust the context for cond expr while parsing JSX (#8261)
**Related issue:**

 - Closes #8243.
2023-11-10 13:07:53 +00:00
SWC Bot
6383ac443d chore: Publish crates 2023-11-10 12:34:31 +00:00
Donny/강동윤
e58912622d
fix(es/parser): Consider ASI while parsing TypeScript type aliases (#8263)
**Related issue:**

 - Closes #8073.
2023-11-10 12:31:55 +00:00
SWC Bot
e0525b595e chore: Publish crates 2023-11-10 02:30:21 +00:00
magic-akari
6992d83d09
fix(es/decorators): Minimize class declarations transformation (#8245) 2023-11-10 02:27:01 +00:00
SWC Bot
ac80d7a93c chore: Publish crates 2023-11-10 00:33:30 +00:00
Donny/강동윤
0faa2c4a01
fix(es/codegen): Check for trailing comments while emitting an arrow (#8257)
**Description:**

This PR also **fixes** the `Default` implementation of `JsMinifyFormatOptions`. It didn't matched the default value when it's used with `serde::Deserialize`.


**Related issue:**

 - Closes #8251
2023-11-10 00:30:28 +00:00
SWC Bot
665d679c69 chore: Publish crates 2023-11-09 21:53:21 +00:00
Donny/강동윤
302954e4e5
perf(css/parser): Use AtomStoreCell (#8247) 2023-11-10 06:50:33 +09:00
SWC Bot
cb44d3fc33 chore: Publish crates 2023-11-09 12:01:47 +00:00
Donny/강동윤
be748f0f33
fix(es/minifier): Use cooked while converting tpls into strings (#8248)
**Related issue:**

 - Closes #8228
2023-11-09 11:59:42 +00:00
강동윤 (Donny)
60455b0e3a chore: Publish crates 2023-11-09 15:12:15 +09:00
SWC Bot
2d2ad1e9a1 chore: Publish crates 2023-11-09 03:48:08 +00:00
Donny/강동윤
9a4bad4e9e
refactor(atoms): Improve APIs (#8249) 2023-11-09 03:45:59 +00:00
SWC Bot
2effaf6f43 chore: Publish crates 2023-11-09 01:01:47 +00:00
David Sherret
a5a6eb53a5
perf(atoms): Introduce AtomStoreCell (#8232) 2023-11-09 09:59:20 +09:00
SWC Bot
cbc01acac8 chore: Publish crates 2023-11-07 12:41:57 +00:00
Donny/강동윤
a3c03b30fb
perf(css/parser): Use AtomStore (#8238)
**Related issue:**

 - Closes #8237.
2023-11-07 21:38:54 +09:00
SWC Bot
4c2547adf2 chore: Publish crates 2023-11-07 09:55:14 +00:00
Donny/강동윤
c01454ad41
perf(atoms): Update hstr to make global APIs fast (#8241)
**Related issue:**

 - https://github.com/dudykr/ddbase/pull/14
2023-11-07 18:52:21 +09:00
SWC Bot
8aee432c69 chore: Publish crates 2023-11-07 09:36:20 +00:00
Niklas Mischkulnig
f9f305cc5f
build(preset-env/base): Upgrade browserslist-rs to v0.13.0 (#8229)
**Description:**

Upgrade browserslist-rs, there was a major version change because wasm-pack functionality was split out into a feature:


https://github.com/browserslist/browserslist-rs/compare/v0.12.4...v0.13.0

---------

Co-authored-by: 강동윤 (Donny) <kdy1997.dev@gmail.com>
2023-11-07 09:33:16 +00:00
SWC Bot
a072819859 chore: Publish crates 2023-11-07 08:55:03 +00:00
David Sherret
37657b8bd5
perf(es/lexer): Remove needless clones of Rc<RefCell<AtomStore>> (#8231)
Removes some clones of `self.atom`.

`> cargo "bench" "--package" "swc_ecma_parser" "--bench" "parser" "--" "three"`

Main: ~38.2ms
This PR: ~37.8ms
2023-11-07 08:52:14 +00:00
SWC Bot
09b3003e58 chore: Publish crates 2023-11-07 00:54:18 +00:00
Donny/강동윤
aa22746d03
perf(atoms): Replace string-cache with hstr (#8126)
**Description:**

`hstr` is an alternative for `string-cache` which does not support static strings and does not use a global mutex.
 
**Related issue:**

 - Closes #4946.
 - Closes #7974.
2023-11-07 00:51:43 +00:00
SWC Bot
86e83335eb chore: Publish crates 2023-11-06 10:47:53 +00:00
Donny/강동윤
d4ae44ac45
perf(es/parser): Use smarter lookup table for lexer (#8226)
**Description:**

`phf` is slower than expected.
2023-11-06 19:45:46 +09:00
SWC Bot
f00238d543 chore: Publish crates 2023-11-06 10:00:55 +00:00
Austaras
495268f126
chore(bindings/node): Upgrade jemalloc (#8227)
**Description:**

To get rid of rustc warning.
2023-11-06 09:57:49 +00:00
SWC Bot
b070ffe425 chore: Publish crates 2023-11-06 05:31:11 +00:00
Donny/강동윤
e3e439dba6
perf(es/parser): Improve performance (#8224)
**Description:**

Small things
2023-11-06 05:28:30 +00:00
SWC Bot
1f3726dc64 chore: Publish crates 2023-11-06 04:49:46 +00:00
Donny/강동윤
b745ed7ac8
perf(es/minifier): Remove needless operations for char freq analysis (#8222)
**Description:**

This skips a string search operation, which is quite costly, without affecting the output.
2023-11-06 13:46:43 +09:00
SWC Bot
48e5c9ad54 chore: Publish crates 2023-11-06 04:18:48 +00:00
Donny/강동윤
3833cf4e55
perf(es/parser): Remove needless strcmp ops (#8223)
**Description:**


## The current `main`

```
es/parser/angular       time:   [7.9848 ms 8.0003 ms 8.0243 ms]
```

## This PR

```
es/parser/angular       time:   [7.3380 ms 7.3498 ms 7.3663 ms]
```
2023-11-06 13:16:35 +09:00
SWC Bot
968345b7f6 chore: Publish crates 2023-11-06 00:54:22 +00:00
Donny/강동윤
02cd7c2608
fix(css/modules): Fix handling of :global() selector (#8219)
**Related issue:**

 - Closes #8179
2023-11-06 00:51:09 +00:00
SWC Bot
edb46c3c71 chore: Publish crates 2023-11-04 21:49:01 +00:00
Donny/강동윤
14ea705f27
build(cargo): Update rustc to nightly-2023-11-04 (#8221)
**Breaking Changes**:

 - `Mark::default()` is now identical as `Mark::new()`.

**Description:**

I want to see if inlining is improved
2023-11-04 21:47:10 +00:00
SWC Bot
1095bff35a chore: Publish crates 2023-11-04 08:28:24 +00:00
bohan
67e2c4a4fd
perf(es): Delete useless partition and extend in comments (#8214)
I've used `bizcharts` as a benchmark, and:

before this PR 17s:

<img width="288" alt="image"
src="https://github.com/web-infra-dev/rspack/assets/30187863/35232863-247a-4825-a08f-977de46e7216">

after this PR 1.7s:

<img width="585" alt="image"
src="https://github.com/swc-project/swc/assets/30187863/b802abf0-d699-45c7-b9f3-2f52192f7477">


You can get more info at
https://github.com/web-infra-dev/rspack/issues/4525
2023-11-04 08:26:25 +00:00
SWC Bot
71448552e5 chore: Publish crates 2023-11-04 04:19:10 +00:00
Donny/강동윤
1a26be2a27
feat(es/codegen): Respect ascii_only: false for StrLit (#8217)
**Related issue:**

 - Closes #8189
2023-11-04 04:15:58 +00:00
SWC Bot
34e7c32085 chore: Publish crates 2023-11-04 02:16:21 +00:00
magic-akari
a00f575837
perf(es/typescript): Visit ts import/export only once (#8213)
**Description:**

Move `visit_mut_for_ts_import_export` into `visit_mut_module` to make sure we only visit the top-level items.
2023-11-04 02:13:27 +00:00
SWC Bot
4594a7bea4 chore: Publish crates 2023-11-04 01:37:57 +00:00
Donny/강동윤
aeb9cafd11
fix(css/modules): Allow out-of-order class names for composes (#8218)
**Related issue:**

 - Closes #7910
2023-11-04 01:35:59 +00:00
강동윤 (Donny)
808547f592 chore: Publish crates 2023-11-04 06:42:43 +09:00
SWC Bot
5bdd8fd9e7 chore: Publish crates 2023-11-02 23:31:51 +00:00
Donny/강동윤
47733a951c
fix(es/react): Visit children nodes in jsx-src pass (#8212)
**Related issue:**

 - Closes #8210
2023-11-03 08:29:16 +09:00
SWC Bot
2b35e6c159 chore: Publish crates 2023-11-02 22:20:35 +00:00
Donny/강동윤
83a5a0c612
fix(es/compat): Handle private names from class properties pass (#8090)
**Related issue:**

 - Closes #7561
 - https://github.com/vercel/next.js/issues/56612
2023-11-02 22:18:17 +00:00
SWC Bot
407aa63cea chore: Publish crates 2023-11-02 21:40:11 +00:00
magic-akari
abced23b2a
fix(es/typescript): Preserve const enum for named export (#8208)
**Related issue:**

- Closes: #8204
2023-11-02 21:38:14 +00:00
SWC Bot
f721814fea chore: Publish crates 2023-11-02 03:32:27 +00:00
Donny/강동윤
c061356b63
fix(es/transforms): Do not add PURE comment to BytePos(0) (#8207)
**Related issue:**

 - https://github.com/vercel/next.js/pull/57904 (CI failed)
2023-11-02 03:29:59 +00:00
SWC Bot
e87a45bd67 chore: Publish crates 2023-11-02 00:02:22 +00:00
Donny/강동윤
dd805e95a4
feat(es/minifier): Respect inline level and preserve native names (#8205)
**Description:**

Note: Preserving native names is a hack, but it's used by `terser` and it's the only way to preserve the name of `class AbortSignal` while mangling without `keep_classnames: true`. We can special case `AbortSignal`, but let's just follow `terser`.


**Related issue:**

 - https://github.com/vercel/next.js/pull/57904
2023-11-02 08:59:59 +09:00
SWC Bot
d3ce0f1245 chore: Publish crates 2023-11-01 13:46:52 +00:00
Donny/강동윤
c1b255a59c
fix(es/compat): Use dummy span for blocks in parameters (#8202)
**Related issue:**

 - Closes #8199
2023-11-01 13:43:53 +00:00
SWC Bot
9588088b37 chore: Publish crates 2023-10-31 09:29:46 +00:00
SWC Bot
6a9b6f6732 chore: Publish crates 2023-10-30 08:49:00 +00:00
Donny/강동윤
3dc4e1e02d
feat(es/preset-env): Update compat data (#8194)
**Related issue:**

 - Closes #8193.
2023-10-30 08:46:24 +00:00
SWC Bot
7cfa3213fb chore: Publish crates 2023-10-30 05:11:33 +00:00
Donny/강동윤
b13bc32027
fix(es/compat): Make block-scoping pass rename exports correctly (#8175)
**Related issue:**

 - Closes #8148
2023-10-30 05:08:27 +00:00
SWC Bot
b77d99d4b8 chore: Publish crates 2023-10-30 01:41:47 +00:00
Donny/강동윤
0aafa75fef
feat(es/testing): Use __swc_snapshots__ for test! macro (#8191)
**Description:**

This implements something similar to `__snapshots__` of `jest`. Instead of storing the expected result as a string literal, we now store it in `$crate/tests/__swc_snapshots__/$path_to_test__$test_name.js`.

**Related issue:**

 - Closes #4509
2023-10-30 10:38:59 +09:00
SWC Bot
595a6f78ea chore: Publish crates 2023-10-29 22:37:25 +00:00
SWC Bot
a78b486d76 chore: Publish crates 2023-10-29 22:28:09 +00:00
Donny/강동윤
e9606147fc
feat(es/testing): Support babel-like fixture testing officially (#8190) 2023-10-30 07:24:49 +09:00
강동윤 (Donny)
b74ef5a807 chore: Publish crates 2023-10-27 22:23:14 -07:00
SWC Bot
352208548d chore: Publish crates 2023-10-27 18:18:40 +00:00
Austaras
bb02cdd26e
refactor(es/minifier): Simplify analyzer context (#8164) 2023-10-27 18:16:00 +00:00
SWC Bot
67b0a7f258 chore: Publish crates 2023-10-25 23:01:44 +00:00
Donny/강동윤
7530e9051d
perf(es/minifier): Add has_flag to Comments (#8182) 2023-10-25 22:59:03 +00:00
강동윤 (Donny)
dc21f79176 chore: Publish crates 2023-10-24 04:32:08 -07:00
SWC Bot
19ccd66d89 chore: Publish crates 2023-10-24 00:04:34 +00:00
Donny/강동윤
5ca3b63582
build(deps): Update ahash (#8174) 2023-10-24 00:01:58 +00:00
SWC Bot
5450f5808a chore: Publish crates 2023-10-23 22:03:16 +00:00
Donny/강동윤
9ceb57b4c7
fix(es/compat): Don't add pure annotations to dummy spans (#8172)
**Related issue:**

 - Closes #8155.
 - Closes #8173.
2023-10-23 15:00:35 -07:00
SWC Bot
7747dbd499 chore: Publish crates 2023-10-23 21:26:12 +00:00
Austaras
c26a2252b6
fix(es/minifier): Always consider reassigned when inlining (#8168)
**Related issue:**

 - Closes #8161.
2023-10-23 21:23:29 +00:00
SWC Bot
76ba2434de chore: Publish crates 2023-10-23 20:42:56 +00:00
David Sherret
02d0613a35
fix(es/typescript): Support ts_enum_is_mutable with const enums (#8171) 2023-10-23 13:40:16 -07:00
강동윤 (Donny)
5c8a14bd69 chore: Publish crates 2023-10-21 04:37:40 -07:00
SWC Bot
cf92d8fbe7 chore: Publish crates 2023-10-21 11:36:36 +00:00
SWC Bot
366d9eb514 chore: Publish crates 2023-10-20 21:35:19 +00:00
Donny/강동윤
5be8e74ee0
chore(es/module): Remove serde(deny_unknown_fields) (#8163)
**Related issue:**

 - Closes #7979
2023-10-20 21:32:34 +00:00
SWC Bot
6f9c6424d7 chore: Publish crates 2023-10-20 13:33:17 +00:00
Donny/강동윤
826386f49a
fix(es/parser): Skip this parameters in setter (#8158)
**Description:**

This is not a proper fix, but let's wait for the conf.

**Related issue:**

 - Closes #8156
2023-10-20 13:30:40 +00:00
SWC Bot
b806f925f1 chore: Publish crates 2023-10-20 06:09:49 +00:00
Donny/강동윤
08cf1f786d
fix(es/utils): Fix regression of RefRewriter (#8153)
**Related issue:**

- Found while investigating https://github.com/swc-project/swc-ecosystem-ci/actions/runs/6581045465/job/17880208108
2023-10-20 06:07:17 +00:00
SWC Bot
4a1a233db8 chore: Publish crates 2023-10-19 21:08:38 +00:00
Donny/강동윤
8a461b8957
feat(es/minifier): Drop empty static blocks (#8152)
**Related issue:**

 - Closes #8136
2023-10-19 21:06:12 +00:00
SWC Bot
64bddc110e chore: Publish crates 2023-10-19 20:24:12 +00:00
Donny/강동윤
35601e4dcb
fix(es/minifier): Abort function inliner if keep_fnames is true (#8145)
**Related issue:**

 - https://github.com/vercel/next.js/issues/56408
2023-10-19 20:20:54 +00:00
SWC Bot
9e71134b3c chore: Publish crates 2023-10-19 19:40:19 +00:00
Austaras
13106e0d2e
refactor(es/minifier): Decouple assign_count from reassigned (#8137) 2023-10-19 19:37:37 +00:00
SWC Bot
a18ffc107f chore: Publish crates 2023-10-19 17:13:59 +00:00
pshu
8d7894c71f
fix(css/ast): Make .hash() of Token not recursive (#8151) 2023-10-19 17:10:48 +00:00
SWC Bot
0b6f2b4fe9 chore: Publish crates 2023-10-18 18:00:42 +00:00
magic-akari
e186b80ddc
feat(es/compat): Skip empty class static blocks (#8138)
**Description:**

And update the `static_block_private_id` generate rules to be consistent with Babel.

**Related issue:**

 - #8136
2023-10-18 17:58:02 +00:00
SWC Bot
34b01672ad chore: Publish crates 2023-10-18 04:24:27 +00:00
David Sherret
bffe33a270
feat(es/parser): Implement AsRef<str> for IdentLike (#8133) 2023-10-18 04:22:03 +00:00
SWC Bot
5bb63aa2a2 chore: Publish crates 2023-10-18 03:47:26 +00:00
Donny/강동윤
111de264b0
fix(es/minifier): Abort seq inliner if b can short-circuit (#8128)
**Related issue:**

 - Closes #8119
2023-10-18 03:44:36 +00:00
SWC Bot
736831cb68 chore: Publish crates 2023-10-18 03:10:04 +00:00
Austaras
4f67794223
feat(es/minifier): Inline into the arguments of new using seq inliner (#8127) 2023-10-18 03:07:14 +00:00
SWC Bot
dc337d59f1 chore: Publish crates 2023-10-16 22:11:45 +00:00
SWC Bot
9b27a41b76 chore: Publish crates 2023-10-16 20:41:20 +00:00
Alessandro Chitolina
9c029ef095
feat(es/compat): Implement decorator metadata proposal (#8097)
**Description:**

This PR implements the [decorator
metadata](https://github.com/tc39/proposal-decorator-metadata) proposal,
that is now at Stage 3.

As the decorator metadata proposal is a small extension of the decorator
proposal and is not possible to compile the metadata without transpiling
decorators, I opted to implement it into the existing decorator
transformer (and helper)

**Related issue:**

 - Closes #7957
2023-10-16 20:38:53 +00:00
SWC Bot
f81ca2c795 chore: Publish crates 2023-10-15 10:27:05 +00:00
magic-akari
fb81a36adc
fix(es/utils): Skip var declarator name in RefRewriter (#8125)
**Related issue:**

 - Closes #8124
2023-10-15 10:24:40 +00:00
SWC Bot
3bca931560 chore: Publish crates 2023-10-15 08:25:08 +00:00
David Sherret
57b171dcbe
feat(es/typescript): Add ts_enum_is_mutable to disable enum inlining (#8115)
**Related issue:**

 - Closes #8114.
2023-10-15 08:22:47 +00:00
SWC Bot
06a2b44499 chore: Publish crates 2023-10-13 06:10:04 +00:00
magic-akari
7da3f52485
feat(es/minifier): Evaluate more toFixed expressions (#8109) 2023-10-13 15:07:00 +09:00
강동윤 (Donny)
787a465d8d chore: Publish crates 2023-10-13 12:28:41 +09:00
SWC Bot
a1d7ea7899 chore: Publish crates 2023-10-13 02:52:46 +00:00
Donny/강동윤
affb6fb5e3
refactor(es/compat): Split swc_ecma_transforms_compat (#8110)
**Description:**

- New: `cargo build --release 478.59s user 19.16s system 814% cpu 1:01.09 total`
- Prev: `cargo build --release 495.60s user 18.89s system 742% cpu 1:09.26 total`
2023-10-12 10:08:00 +00:00