# What changed in @swc/core

> 260 changes in @swc/core 1 from its official release notes, upgrade guides and advisories: 8 breaking, 2 security, 16 new APIs and options. Each one cited. Sources checked 2026-10-19. HTML: https://unstale.sh/npm/@swc/core/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @swc/core 1

### Breaking changes

- Fixes AST roundtrip bugs and implements missing conversions, changing ESTree conversion behavior. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- The native addon's minimum supported Rust version is raised to 1.85. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- The parser rejects unicode escapes in RegExp flags. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Adds body_ctxt to the Switch AST node, changing the AST structure. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Uses Function for object accessors in the AST, changing the AST representation. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- The React Compiler no longer uses the React-like prefilter. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Fast strip now rejects unsafe assertion erasure in binary expressions. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The parser now rejects object-rest assignment to array and object literals. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)

### Security

- Falls back to a safe cache root on Unix. (1.16.18) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11618---2026-10-11)
- Bindings fall back to a secure Windows profile cache. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)

### New APIs and options

- Code generation now supports configurable output indentation. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- Bindings now allow opting out of Unix cache root security checks. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- moduleRoot is supported for AMD module IDs. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Adds opt-in parser-only TSRX lowering. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Introduces FunctionBody in the AST. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Exposes reactCompiler.environment.enableFunctionOutlining as a configuration option. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The @swc/nodejs-support-wasm package was added. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The bindings add lint and lintSync APIs to @swc/react-compiler. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Adds React Compiler support to SWC. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- Adds jsc.preserveSymlinks to swc::Options. (1.15.32) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11532---2026-04-27)
- Adds support for extracting comments during minification. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Adds an opt-in resolver that preserves symlinks. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Adds support for the 2023-11 decorators proposal. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Flow stripping is enabled in @swc/core, with parser syntax support and compatibility work for core syntax gaps and Hermes parity. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- npm bindings now support linux ppc64le and s390x. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Implements the named-capturing-groups regex transform. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)

### Performance

- Compatibility transforms skip empty block-scoping renames. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- The parser scans template literals with byte search. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- The first load of the macOS native addon is optimized. (1.16.13) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11613---2026-09-30)
- Deflating browserslist reduces binary size. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Skips identity rename mappings when applying renames. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Position and source map tracking in JsWriter is faster. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- Minifier profiling hotspots are reduced. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The ES parser optimizes comment finalization. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- Transformer compatibility overhead is reduced. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)

### Behavior and default changes

- The minifier can evaluate Math.floor, Math.ceil, Math.round and additional Math functions. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- The minifier expands its support for trivial spreads. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier removes unused parameters for new Function or Class expressions. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier removes unused parameters for new expressions. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier adds fine-grained effect analysis of classes. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The minifier removes useless arguments for callees that are not inlined. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- React Compiler dependency handling gains parity with upstream. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- React Compiler validation and diagnostics gain parity with upstream, including early-return, hooks, memo, lint-gating, and validation aggregation behavior. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)

### Fixes and other changes

- The minifier checks declarations for side effects. (1.16.18) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11618---2026-10-11)
- Compatibility transforms preserve consecutive loop labels. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- Preset-env lowers for-await in native async functions. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- The fixer preserves parentheses in JSX sequence expressions. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- Protects long call chains from stack overflow. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- With out-dir, source map paths are resolved relative to the output. (1.16.17) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11617---2026-10-11)
- Options object deserialization failures now show why deserialization failed, making configuration errors easier to diagnose. (1.16.13) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11613---2026-09-30)
- The HTML minifier preserves adjacent script elements. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Node.js completes Amaro REPL support APIs. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Ambient function declarations allow eval and arguments. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser allows trailing commas after ambient rest parameters. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves arguments after IIFE spreads. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves Array spread arity. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser preserves elisions in arrow binding patterns. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The minifier avoids inlining an arrow with this when it is used as an argument. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves async IIFE return values. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Explicit Script parsing allows await identifiers. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser allows of bindings in await using loops. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Branches are preserved when assignments are collapsed. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves catch assignments before finally blocks. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves catch returns before finally blocks. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves class scope when negating if-return statements. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The minifier checks class side effects. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves computed update targets. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves conditional assignment target order. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves effects from constant switch tests. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Constructor function contexts are isolated. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The HTML parser preserves customizable select markup. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser respects line breaks after declare. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Valid declare readonly field initializers are accepted. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser respects line breaks before definite assignment assertions. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves delete operand effects. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves destructuring patterns with PURE-annotated initializers. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Properties assigned through destructuring targets are marked as mutated. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves empty array assignments. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves empty IIFE parameter effects. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves empty join coercion. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves errors from empty object destructuring. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser allows line breaks before enum names. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Escaped keywords are accepted as property names. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The Node binding returns an error when a file cannot be read instead of panicking. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves finalizer breaks in switches. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves finalizer completions. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Folded Object.keys results are deduplicated. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves function expression names. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves Function.length arity. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The code generator separates generic type assertion openers. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Global defs respect root bindings. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves holes in array joins. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser allows line breaks before import attributes. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Flow match patterns support leading pipes. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Let initialization is preserved when unused variables are dropped. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves lexical method defaults. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Local deletes are folded to false. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves lone surrogate template values. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- A missing codePointAt is folded to undefined. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser recognizes named optional and rest tuple elements. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Lowering nested object rest preserves array rest. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Non-decimal numeric literals are rounded correctly. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The minifier drops unused object pattern defaults. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Prototype setters are skipped when optimizing Object.keys. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves throws from optional-chain continuations. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Optional-chained enum member reads are folded. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser accepts optional generator methods. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Property callees are hoisted safely. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves access to reassigned arguments. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser accepts optional renamed Flow component parameters. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Rest params are retained in dynamic scopes. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves rest RegExp identity. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves returns in finalizers. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Function and class declarations are retained when their self-reference is dropped. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves sequence IIFE argument evaluation. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Sequences are not merged across array spreads. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves Set and Map iteration. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves shadowed undefined yield values. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The minifier guards similar if merges. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves spread iteration in unused builtins. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser resets static block context for nested declarations. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser accepts static constructor methods in JavaScript. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Static helper evaluation is guarded during minification. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser restores strict context after classes. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves strict equality for repeated calls. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The parser allows string import and export names after type. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves string import names. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves string method arguments. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- String.raw templates are evaluated using raw quasis. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves switch fallthrough cases. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Template raw values are decoded when the cooked value is missing. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Tiny toPrecision calls are preserved. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- toExponential formatting is made compatible. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Type references named asserts are preserved before line breaks. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves unary comparison evaluation order. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The code generator minifies unicode escapes in template literals. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Unsafe Symbol call arguments are retained. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Minification preserves unsigned shift coercion. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- The minifier checks eval and arguments usage in var define scope. (1.16.12) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11612---2026-09-29)
- Retries parsing when a Program is ambiguous. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves grammar boundaries for await expressions during parsing. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Restores await parsing in the quote feature. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Drops spans from cached globals values during minification. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Avoids replacing value-used console.*.bind() calls with undefined. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Drops parameters from a getter that replaces a decorated private method. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves control-flow targets in do-while loops during minification. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves Flow component type semantics. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Reports for-loop var declarations as assignments during minification. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves the scope of var bindings in for-of loops during compatibility transforms. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves bindings in copied inline arrow functions. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- The visitor now panics on invalid AST paths. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Avoids a loop when inlining JSX sequences. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Corrects marking for update and test expressions as executed multiple times. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Keys the optimizer environment cache by configured values. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves ownership of pure annotations during minification. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Preserves effects of calls whose values are returned. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- Treats const variable references as enum constants. (1.16.2) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1162---2026-09-04)
- The ES minifier preserves for init expressions. (1.16.1) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1161---2026-08-19)
- The React transform handles apos JSX entities. (1.16.1) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1161---2026-08-19)
- SystemJS output preserves destructuring assignment targets. (1.16.1) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1161---2026-08-19)
- Fixes parameter injection involving bound arguments in the minifier. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Fixes an incorrect fields count in encoding. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Fixes a panic when processing JSX surrogate entities. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Prevents mutable reference escape in the ES AST. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Makes the React Compiler fast check more conservative. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Preserves this in static field parameters. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Preserves TypeScript function overload signatures in the React Compiler. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Splits TypeScript this parameters in the AST. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Lowers async generators unsupported by the target environment. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- Removes unused variable initializer cycles in the minifier. (1.16.0) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#1160---2026-08-14)
- The minifier preserves non-canonical arguments access. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier preserves invalid Array lengths. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier applies ToInt32 when folding bitwise NOT. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Preserves top-level declarations referenced only by direct eval. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Evaluates cooked enum templates. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The TypeScript fast-strip transform preserves ASI before interpolated templates. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Preserves JSON numeric values during optimization. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The HTML minifier preserves JSON script boundaries. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Prevents class state from leaking when nested classes are undecorated. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Transforms non-finite enum values using numeric literals. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Supports hashing non-finite numbers in the JavaScript AST. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Code generation now emits non-finite numeric literals. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier uses numeric literals for non-finite values. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Avoids inexact number radix folding in the minifier. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- Preserves the identity of numeric property keys. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier indexes strings by UTF-16 code unit. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The minifier applies ToUint16 when evaluating fromCharCode. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- The TypeScript fast-strip transform preserves UTF-16 source positions. (1.15.47) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11547---2026-07-29)
- React Compiler scope resolution for catches and parameters was corrected. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The default hygiene pass ignores eval. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The fixer now normalizes identifier patterns in for-head positions. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Fast TypeScript stripping now handles line breaks in generic arrows. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier’s IIFE invocation behavior was adjusted in relation to eval. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier’s IIFE invocation behavior was adjusted for cases with eval. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The React transform emits jsxdev source for fragments. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier now checks the last case. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier measures number length precisely. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The fixer preserves parentheses around PURE-annotated receivers. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Relative symlinked inputs are resolved from the current working directory. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier preserves switch fallthrough termination. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The SystemJS transform was rewritten. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Module transforms rewrite .tsx imports to .js unless JSX is preserved. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The minifier can eliminate unused classes that have cyclic references. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- Infect Collect now collects every used identifier. (1.15.46) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11546---2026-07-19)
- The React compiler treats these blocks as variable boundaries. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- The parser now parses Flow bare renders types. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- The minifier performs this conversion only when the unsafe flag is enabled. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- Corrects scope handling for private property brand checks in ES2022 output. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- The React compiler no longer reports non-fatal success errors as diagnostics. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- Preserves cooked values when the minifier concatenates template literals. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- The React compiler scope collector skips TypeScript this pseudo-parameters. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- Fixes React compiler AST conversion for wrapped assignment targets. (1.15.43) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11543---2026-06-22)
- AST transforms preserve source context. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- The renamer avoids duplicate mangled names across eval scope boundaries. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Code generation emits export as namespace correctly, including when minified. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- The parser handles Flow async generic arrows. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Plugins no longer import __free from env. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Decorator metadata handling now supports import types. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Plugin errors preserve their context. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Fixes a sourcemap panic for multibyte mapping positions. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- The fixer preserves parentheses around new tagged template callees. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- Compatibility transforms rewrite this correctly in destructuring defaults. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- The minifier handles unknown member properties. (1.15.41) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11541---2026-06-09)
- The minifier now preserves object properties in default parameters. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- Fast DTS now strips definite assertions in generated declarations. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The minifier now preserves arguments for destructured callbacks. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The minifier now respects ecma when generating IIFE temporary variables. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- The minifier avoids generating mangled property names that collide with existing properties. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- TypeScript declaration output now strips parameter binding defaults. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- Self-recursive hooks are now excluded from the React refresh dependency array. (1.15.40) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11540---2026-05-23)
- Fixes parsing of empty Flow exact object types. (1.15.33) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11533---2026-05-02)
- Fixes the minifier to preserve sequence order in for-loop initializers. (1.15.33) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11533---2026-05-02)
- Fixes minifier folding of unary boolean nullish coalescing expressions. (1.15.33) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11533---2026-05-02)
- Aligns parser disambiguation for Flow generic arrows and JSX. (1.15.32) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11532---2026-04-27)
- Fixes handling of Flow type-only modules in script transforms. (1.15.32) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11532---2026-04-27)
- Preserves frozen spread registry keys in the minifier. (1.15.32) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11532---2026-04-27)
- Avoids restoring module context when Flow syntax is enabled. (1.15.32) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11532---2026-04-27)
- Adds parser support for anonymous keyof indexers in Flow. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Allows return type annotations on Flow constructors. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Supports parsing full ES version values in minify. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Preserves newlines in quoted JSX attributes. (1.15.30) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11530---2026-04-19)
- Rewrites class references in non-static members. (1.15.26) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11526---2026-04-14)
- The parser now handles mixed Flow anonymous callable parameters. (1.15.26) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11526---2026-04-14)
- Preserves super references in moved static members and scopes their rewrite correctly. (1.15.26) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11526---2026-04-14)
- The enum transformation now handles TypeScript expressions. (1.15.26) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11526---2026-04-14)
- The minifier now inlines property shorthand in computed props. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- The 2023-11 implicit-global rewrite is now scoped to decorator-lifted expressions, avoiding unintended rewrites elsewhere. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- The parser closes Flow syntax gaps by parsing key Flow forms. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- The minifier now caps deep if_return conditional chains. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- The regexp transform preserves source for wrapped named groups. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- HTML code generation keeps the closing paragraph tag for paragraphs with a span parent. (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- The minifier now handles toExponential(undefined). (1.15.24) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11524---2026-04-04)
- Preserves an explicit index.js import path when baseUrl is set. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Resolves issues with the 2022-03 decorators behavior. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- The Rust CLI binary now honors externalHelpers=false. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- The fixer now wraps newly generated optional chains. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Skips mkdir when the output file targets the current directory. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Module rewriting now avoids changing unknown relative extensions. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Falls back to the system allocator on linux gnu s390x and powerpc. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
- Fixes minifier compatibility for Wasm plugins using swc_ast_unknown. (1.15.21) — [release notes](https://github.com/swc-project/swc/blob/79278d318260e444b1052cbc6c0e0d1bacea31f0/CHANGELOG.md#11521---2026-03-22)
