Commit Graph

534 Commits

Author SHA1 Message Date
Zak
7d1836de3f
perf(es/minifier): Improve format.inline_script (#8292) 2023-11-15 22:02:29 +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
9c438692c6 chore: Publish crates 2023-11-13 10:03:57 +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
2ef3de0021 chore: Publish crates 2023-11-10 13:10:36 +00:00
SWC Bot
6383ac443d chore: Publish crates 2023-11-10 12:34:31 +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
2d2ad1e9a1 chore: Publish crates 2023-11-09 03:48:08 +00:00
SWC Bot
2effaf6f43 chore: Publish crates 2023-11-09 01:01:47 +00:00
SWC Bot
4c2547adf2 chore: Publish crates 2023-11-07 09:55:14 +00:00
SWC Bot
a072819859 chore: Publish crates 2023-11-07 08:55:03 +00:00
SWC Bot
09b3003e58 chore: Publish crates 2023-11-07 00:54:18 +00:00
SWC Bot
86e83335eb chore: Publish crates 2023-11-06 10:47:53 +00:00
SWC Bot
f00238d543 chore: Publish crates 2023-11-06 10:00:55 +00:00
SWC Bot
b070ffe425 chore: Publish crates 2023-11-06 05:31:11 +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
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
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
4594a7bea4 chore: Publish crates 2023-11-04 01:37:57 +00:00
SWC Bot
2b35e6c159 chore: Publish crates 2023-11-02 22:20:35 +00:00
SWC Bot
b77d99d4b8 chore: Publish crates 2023-10-30 01:41:47 +00:00
SWC Bot
67b0a7f258 chore: Publish crates 2023-10-25 23:01:44 +00:00
SWC Bot
5450f5808a chore: Publish crates 2023-10-23 22:03:16 +00:00
SWC Bot
6f9c6424d7 chore: Publish crates 2023-10-20 13:33:17 +00:00
SWC Bot
34b01672ad chore: Publish crates 2023-10-18 04:24:27 +00:00
SWC Bot
1183c32e3c chore: Publish crates 2023-10-11 14:05:36 +00:00
SWC Bot
34e03c4661 chore: Publish crates 2023-10-08 00:41:50 +00:00
Donny/강동윤
a5621bb30a
chore(xtask): Migrate scripts to xtask (#8072)
This PR adds

 - `xtask clean`
 - `xtask bench`
2023-10-06 14:44:53 +00:00
SWC Bot
5c6c82bc6a chore: Publish crates 2023-10-06 12:41:57 +00:00
Edward Faulkner
6f45b4693e
fix(es/codegen): Fix codegen of type-only imports (#8070) 2023-10-06 12:39:56 +00:00
SWC Bot
a6527bf9ab chore: Publish crates 2023-10-06 00:12:18 +00:00
SWC Bot
78e12595a4 chore: Publish crates 2023-09-26 03:59:50 +00:00
Donny/강동윤
f07bb482e6
fix(es/codegen): Fix codegen of optional chaining expr with a comment (#8005)
**Related issue:**

 - Closes #8004
2023-09-26 03:58:02 +00:00
SWC Bot
b74a9f4357 chore: Publish crates 2023-09-25 23:38:00 +00:00
Donny/강동윤
39c680d814
fix(es/codegen): Fix codegen of unicode surrogates (#7985)
**Description:**


x-ref: https://vercel.slack.com/archives/C02HY34AKME/p1695334071194139


Reproduction: https://github.com/kdy1/repro-test-mdx-korean



Regression of next.js: `v13.4.11`(swc_core@v0.79.13) => `v13.5.2`
(swc_core@v0.83.12)


 - `next@v13.4.19` works (swc_core@v0.79.59)
 - `next@v13.4.20-canary.3` works (swc_core@v0.79.70)
 -  **`next@v13.4.20-canary.32` fails** (swc_core@v0.83.12)

Commit range:
662f236aa5...e67bf05f9d

- `swc_core@v0.79.70`:
662f236aa5
- `swc_core@v0.83.12`:
e67bf05f9d

Diff: https://gist.github.com/kdy1/047e7e5537c34180d446cb3d5b95fce8

---

I did more investigation by monkey-patching the `next` package.
`.minify()` resolved without an exception.
It means that `.minify()` is producing an invalid ES code.

So... candidates are

 - https://github.com/swc-project/swc/pull/7890
 - https://github.com/swc-project/swc/pull/7876
 - https://github.com/swc-project/swc/pull/7858
 - https://github.com/swc-project/swc/pull/7856
 - https://github.com/swc-project/swc/pull/7853
 - https://github.com/swc-project/swc/pull/7832
2023-09-25 23:36:05 +00:00
SWC Bot
e146ff7d8e chore: Publish crates 2023-09-25 01:42:53 +00:00
magic-akari
9c9a538f23
refactor(es/typescript): Reimplement TypeScript pass (#7202)
**Description:**

## Bugfixes
- Exported `let`/`var` declarations in TypeScript namespaces should be mutable.
- Fix missing declaration of complex exported patterns in TypeScript namespaces.
- Preserve concrete TS namespaces.

## New Features
- Introducing [Verbatim Module Syntax](https://www.typescriptlang.org/tsconfig#verbatimModuleSyntax).
- Enum value will now be inlined whenever possible within a single module, optimizing runtime performance.
- Constant enums will be automatically eliminated when feasible, This can reduce bundle size.
- Added support for cross-referencing enum values.

## Deprecated
`TsEnumConfig` is deprecated
  - The `treat_const_enum_as_enum` transform option is deprecated.
  - The `ts_enum_is_readonly` assumption option is deprecated.

**BREAKING CHANGE:**

TypeScript Config is changed.


**Related issue:**

 - Closes #5197
 - Closes #5259 
 - Closes #7177
 - Closes #7453
 - Closes #7676 
 - Closes #7681
 - Closes #7791 
 - Closes #7961
2023-09-25 01:41:00 +00:00
SWC Bot
0d0f04689c chore: Publish crates 2023-09-11 08:33:49 +00:00
Donny/강동윤
dac8888829
fix(es/codegen): Use emitAssertForImportAttributes (#7936)
**Description:**

 - Add `format.emitAssertForImportAttributes` to `minify()`
 - Use `jsc.experimental. emitAssertForImportAttributes`.

**Related issue (if exists):**

 - Closes #7926
 - Closes #7928
2023-09-11 08:31:46 +00:00
SWC Bot
5431010c75 chore: Publish crates 2023-09-10 07:00:21 +00:00
magic-akari
2da58959c2
fix(es/codegen): Emit leading comments for ExprStmt (#7916) 2023-09-10 06:58:26 +00:00
SWC Bot
4623b3e07f chore: Publish crates 2023-09-05 12:26:15 +00:00
Donny/강동윤
ee7575695d
feat(es/codegen): Add an option to print assert for import attributes (#7914)
**Description:**

- `jsc.experimental.keepImportAssertions` is renamed to `jsc.experimental.keepImportAttributes`.
 - `jsc.experimental.emitAssertForImportAttributes` is added.

**Related issue:**

 - Closes #7908
2023-09-05 21:24:25 +09:00