Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Experimental esm loader #643

Merged
merged 3 commits into from
Feb 10, 2023
Merged

Experimental esm loader #643

merged 3 commits into from
Feb 10, 2023

Conversation

Brooooooklyn
Copy link
Member

@Brooooooklyn Brooooooklyn commented Mar 15, 2022

@Brooooooklyn Brooooooklyn mentioned this pull request Mar 31, 2022
@Multiply
Copy link

We're eagerly waiting for top-level await support.

Can we do anything to help test this?

@DenisGorbachev
Copy link

Stuck on ESM support as well, looking forward to this PR merge!

@sam-goodwin
Copy link

Is something blocking this change from being merged?

@osdiab
Copy link

osdiab commented Sep 13, 2022

also waiting for this!

@weyert
Copy link

weyert commented Nov 28, 2022

Any way how to progress this PR?

@Brooooooklyn Brooooooklyn changed the title [WIP]: experimental esm loader Experimental esm loader Feb 10, 2023
@Brooooooklyn Brooooooklyn merged commit 0b4d305 into master Feb 10, 2023
@Brooooooklyn Brooooooklyn deleted the esm-loader branch February 10, 2023 18:35
@foray1010
Copy link
Contributor

foray1010 commented Feb 10, 2023

esm/esm.js is not included in v1.6.0, so @swc-node/register/esm does not work

> cat node_modules/@swc-node/register/package.json | rg version
  "version": "1.6.0",

> ls node_modules/@swc-node/register
LICENSE  README.md  index.js  lib  node_modules  package.json  read-default-tsconfig.d.ts  register.d.ts

Also, seems node -r @swc-node/register/esm is using require(), it failed to recognize /esm

Error: Package subpath './esm' is not defined by "exports" in node_modules/@swc-node/register/package.json

@jensbodal
Copy link

Can someone shed some light on how to use this now that it's fixed?

test.ts

import got from 'got';

const { data } = await got
  .post('https://httpbin.org/anything', {
    json: {
      hello: 'world',
    },
  })
  .json<{data: unknown}>();

console.log(data);
node -r @swc/register test.ts
node:internal/errors:490
    ErrorCaptureStackTrace(err);
    ^

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" for /foo/test.ts

@erfanium
Copy link

erfanium commented Mar 29, 2023

@jensbodal you should use loader for esm. read the docs

node --loader @swc-node/register/esm test.ts

@jensbodal
Copy link

jensbodal commented Mar 29, 2023

Thank you that worked

And my bad I see it in the docs here: https://github.com/swc-project/swc-node#usage

@weyert
Copy link

weyert commented Mar 29, 2023

Can we use both -r and --loader at the same time? Or does that not make sense?

@erfanium
Copy link

erfanium commented Mar 29, 2023

@weyert
yes you can use. but i can't tell you something makes sense or not without seeing the actual code.

renovate bot referenced this pull request in tsangste/nx-package-test Sep 21, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@swc-node/register](https://togithub.com/swc-project/swc-node) |
[`~1.4.2` ->
`~1.6.0`](https://renovatebot.com/diffs/npm/@swc-node%2fregister/1.4.2/1.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@swc-node%2fregister/1.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc-node%2fregister/1.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc-node%2fregister/1.4.2/1.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc-node%2fregister/1.4.2/1.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@swc/core](https://swc.rs)
([source](https://togithub.com/swc-project/swc)) | [`1.3.67` ->
`1.3.85`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.3.67/1.3.85) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.3.85?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.3.85?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.3.67/1.3.85?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.3.67/1.3.85?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>swc-project/swc-node (@&#8203;swc-node/register)</summary>

###
[`v1.6.7`](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.6...@swc-node/register@1.6.7)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.6...@swc-node/register@1.6.7)

###
[`v1.6.6`](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.5...@swc-node/register@1.6.6)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.5...@swc-node/register@1.6.6)

###
[`v1.6.5`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.5)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.4...@swc-node/register@1.6.5)

#### What's Changed

- Ts Compiler to Swc Config: respects decorators config and SWCRC=true
by [@&#8203;otaviosoares](https://togithub.com/otaviosoares) in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- docs: register node api usage by
[@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)
- Make sourcemaps work with both error stack & debugger by
[@&#8203;ranjan-purbey](https://togithub.com/ranjan-purbey) in
[https://github.com/swc-project/swc-node/pull/707](https://togithub.com/swc-project/swc-node/pull/707)
- url now returns the href of a url object by
[@&#8203;JipSterk](https://togithub.com/JipSterk) in
[https://github.com/swc-project/swc-node/pull/698](https://togithub.com/swc-project/swc-node/pull/698)
- chore: upgrade dependencies by
[@&#8203;Brooooooklyn](https://togithub.com/Brooooooklyn) in
[https://github.com/swc-project/swc-node/pull/709](https://togithub.com/swc-project/swc-node/pull/709)
- fix(register): inline sourcemap by
[@&#8203;robbiespeed](https://togithub.com/robbiespeed) in
[https://github.com/swc-project/swc-node/pull/708](https://togithub.com/swc-project/swc-node/pull/708)
- fix(register): Fix to resolve adjacent file path by
[@&#8203;chloe463](https://togithub.com/chloe463) in
[https://github.com/swc-project/swc-node/pull/711](https://togithub.com/swc-project/swc-node/pull/711)

#### New Contributors

- [@&#8203;otaviosoares](https://togithub.com/otaviosoares) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- [@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)
- [@&#8203;ranjan-purbey](https://togithub.com/ranjan-purbey) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/707](https://togithub.com/swc-project/swc-node/pull/707)
- [@&#8203;JipSterk](https://togithub.com/JipSterk) made their first
contribution in
[https://github.com/swc-project/swc-node/pull/698](https://togithub.com/swc-project/swc-node/pull/698)
- [@&#8203;robbiespeed](https://togithub.com/robbiespeed) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/708](https://togithub.com/swc-project/swc-node/pull/708)
- [@&#8203;chloe463](https://togithub.com/chloe463) made their first
contribution in
[https://github.com/swc-project/swc-node/pull/711](https://togithub.com/swc-project/swc-node/pull/711)

**Full Changelog**:
https://github.com/swc-project/swc-node/compare/[@&#8203;swc-node/core](https://togithub.com/swc-node/core)[@&#8203;1](https://togithub.com/1).10.1...[@&#8203;swc-node/register](https://togithub.com/swc-node/register)[@&#8203;1](https://togithub.com/1).6.5

###
[`v1.6.4`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.4)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.3...@swc-node/register@1.6.4)

#### What's Changed

- Ts Compiler to Swc Config: respects decorators config and SWCRC=true
by [@&#8203;otaviosoares](https://togithub.com/otaviosoares) in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- docs: register node api usage by
[@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)
- Make sourcemaps work with both error stack & debugger by
[@&#8203;ranjan-purbey](https://togithub.com/ranjan-purbey) in
[https://github.com/swc-project/swc-node/pull/707](https://togithub.com/swc-project/swc-node/pull/707)
- url now returns the href of a url object by
[@&#8203;JipSterk](https://togithub.com/JipSterk) in
[https://github.com/swc-project/swc-node/pull/698](https://togithub.com/swc-project/swc-node/pull/698)
- chore: upgrade dependencies by
[@&#8203;Brooooooklyn](https://togithub.com/Brooooooklyn) in
[https://github.com/swc-project/swc-node/pull/709](https://togithub.com/swc-project/swc-node/pull/709)

#### New Contributors

- [@&#8203;otaviosoares](https://togithub.com/otaviosoares) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- [@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)
- [@&#8203;ranjan-purbey](https://togithub.com/ranjan-purbey) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/707](https://togithub.com/swc-project/swc-node/pull/707)
- [@&#8203;JipSterk](https://togithub.com/JipSterk) made their first
contribution in
[https://github.com/swc-project/swc-node/pull/698](https://togithub.com/swc-project/swc-node/pull/698)

**Full Changelog**:
https://github.com/swc-project/swc-node/compare/[@&#8203;swc-node/core](https://togithub.com/swc-node/core)[@&#8203;1](https://togithub.com/1).10.1...[@&#8203;swc-node/register](https://togithub.com/swc-node/register)[@&#8203;1](https://togithub.com/1).6.4

###
[`v1.6.3`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.3)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.2...@swc-node/register@1.6.3)

#### What's Changed

- Ts Compiler to Swc Config: respects decorators config and SWCRC=true
by [@&#8203;otaviosoares](https://togithub.com/otaviosoares) in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- docs: register node api usage by
[@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)

#### New Contributors

- [@&#8203;otaviosoares](https://togithub.com/otaviosoares) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/702](https://togithub.com/swc-project/swc-node/pull/702)
- [@&#8203;JiangWeixian](https://togithub.com/JiangWeixian) made their
first contribution in
[https://github.com/swc-project/swc-node/pull/706](https://togithub.com/swc-project/swc-node/pull/706)

**Full Changelog**:
https://github.com/swc-project/swc-node/compare/[@&#8203;swc-node/core](https://togithub.com/swc-node/core)[@&#8203;1](https://togithub.com/1).10.1...[@&#8203;swc-node/register](https://togithub.com/swc-node/register)[@&#8203;1](https://togithub.com/1).6.3

###
[`v1.6.2`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.2)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.1...@swc-node/register@1.6.2)

##### Bug Fixes

- **register:** enforece module option in register/esm
([#&#8203;694](https://togithub.com/swc-project/swc-node/issues/694))
([860d1f6](https://togithub.com/swc-project/swc-node/commit/860d1f6f5f7ece197e92a822470a093ae7a7a68a))

###
[`v1.6.1`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.1)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.6.0...@swc-node/register@1.6.1)

##### Bug Fixes

- **register:** include esm files
([8d6b0b7](https://togithub.com/swc-project/swc-node/commit/8d6b0b77d5ec725ff75989455f8163d88c306878))

###
[`v1.6.0`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.6.0)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.8...@swc-node/register@1.6.0)

#### Experimental `esm` support

`node --loader=@&#8203;swc-node/register/esm ./src/index.ts` in this
project

`src/index.ts`

```ts
import assert from 'node:assert'
import test from 'node:test'

import { supportedExtensions } from 'file-type' // pure esm project

await test('file-type should work', () => {
  assert.ok(supportedExtensions.has('jpg'))
})
```

`tsconfig.json`

```json
{
  "compilerOptions": {
    "target": "ESNext",
    "module": "ESNext",
  }
}
```

`package.json`

```json
{
  "type": "module"
}
```

**output**

```text
> node --loader=@&#8203;swc-node/register/esm ./src/index.ts

(node:77682) ExperimentalWarning: Custom ESM Loaders is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:77682) ExperimentalWarning: The test runner is an experimental feature. This feature could change at any time
TAP version 13

### Subtest: file-type should work
ok 1 - file-type should work
  ---
  duration_ms: 0.642416
  ...
1..1

### tests 1
### pass 1

### fail 0
### cancelled 0

### skipped 0
### todo 0

### duration_ms 5.702292
```

#### What's Changed

- Experimental esm loader by
[@&#8203;Brooooooklyn](https://togithub.com/Brooooooklyn) in
[https://github.com/swc-project/swc-node/pull/643](https://togithub.com/swc-project/swc-node/pull/643)

**Full Changelog**:
https://github.com/swc-project/swc-node/compare/[@&#8203;swc-node/jest](https://togithub.com/swc-node/jest)[@&#8203;1](https://togithub.com/1).5.9...[@&#8203;swc-node/register](https://togithub.com/swc-node/register)[@&#8203;1](https://togithub.com/1).6.0

###
[`v1.5.8`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.8)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.6...@swc-node/register@1.5.8)

##### Bug Fixes

- **register:** paths option
([c51be25](https://togithub.com/swc-project/swc-node/commit/c51be25d28da06d29620caee2505bff609cba445))

###
[`v1.5.6`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.6)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.5...@swc-node/register@1.5.6)

##### Bug Fixes

- **register:** always inline swc helpers
([1d557ec](https://togithub.com/swc-project/swc-node/commit/1d557ece0d9ccbba027ff9f2d262c03d4b918bcb))
- **register:** react configuration
([af643b8](https://togithub.com/swc-project/swc-node/commit/af643b849c32abb58bd1c0fdf98eeeac08548e25))

###
[`v1.5.5`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.5)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.4...@swc-node/register@1.5.5)

**Note:** Version bump only for package
[@&#8203;swc-node/register](https://togithub.com/swc-node/register)

###
[`v1.5.4`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.4)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.3...@swc-node/register@1.5.4)

##### Bug Fixes

- **register:** [@&#8203;swc/core](https://togithub.com/swc/core) should
be in peerDependencies
([cb05cae](https://togithub.com/swc-project/swc-node/commit/cb05cae69dd92d13593c210f8c0044b6aff8ff1c))

###
[`v1.5.3`](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.2...@swc-node/register@1.5.3)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.2...@swc-node/register@1.5.3)

###
[`v1.5.2`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.2)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.1...@swc-node/register@1.5.2)

##### Bug Fixes

- **register:** support paths alias with baseUrl
([2a6848a](https://togithub.com/swc-project/swc-node/commit/2a6848a00b8931f41b62f6b5a519bdbc548bfec3))
[https://github.com/swc-project/swc-node/pull/666](https://togithub.com/swc-project/swc-node/pull/666)
[@&#8203;terceser](https://togithub.com/terceser)

#### New Contributors

- [@&#8203;terceser](https://togithub.com/terceser) made their first
contribution in
[https://github.com/swc-project/swc-node/pull/666](https://togithub.com/swc-project/swc-node/pull/666)

###
[`v1.5.1`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.1)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.5.0...@swc-node/register@1.5.1)

##### Bug Fixes

- **register:** move typescript to devDependencies
([c0011ca](https://togithub.com/swc-project/swc-node/commit/c0011ca0eb535f7eacf184ec116c775121c64905))

###
[`v1.5.0`](https://togithub.com/swc-project/swc-node/releases/tag/%40swc-node/register%401.5.0)

[Compare
Source](https://togithub.com/swc-project/swc-node/compare/@swc-node/register@1.4.2...@swc-node/register@1.5.0)

##### Features

- **jest:** read tsconfig for default jest transform options
([8c180e6](https://togithub.com/swc-project/swc-node/commit/8c180e68abbc66aa68f83b401d985a6c8617baa9))
- **register:** always resolve full file path for tsconfig and add paths
if available
([#&#8203;646](https://togithub.com/swc-project/swc-node/issues/646))
([3062413](https://togithub.com/swc-project/swc-node/commit/3062413e464a5b5706c5ac4912f43ef7451fe73b))
- **register:** return addHook result to it can be reverted
([222e205](https://togithub.com/swc-project/swc-node/commit/222e2056351e3a2ba2a4764537c9410b0112051e)),
closes
[/github.com/facebook/jest/blob/199f9811ae68b15879cbe18b7ef7ebd61eefcf23/packages/jest-config/src/readConfigFileAndSetRootDir.ts#L83-101](https://togithub.com//github.com/facebook/jest/blob/199f9811ae68b15879cbe18b7ef7ebd61eefcf23/packages/jest-config/src/readConfigFileAndSetRootDir.ts/issues/L83-101)
- **register:** support hook options
([4c6dad7](https://togithub.com/swc-project/swc-node/commit/4c6dad7bfbf4563c44bd25476a6ab5d78cff55dc))

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

###
[`v1.3.85`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1385---2023-09-15)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.84...v1.3.85)

##### Bug Fixes

- **(css/modules)** Support composes when using multiple subclass
selectors
([#&#8203;7949](https://togithub.com/swc-project/swc/issues/7949))
([05ca19b](https://togithub.com/swc-project/swc/commit/05ca19b84489ae47f69d8228b3c0097164c7ec6e))

- **(es/compat)** Handle single expression case in static block
([#&#8203;7944](https://togithub.com/swc-project/swc/issues/7944))
([a80aec4](https://togithub.com/swc-project/swc/commit/a80aec47efcff953d3408cf6910b66c2312f3006))

- **(es/minifier)** Parse a file as a module only if `opts.module` is
`true`
([#&#8203;7943](https://togithub.com/swc-project/swc/issues/7943))
([b87ac64](https://togithub.com/swc-project/swc/commit/b87ac646f81f181b574da798b3e613a3cfa4cad5))

##### Features

- **(es/compat)** Support `pure_getters` for `optional_chaining`
([#&#8203;7933](https://togithub.com/swc-project/swc/issues/7933))
([c091c5e](https://togithub.com/swc-project/swc/commit/c091c5e295ec2ef704be1461f6587ae85051b543))

- **(es/module)** Add an option to make resolver fully resolve
`index.js`
([#&#8203;7945](https://togithub.com/swc-project/swc/issues/7945))
([7e8d72d](https://togithub.com/swc-project/swc/commit/7e8d72d03b312b7a48c17afa8d2a4d7f4e802a6a))

###
[`v1.3.84`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1384---2023-09-11)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.83...v1.3.84)

##### Bug Fixes

- **(es/codegen)** Emit leading comments for `ExprStmt`
([#&#8203;7916](https://togithub.com/swc-project/swc/issues/7916))
([2da5895](https://togithub.com/swc-project/swc/commit/2da58959c26d5afb0b8f179fc681478bf05e6e20))

- **(es/codegen)** Use `emitAssertForImportAttributes`
([#&#8203;7936](https://togithub.com/swc-project/swc/issues/7936))
([dac8888](https://togithub.com/swc-project/swc/commit/dac8888829841e1de19d53c887a2a52c9ab5feaa))

- **(es/compat)** Visit assign expr in generator
([#&#8203;7932](https://togithub.com/swc-project/swc/issues/7932))
([97068e1](https://togithub.com/swc-project/swc/commit/97068e12d16803012a4859114702577def024a36))

###
[`v1.3.83`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1383---2023-09-07)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.82...v1.3.83)

##### Bug Fixes

- **(css/modules)** Aggregate class names when composes is chained.
([#&#8203;7917](https://togithub.com/swc-project/swc/issues/7917))
([0db25a2](https://togithub.com/swc-project/swc/commit/0db25a252cf35e4b64b38bde9f34a2f33eb2f662))

- **(es/module)** Revert
[#&#8203;7901](https://togithub.com/swc-project/swc/issues/7901)
([#&#8203;7906](https://togithub.com/swc-project/swc/issues/7906))
([85d6e9b](https://togithub.com/swc-project/swc/commit/85d6e9be07af7bb788594b21a986636657d86f03))

- **(es/module)** Fix `jsc.paths` for projects using pnpm
([#&#8203;7918](https://togithub.com/swc-project/swc/issues/7918))
([a86e9f3](https://togithub.com/swc-project/swc/commit/a86e9f3bb5bd490ebf0b18fe7349a2b0fbc0c45f))

##### Features

- **(es/codegen)** Add an option to print `assert` for import attributes
([#&#8203;7914](https://togithub.com/swc-project/swc/issues/7914))
([ee75756](https://togithub.com/swc-project/swc/commit/ee7575695de6dad140457ffb8bb8f0ac80c4dcdc))

###
[`v1.3.82`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1382---2023-09-01)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.81...v1.3.82)

##### Bug Fixes

- **(common)** Fix logic for excluding `FileName` from source maps
([#&#8203;7900](https://togithub.com/swc-project/swc/issues/7900))
([aa64955](https://togithub.com/swc-project/swc/commit/aa6495519b9271cb21d380c0c5a35fe79d31ee14))

- **(es/module)** Make `jsc.paths` fully resolve TypeScript files
([#&#8203;7901](https://togithub.com/swc-project/swc/issues/7901))
([c714dd2](https://togithub.com/swc-project/swc/commit/c714dd20dedfab60ac75de613d13c0f3af60a6c7))

- **(es/resolver)** Correctly resolve global value
([#&#8203;7893](https://togithub.com/swc-project/swc/issues/7893))
([2db10e9](https://togithub.com/swc-project/swc/commit/2db10e9fd1913b69cb088aaded2d587872e9f2bb))

###
[`v1.3.81`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1381---2023-08-30)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.80...v1.3.81)

##### Bug Fixes

- **(es/codegen)** Fix placing of comments of yield arguments
([#&#8203;7858](https://togithub.com/swc-project/swc/issues/7858))
([122d14c](https://togithub.com/swc-project/swc/commit/122d14c0d306d7c437f1ef0f6f375634ff5d7d1a))

- **(es/compat)** Apply transforms for explicit resource management
([#&#8203;7881](https://togithub.com/swc-project/swc/issues/7881))
([3180e68](https://togithub.com/swc-project/swc/commit/3180e68bf27fb95ff00bd24677ae7e96b3aa6c62))

- **(es/compat)** Make `SwitchCase` handler of `block-scoping` stateless
([#&#8203;7888](https://togithub.com/swc-project/swc/issues/7888))
([4b33d41](https://togithub.com/swc-project/swc/commit/4b33d41fabf841dfc31c6f44d94e4651239ab667))

- **(es/dep-graph)** Analyze import type children
([#&#8203;7883](https://togithub.com/swc-project/swc/issues/7883))
([057bd5f](https://togithub.com/swc-project/swc/commit/057bd5f3efe55077a5a8e7f627e80175c8af2bd0))

- **(es/minifier)** Report `is_fn_local` even if var is hoisted
([#&#8203;7876](https://togithub.com/swc-project/swc/issues/7876))
([87a47bf](https://togithub.com/swc-project/swc/commit/87a47bfb2c602f2ce7eb33f78612197e290518b8))

- **(es/module)** Don't create absolute paths for `jsc.paths` on Windows
([#&#8203;7892](https://togithub.com/swc-project/swc/issues/7892))
([5fbc251](https://togithub.com/swc-project/swc/commit/5fbc251db1cc1f7973ba780a6c4fc1cdce5ef40d))

- **(swc-info)** Use correct path while getting local package versions
([#&#8203;7872](https://togithub.com/swc-project/swc/issues/7872))
([67afaf1](https://togithub.com/swc-project/swc/commit/67afaf1f2db087518ac990c71de896c8e5e2a051))

##### Features

- **(es)** Add an option to disable builtin transforms
([#&#8203;7873](https://togithub.com/swc-project/swc/issues/7873))
([71d01ec](https://togithub.com/swc-project/swc/commit/71d01ec12772c2854a47947deceb6d1cab141289))

- **(es/ast)** Support import attributes proposal
([#&#8203;7868](https://togithub.com/swc-project/swc/issues/7868))
([4d3fcb8](https://togithub.com/swc-project/swc/commit/4d3fcb86e4843cf323a471537cc1ab3a26d054b1))

- **(es/preset-env)** Update data
([#&#8203;7882](https://togithub.com/swc-project/swc/issues/7882))
([a97d8b4](https://togithub.com/swc-project/swc/commit/a97d8b42b1f85c1f76ffadcabf6e9c85f0458d8d))

- **(swc-info)** Add a CLI to help issue reporting
([#&#8203;7871](https://togithub.com/swc-project/swc/issues/7871))
([d6952ea](https://togithub.com/swc-project/swc/commit/d6952ea687beb5b9aff1eae26076fa98ac94818b))

##### Miscellaneous Tasks

- **(deps)** Update `memchr`
([#&#8203;7891](https://togithub.com/swc-project/swc/issues/7891))
([01cbd6e](https://togithub.com/swc-project/swc/commit/01cbd6edbd37c95ece7ca20ad2f6c85d6c1b6e35))-
**general**: Use `textarea` for `swc-info`
([eed2903](https://togithub.com/swc-project/swc/commit/eed290319e4a8128948ce07e76d11a01d2096a8b))

##### Performance

- **(es/transforms)** Remove wrong parallelism
([#&#8203;7889](https://togithub.com/swc-project/swc/issues/7889))
([a505012](https://togithub.com/swc-project/swc/commit/a50501255d2a91f2bbc1ce9767689dc4fad540cc))

##### Refactor

- **(es/minifier)** Remove `mutated` and `mutation_by_call_count`
([#&#8203;7890](https://togithub.com/swc-project/swc/issues/7890))
([8db968a](https://togithub.com/swc-project/swc/commit/8db968a25d508a0d28d15d556ad121951f39ae0d))

###
[`v1.3.80`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1380---2023-08-25)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.79...v1.3.80)

##### Bug Fixes

- **(es/module)** Fix logic for exact matches in `jsc.paths`
([#&#8203;7860](https://togithub.com/swc-project/swc/issues/7860))
([52a1ee7](https://togithub.com/swc-project/swc/commit/52a1ee78da87da760f9923cd8cdb420da855417f))

- **(es/module)** Don't resolve as `node_modules` from `TscResolver`
([#&#8203;7866](https://togithub.com/swc-project/swc/issues/7866))
([11ebae1](https://togithub.com/swc-project/swc/commit/11ebae1bdd2fbd05d908fa560b81b830dddb3c56))

##### Miscellaneous Tasks

- **general**: Remove unused files
([e47f1c2](https://togithub.com/swc-project/swc/commit/e47f1c2bf7e1dc9fedf5a364884a40a5e7735973))

###
[`v1.3.79`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1379---2023-08-25)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.78...v1.3.79)

##### Bug Fixes

- **(es)** Fix default value of `jsc.minify.format.comments`
([#&#8203;7853](https://togithub.com/swc-project/swc/issues/7853))
([64e51d3](https://togithub.com/swc-project/swc/commit/64e51d3a28052734d2eaf9992bc8ba578dd5630b))

- **(es/minifier)** Don't inline properties if the var is not `fn-local`
([#&#8203;7839](https://togithub.com/swc-project/swc/issues/7839))
([7fe01e6](https://togithub.com/swc-project/swc/commit/7fe01e64dd9917d375a4f1cf9661ffaca822c5b3))

- **(es/minifier)** Don't remove exports
([#&#8203;7856](https://togithub.com/swc-project/swc/issues/7856))
([ae8cd94](https://togithub.com/swc-project/swc/commit/ae8cd9430dd1ec0d857ac7f87ffa4b76258be92c))

- **(es/module)** Make `jsc.paths` work for a nest.js app
([#&#8203;7852](https://togithub.com/swc-project/swc/issues/7852))
([d33a973](https://togithub.com/swc-project/swc/commit/d33a97303ceeee4069321ef21027ff99fe973a79))

##### Features

- **(css/ast)** Support `@scope` at-rule
([#&#8203;7837](https://togithub.com/swc-project/swc/issues/7837))
([a34f359](https://togithub.com/swc-project/swc/commit/a34f3592b3fd2731b63a5c58c5022e12a403850b))

##### Miscellaneous Tasks

- **(ci)** Fix CI
([#&#8203;7857](https://togithub.com/swc-project/swc/issues/7857))
([854e2e7](https://togithub.com/swc-project/swc/commit/854e2e78b38699fd09c65074a38a21d1d9836002))

##### Refactor

- **(common)** Mark some methods of `Input` unsafe
([#&#8203;7848](https://togithub.com/swc-project/swc/issues/7848))
([c657324](https://togithub.com/swc-project/swc/commit/c65732496e4e2aab664b7443a29f5180cba6e965))

- **(es/helpers)** Move packages for monorepo
([#&#8203;7833](https://togithub.com/swc-project/swc/issues/7833))
([1ab406c](https://togithub.com/swc-project/swc/commit/1ab406cd7aa19ea333a8462b0cd496ceb3e39ac1))

- **(es/minifier)** Pre-calculate `reassigned`
([#&#8203;7832](https://togithub.com/swc-project/swc/issues/7832))
([65db1ba](https://togithub.com/swc-project/swc/commit/65db1badff3108983fcd59f933e9f87c55d62916))

- **(es/types)** Extract `@swc/types` as a small, reusable package
([#&#8203;7834](https://togithub.com/swc-project/swc/issues/7834))
([f713f1b](https://togithub.com/swc-project/swc/commit/f713f1b2f6783ed6d85edd6decd87daa473acea0))

###
[`v1.3.78`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1378---2023-08-17)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.77...v1.3.78)

##### Bug Fixes

- **(es/codegen)** Add quotes to property names when `ascii_only` is
`true`
([#&#8203;7820](https://togithub.com/swc-project/swc/issues/7820))
([04921f3](https://togithub.com/swc-project/swc/commit/04921f301afbc2dc74bed4cb24e7656b60e54327))

- **(es/compat)** Remove wrong logic for object patterns in
`object_rest`
([#&#8203;7788](https://togithub.com/swc-project/swc/issues/7788))
([3766a7c](https://togithub.com/swc-project/swc/commit/3766a7c776b63e159be3f11f5f931c5e5f968cdb))

- **(es/minifier)** Preserve `cooked` while compressing template
literals
([#&#8203;7773](https://togithub.com/swc-project/swc/issues/7773))
([05990a9](https://togithub.com/swc-project/swc/commit/05990a98fd3f06a3c03bd1e795800acf22f16035))

- **(es/minifier)** Abort seq inliner if var is not fn_local or
reassigned
([#&#8203;7804](https://togithub.com/swc-project/swc/issues/7804))
([f8ca366](https://togithub.com/swc-project/swc/commit/f8ca366cc179d2d83d35148c3600b8faa2e7f801))

- **(es/minifier)** Preserve more analysis data upon inlining
([#&#8203;7823](https://togithub.com/swc-project/swc/issues/7823))
([31de19e](https://togithub.com/swc-project/swc/commit/31de19ece22663623b1fc1fe48c90b7aa41e41e0))

##### Features

- **(es/module)** Improve error message about relative `jsc.baseUrl`
([#&#8203;7827](https://togithub.com/swc-project/swc/issues/7827))
([9099883](https://togithub.com/swc-project/swc/commit/9099883175c590106109670de01ab32b33303bfd))

##### Refactor

- **(common)** Make `ahash` optional
([#&#8203;7816](https://togithub.com/swc-project/swc/issues/7816))
([981d7b1](https://togithub.com/swc-project/swc/commit/981d7b152b2f488a67d42052152db22225f1d094))

- **(es/parser)** Remove needless `unsafe`
([#&#8203;7818](https://togithub.com/swc-project/swc/issues/7818))
([8b809db](https://togithub.com/swc-project/swc/commit/8b809dbe23cab3db2159979cf1852a69c109f1e0))-
**general**: Use `ahash` from `swc_common` in more places
([#&#8203;7815](https://togithub.com/swc-project/swc/issues/7815))
([b43e38d](https://togithub.com/swc-project/swc/commit/b43e38d3f92bc889e263b741dbe173a6f2206d88))

###
[`v1.3.77`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1377---2023-08-16)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.76...v1.3.77)

##### Bug Fixes

- **(es)** Resolve `jsc.baseUrl` for `.swcrc` specified by
`--config-file`
([#&#8203;7801](https://togithub.com/swc-project/swc/issues/7801))
([fe1ca26](https://togithub.com/swc-project/swc/commit/fe1ca26218493d2e7d4121433c365a37e13285e6))

- **(es/compat)** Revert
[#&#8203;7610](https://togithub.com/swc-project/swc/issues/7610)
([#&#8203;7813](https://togithub.com/swc-project/swc/issues/7813))
([42dec55](https://togithub.com/swc-project/swc/commit/42dec557ed2e8fd829aba7847b354003cfea1b18))

- **(es/parser)** Revert lexer fix for `<<`
([#&#8203;7807](https://togithub.com/swc-project/swc/issues/7807))
([e527c12](https://togithub.com/swc-project/swc/commit/e527c12a82740397ed4e909f242326f8e92624a8))

##### Features

- **(es/ast)** Expose `Archived` types
([#&#8203;7811](https://togithub.com/swc-project/swc/issues/7811))
([478fa47](https://togithub.com/swc-project/swc/commit/478fa4736f355555c7a19e7b674db5d7bd81c0e2))

##### Refactor

- **(es/parser)** Don't attempt to handle shebangs in
`read_token_number_sign`
([#&#8203;7803](https://togithub.com/swc-project/swc/issues/7803))
([5e7834a](https://togithub.com/swc-project/swc/commit/5e7834aa2ecb0cd01b72979f393a517f1c1e5add))

###
[`v1.3.76`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1376---2023-08-10)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.75...v1.3.76)

##### Bug Fixes

- **(es/ast)** Bump version
([#&#8203;7793](https://togithub.com/swc-project/swc/issues/7793))
([13bedc0](https://togithub.com/swc-project/swc/commit/13bedc084e46db193b3fd0b7930046b2f013742b))

- **(es/minifier)** Abort seq inliner if a same var is defined in outer
scope ([#&#8203;7772](https://togithub.com/swc-project/swc/issues/7772))
([ef8d121](https://togithub.com/swc-project/swc/commit/ef8d12154ddaad47eddb41298bae14460834be0c))

- **(es/minifier)** Do not drop properties used via `this`
([#&#8203;7785](https://togithub.com/swc-project/swc/issues/7785))
([552d9aa](https://togithub.com/swc-project/swc/commit/552d9aa344cb6db2dff1e20011411a56f92d4f06))

- **(es/module)** Use `jsc.baseUrl` while resolving absolute paths
([#&#8203;7775](https://togithub.com/swc-project/swc/issues/7775))
([5c4bfa6](https://togithub.com/swc-project/swc/commit/5c4bfa61f9e4f7732bc1a9da6cd25f52e593a374))

##### Features

- **(es/minifier)** Support `mangle.eval`
([#&#8203;7777](https://togithub.com/swc-project/swc/issues/7777))
([eff0cac](https://togithub.com/swc-project/swc/commit/eff0caca2b6bfd383c8369cf0f4cdad86bb9e575))

##### Miscellaneous Tasks

- **(ci)** Cleanup CI
([#&#8203;7787](https://togithub.com/swc-project/swc/issues/7787))
([ab39f1c](https://togithub.com/swc-project/swc/commit/ab39f1c3c83c7156e6e9979773bf542a59d9b4f4))

##### Performance

- **(es/compat)** Improve time complexity of `class_properties`
([#&#8203;7786](https://togithub.com/swc-project/swc/issues/7786))
([76c6258](https://togithub.com/swc-project/swc/commit/76c6258d1544ede09cb4f281c42e1fc80ad4145b))

###
[`v1.3.75`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1375---2023-08-08)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.74...v1.3.75)

##### Bug Fixes

- **(es/codegen)** Don't strip necessary escape characters
([#&#8203;7687](https://togithub.com/swc-project/swc/issues/7687))
([b45649b](https://togithub.com/swc-project/swc/commit/b45649b8d6484bd872f6443fc729f6b1998ff44d))

- **(es/compat)** Fix loose mode of the `spread` pass
([#&#8203;7760](https://togithub.com/swc-project/swc/issues/7760))
([b69ae8f](https://togithub.com/swc-project/swc/commit/b69ae8f433a1702e09a24c1c47b2fc312e8fb801))

- **(es/minifier)** Abort on `Array.slice` with `start >= end`
([#&#8203;7745](https://togithub.com/swc-project/swc/issues/7745))
([36ccbec](https://togithub.com/swc-project/swc/commit/36ccbec06130a55bc0707a0096a56558a77a1ceb))

- **(es/module)** Fix handling of continuous assignments in `systemjs`
([#&#8203;7741](https://togithub.com/swc-project/swc/issues/7741))
([f713f6a](https://togithub.com/swc-project/swc/commit/f713f6aba84ffe84bed9dff80a772b0cd78135b8))

- **(es/utils)** Ignore `typeof Id` while preserving side effects
([#&#8203;7763](https://togithub.com/swc-project/swc/issues/7763))
([d57ac0d](https://togithub.com/swc-project/swc/commit/d57ac0dd28cdefef63a18d53565154e65ee8b838))

- **(plugin/runner)** Use fs cache properly
([#&#8203;7748](https://togithub.com/swc-project/swc/issues/7748))
([1122de7](https://togithub.com/swc-project/swc/commit/1122de7d8b3c178b4e315bb50a6e214669c37a4f))

##### Features

- **(es)** Alias `format` as `output` for `minify()`
([#&#8203;7746](https://togithub.com/swc-project/swc/issues/7746))
([28dfc51](https://togithub.com/swc-project/swc/commit/28dfc518879b9125a382b48e8310895e137d4fd4))

##### Miscellaneous Tasks

- **(ci)** Fix permissions of publish action
([#&#8203;7768](https://togithub.com/swc-project/swc/issues/7768))
([fa7e428](https://togithub.com/swc-project/swc/commit/fa7e4289bd04320b9a88bda81538fc394bda23f9))

##### Refactor

- **(es/ast)** Avoid `transmute` in impl of `Hash` for `Number`
([#&#8203;7771](https://togithub.com/swc-project/swc/issues/7771))
([2258274](https://togithub.com/swc-project/swc/commit/225827423355cab8cd3c0ae80f335cd2873e6cd4))

- **(es/minifier)** Support stable rustc
([#&#8203;7734](https://togithub.com/swc-project/swc/issues/7734))
([f7afe7e](https://togithub.com/swc-project/swc/commit/f7afe7edecc65f41845721c75b77d2f6dba04a6a))

- **(es/parser)** Do not use `lexical`
([#&#8203;7758](https://togithub.com/swc-project/swc/issues/7758))
([e50cfde](https://togithub.com/swc-project/swc/commit/e50cfde938b2504b723a95f034ac4b388d8725c3))

- **(es/parser)** Do not validate top-level await with target
([#&#8203;7774](https://togithub.com/swc-project/swc/issues/7774))
([5f97f86](https://togithub.com/swc-project/swc/commit/5f97f8656f9ff7c42bbf1db95fd9d964c5cc6c7c))

###
[`v1.3.74`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1374---2023-08-02)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.73...v1.3.74)

##### Bug Fixes

- **(es)** Fix typo in a warning
([#&#8203;7740](https://togithub.com/swc-project/swc/issues/7740))
([22e06cc](https://togithub.com/swc-project/swc/commit/22e06cce630b365b17f390559e065ee48cb3d2b9))

- **(es/minifier)** Mark args of `new`s as references
([#&#8203;7743](https://togithub.com/swc-project/swc/issues/7743))
([3873f58](https://togithub.com/swc-project/swc/commit/3873f5849999e49b732fef9959cb12ce6159c078))

###
[`v1.3.73`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1373---2023-08-01)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.72...v1.3.73)

##### Bug Fixes

- **(es/minifier)** Handle synthesized export default expression
([#&#8203;7707](https://togithub.com/swc-project/swc/issues/7707))
([5ea6f27](https://togithub.com/swc-project/swc/commit/5ea6f27eb07df768c6fab2bdff744e402480c53f))

- **(es/utils)** Fix string evaluation of array literals
([#&#8203;7731](https://togithub.com/swc-project/swc/issues/7731))
([e8c58cf](https://togithub.com/swc-project/swc/commit/e8c58cfd779f7c9dcfae06200ec2f726fbc74758))

##### Features

- **(es/preset-env)** Update builtin definitions for `core-js` imports
([#&#8203;7715](https://togithub.com/swc-project/swc/issues/7715))
([b4f3332](https://togithub.com/swc-project/swc/commit/b4f3332b21fc2b04e9824469568401725d1dfca5))

##### Testing

- **(es/compat)** Add a test for optional chaining with loose mode
([#&#8203;7726](https://togithub.com/swc-project/swc/issues/7726))
([216c4f1](https://togithub.com/swc-project/swc/commit/216c4f17df449847c3cc3a62b9f5694d2416eca1))

###
[`v1.3.72`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1372---2023-07-28)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.71...v1.3.72)

##### Bug Fixes

- **(es/compat)** Fix handling of private members in optional chaining
pass ([#&#8203;7610](https://togithub.com/swc-project/swc/issues/7610))
([7ba7b6e](https://togithub.com/swc-project/swc/commit/7ba7b6ec1fd7170ef7a321a6bd4931984e1a08d4))

- **(es/minifier)** Do not drop used properties
([#&#8203;7702](https://togithub.com/swc-project/swc/issues/7702))
([f901b41](https://togithub.com/swc-project/swc/commit/f901b417d1a37f679ff4c5a54e81671684d9f485))

- **(es/module)** Do not determine module name for modules without
exports in UMD
([#&#8203;7718](https://togithub.com/swc-project/swc/issues/7718))
([40136f7](https://togithub.com/swc-project/swc/commit/40136f7c54bdc347d5f725549a27e1104433ff36))

##### Features

- **(es)** Add a validation for a wrong config
([#&#8203;7704](https://togithub.com/swc-project/swc/issues/7704))
([900701f](https://togithub.com/swc-project/swc/commit/900701fbf24912dce219f97baa8c11c533966896))

- **(swc_core)** Expose `visit/serde` as serde feature
([#&#8203;7722](https://togithub.com/swc-project/swc/issues/7722))
([2bc9637](https://togithub.com/swc-project/swc/commit/2bc96373b736ce4d81336c1c0340a1d4f7d7f4b0))

##### Refactor

- **(es/parser)** Make `stacker` an optional dependency
([#&#8203;7720](https://togithub.com/swc-project/swc/issues/7720))
([864bdef](https://togithub.com/swc-project/swc/commit/864bdefbe0012ddbe93075c70f0b2b44577a5424))

###
[`v1.3.71`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1371---2023-07-25)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.70...v1.3.71)

##### Bug Fixes

- **(css/modules)** Preserve attr selectors used with `:global`
([#&#8203;7670](https://togithub.com/swc-project/swc/issues/7670))
([11b4679](https://togithub.com/swc-project/swc/commit/11b4679231bdfa8662fdcb1dade4dc1146f8e11d))

- **(es/minifier)** Only cast global `Infinity`/`undefined`/`NaN`
([#&#8203;7684](https://togithub.com/swc-project/swc/issues/7684))
([241c04a](https://togithub.com/swc-project/swc/commit/241c04ab4a2e7e7f34563fdc8a355f82c6ba03e8))

- **(es/minifier)** Drop line comments starting with `!`
([#&#8203;7689](https://togithub.com/swc-project/swc/issues/7689))
([951138c](https://togithub.com/swc-project/swc/commit/951138cd13339ca7b5cb5305203e466fcd4a0b0e))

- **(es/minifier)** Abort seq inliner using visitor
([#&#8203;7699](https://togithub.com/swc-project/swc/issues/7699))
([a26dbce](https://togithub.com/swc-project/swc/commit/a26dbce9817c8f39c7d5857bb258298da274c6f3))

- **(es/typescript)** Fix handling of optional chaining
([#&#8203;7660](https://togithub.com/swc-project/swc/issues/7660))
([c017874](https://togithub.com/swc-project/swc/commit/c01787408522202f3c717c0ecfa8e00aedef9142))

##### Features

- **(css/parser)** Support `@starting-style`
([#&#8203;7677](https://togithub.com/swc-project/swc/issues/7677))
([cfb7b51](https://togithub.com/swc-project/swc/commit/cfb7b511eebe068b3c57f4540b90cb59c922d7e9))

##### Miscellaneous Tasks

- **(ci)** Fix CI
([#&#8203;7679](https://togithub.com/swc-project/swc/issues/7679))
([57398af](https://togithub.com/swc-project/swc/commit/57398af2708ebd72c489fa81b9573259b0a71d15))

##### Refactor

- **(es/minifier)** Respect `toplevel` and `module` options
([#&#8203;7671](https://togithub.com/swc-project/swc/issues/7671))
([9893bd2](https://togithub.com/swc-project/swc/commit/9893bd2d43de60978dd28c44c8e4032170b11987))

- **(es/minifier)** Respect top-level when invoking IIFE
([#&#8203;7690](https://togithub.com/swc-project/swc/issues/7690))
([bf72362](https://togithub.com/swc-project/swc/commit/bf723625b02204c4d2e9228d53ac53c9d41221a1))

###
[`v1.3.70`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1370---2023-07-18)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.69...v1.3.70)

##### Bug Fixes

- **(es/minifier)** Fix a bug about `eval` of name mangler
([#&#8203;7615](https://togithub.com/swc-project/swc/issues/7615))
([6be1f70](https://togithub.com/swc-project/swc/commit/6be1f7075d8d14cc56b05079ee134153ab65c6fc))

- **(es/minifier)** Do not reuse identifier used for import bindings
([#&#8203;7639](https://togithub.com/swc-project/swc/issues/7639))
([a65be14](https://togithub.com/swc-project/swc/commit/a65be14a00f41e9b0b4439c31b49febeefd1f845))

- **(es/module)** Skip CJS and AMD transformations for `Script`
([#&#8203;7661](https://togithub.com/swc-project/swc/issues/7661))
([a2d0408](https://togithub.com/swc-project/swc/commit/a2d040859790d10d445ba6b06e9fe88635d84c1b))

##### Features

- **(es/minifier)** Drop recursively used var declaration
([#&#8203;7649](https://togithub.com/swc-project/swc/issues/7649))
([04b0f6d](https://togithub.com/swc-project/swc/commit/04b0f6d8234bdcc34815a558c4c9eecf24c8e4e7))

##### Testing

- **(es)** Add a test for a unreproducible issue
([#&#8203;7656](https://togithub.com/swc-project/swc/issues/7656))
([c0e4805](https://togithub.com/swc-project/swc/commit/c0e480593f7af001eb329f088dc29ea3f0f8df58))

- **(es/modules)** Add a test for unreproducible issue
([#&#8203;7655](https://togithub.com/swc-project/swc/issues/7655))
([7528de1](https://togithub.com/swc-project/swc/commit/7528de189780cc6850fad2f744004353c8892a70))

##### Buiild

- **(bindings/wasm)** Fix Wasm build
([#&#8203;7666](https://togithub.com/swc-project/swc/issues/7666))
([dc5135f](https://togithub.com/swc-project/swc/commit/dc5135f43f5fe01ed36c1b40a5647b2f1c3277b4))

###
[`v1.3.69`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1369---2023-07-13)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.68...v1.3.69)

##### Bug Fixes

- **(es/compat)** Visit children of `while` statement in the `generator`
pass ([#&#8203;7624](https://togithub.com/swc-project/swc/issues/7624))
([d2ac2c1](https://togithub.com/swc-project/swc/commit/d2ac2c16a3d9067b3afa14ba6ae8745b553c6642))

- **(es/compat)** Fix loose mode of the `spread` pass
([#&#8203;7608](https://togithub.com/swc-project/swc/issues/7608))
([a7daa5b](https://togithub.com/swc-project/swc/commit/a7daa5b28e45c0b310850279433178bf75f0f5f0))

- **(es/minifier)** Don't drop unused properties of top-level vars
([#&#8203;7638](https://togithub.com/swc-project/swc/issues/7638))
([19ba714](https://togithub.com/swc-project/swc/commit/19ba714ea11d6e733cd46ed3ce6b851ddc972e5a))

##### Features

- **(es/preset-env)** Update compat data
([#&#8203;7630](https://togithub.com/swc-project/swc/issues/7630))
([7e9e84e](https://togithub.com/swc-project/swc/commit/7e9e84e2306941de591700d3c5f15da2d43236bb))

##### Miscellaneous Tasks

- **(es/parser)** Scope use of `lexical` to certain features
([#&#8203;7644](https://togithub.com/swc-project/swc/issues/7644))
([a961090](https://togithub.com/swc-project/swc/commit/a961090c9da5994ec83ad6ffca1074277d61431d))

##### Refactor

- **(bindings/node)** Remove unused `babelify` type
([#&#8203;7625](https://togithub.com/swc-project/swc/issues/7625))
([73c7769](https://togithub.com/swc-project/swc/commit/73c77694f11c2b98b6caca5fdd106390e3f82629))

##### Build

- **(cargo)** Update `rustc` to `2023-07-03`
([#&#8203;7623](https://togithub.com/swc-project/swc/issues/7623))
([b34f1ad](https://togithub.com/swc-project/swc/commit/b34f1adbcc0d9556872c05bb6c7a92b77332a924))

###
[`v1.3.68`](https://togithub.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1368---2023-07-05)

[Compare
Source](https://togithub.com/swc-project/swc/compare/v1.3.67...v1.3.68)

##### Bug Fixes

- **(css/modules)** Fix `:local` and `:global`
([#&#8203;7600](https://togithub.com/swc-project/swc/issues/7600))
([f0ab5b3](https://togithub.com/swc-project/swc/commit/f0ab5b39f79685023cfc9529bc60e96231ad18d7))

- **(es/compat)** Visit transformed expression in optional chaining pass
([#&#8203;7614](https://togithub.com/swc-project/swc/issues/7614))
([c087c82](https://togithub.com/swc-project/swc/commit/c087c82aa3131ecafa2e42cdef6ecfba6c80b9b8))

- **(es/fixer)** Don't change default decls to default expr exports
([#&#8203;7585](https://togithub.com/swc-project/swc/issues/7585))
([e272545](https://togithub.com/swc-project/swc/commit/e2725451aa507c18222c5f66cf0a5a049c92bd0b))

- **(es/minifier)** Add usage to inlined ident eagerly
([#&#8203;7597](https://togithub.com/swc-project/swc/issues/7597))
([4f866de](https://togithub.com/swc-project/swc/commit/4f866de8788558a4f9f3e3f889048136c7896ee3))

- **(es/parser)** Re-lex `<<` as two `<`-s if required
([#&#8203;7439](https://togithub.com/swc-project/swc/issues/7439))
([6850372](https://togithub.com/swc-project/swc/commit/68503726a78cfc37cd995eda69a3e8982b6fdf57))

- **(plugin/runner)** Disable wasi env cleanup
([#&#8203;7607](https://togithub.com/swc-project/swc/issues/7607))
([8209594](https://togithub.com/swc-project/swc/commit/8209594a8c11d2a65061763fef5d3a7780976f39))

- **(xml/codegen)** Fix wrong minification of spaces in a self-closing
tag ([#&#8203;7595](https://togithub.com/swc-project/swc/issues/7595))
([769d651](https://togithub.com/swc-project/swc/commit/769d6516a50796e6642d6724e8472dd32d871612))

##### Features

- **(es/compat)** Implement transform for explicit resource management
([#&#8203;7376](https://togithub.com/swc-project/swc/issues/7376))
([bcd5a1d](https://togithub.com/swc-project/swc/commit/bcd5a1d6665bc6f4aaa857d1f88b0da82a6c4a04))

- **(es/minifier)** Drop unused properties
([#&#8203;7534](https://togithub.com/swc-project/swc/issues/7534))
([47d2edd](https://togithub.com/swc-project/swc/commit/47d2edd4dc448a611396006852f30e2b8de1c42c))

- **(es/minifier)** Compress common sub expressions in sequences
([#&#8203;7587](https://togithub.com/swc-project/swc/issues/7587))
([ff1ad95](https://togithub.com/swc-project/swc/commit/ff1ad95b59732282c014474609bbb405e0f9edb4))

- **(es/optimization)** Support `default` imports for const modules
([#&#8203;7604](https://togithub.com/swc-project/swc/issues/7604))
([ac02b84](https://togithub.com/swc-project/swc/commit/ac02b84918932f2d51840b4c4cef9adf460fce40))

##### Refactor

- **(es/compat)** Remove usage of `box_patterns`
([#&#8203;7613](https://togithub.com/swc-project/swc/issues/7613))
([0a26066](https://togithub.com/swc-project/swc/commit/0a26066b7b01d06a6d9e3df2ab7c7e47f4aa9e4c))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/tsangste/nx-package-test).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi45Ny4xIiwidXBkYXRlZEluVmVyIjoiMzYuOTcuMSIsInRhcmdldEJyYW5jaCI6ImRldmVsb3AifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
9 participants