magic-akari
9d08b8a614
fix(es/typescript): Handle DeclareCollect
correctly ( #8008 )
...
**Related issue:**
- Closes #8007
2023-09-26 23:37:28 +00:00
SWC Bot
78e12595a4
chore: Publish crates
2023-09-26 03:59:50 +00:00
Donny/강동윤
f07bb482e6
fix(es/codegen): Fix codegen of optional chaining expr with a comment ( #8005 )
...
**Related issue:**
- Closes #8004
2023-09-26 03:58:02 +00:00
SWC Bot
b74a9f4357
chore: Publish crates
2023-09-25 23:38:00 +00:00
Donny/강동윤
39c680d814
fix(es/codegen): Fix codegen of unicode surrogates ( #7985 )
...
**Description:**
x-ref: https://vercel.slack.com/archives/C02HY34AKME/p1695334071194139
Reproduction: https://github.com/kdy1/repro-test-mdx-korean
Regression of next.js: `v13.4.11`(swc_core@v0.79.13 ) => `v13.5.2`
(swc_core@v0.83.12 )
- `next@v13.4.19` works (swc_core@v0.79.59 )
- `next@v13.4.20-canary.3` works (swc_core@v0.79.70 )
- **`next@v13.4.20-canary.32` fails** (swc_core@v0.83.12 )
Commit range:
662f236aa5...e67bf05f9d
- `swc_core@v0.79.70`:
662f236aa5
- `swc_core@v0.83.12`:
e67bf05f9d
Diff: https://gist.github.com/kdy1/047e7e5537c34180d446cb3d5b95fce8
---
I did more investigation by monkey-patching the `next` package.
`.minify()` resolved without an exception.
It means that `.minify()` is producing an invalid ES code.
So... candidates are
- https://github.com/swc-project/swc/pull/7890
- https://github.com/swc-project/swc/pull/7876
- https://github.com/swc-project/swc/pull/7858
- https://github.com/swc-project/swc/pull/7856
- https://github.com/swc-project/swc/pull/7853
- https://github.com/swc-project/swc/pull/7832
2023-09-25 23:36:05 +00:00
강동윤 (Donny)
243d68d8dc
chore: Publish crates
2023-09-25 22:24:43 +09:00
SWC Bot
5a94ff1083
chore: Publish crates
2023-09-25 04:04:09 +00:00
magic-akari
d91a554033
fix(es/compat): Skip function scope in block-scoped-fns
pass ( #7975 )
...
**Related issue:**
- Closes : #2793
2023-09-25 04:02:09 +00:00
SWC Bot
e146ff7d8e
chore: Publish crates
2023-09-25 01:42:53 +00:00
magic-akari
9c9a538f23
refactor(es/typescript): Reimplement TypeScript pass ( #7202 )
...
**Description:**
## Bugfixes
- Exported `let`/`var` declarations in TypeScript namespaces should be mutable.
- Fix missing declaration of complex exported patterns in TypeScript namespaces.
- Preserve concrete TS namespaces.
## New Features
- Introducing [Verbatim Module Syntax](https://www.typescriptlang.org/tsconfig#verbatimModuleSyntax ).
- Enum value will now be inlined whenever possible within a single module, optimizing runtime performance.
- Constant enums will be automatically eliminated when feasible, This can reduce bundle size.
- Added support for cross-referencing enum values.
## Deprecated
`TsEnumConfig` is deprecated
- The `treat_const_enum_as_enum` transform option is deprecated.
- The `ts_enum_is_readonly` assumption option is deprecated.
**BREAKING CHANGE:**
TypeScript Config is changed.
**Related issue:**
- Closes #5197
- Closes #5259
- Closes #7177
- Closes #7453
- Closes #7676
- Closes #7681
- Closes #7791
- Closes #7961
2023-09-25 01:41:00 +00:00
SWC Bot
bea10ef5f5
chore: Publish crates
2023-09-24 23:41:11 +00:00
Donny/강동윤
f374ad903a
fix(es): Enable resolver if jsc.baseUrl
is specified ( #7998 )
...
**Related issue:**
- Closes #7990
2023-09-24 23:39:12 +00:00
강동윤 (Donny)
489797f1cf
chore: Publish crates
2023-09-24 13:59:06 +09:00
SWC Bot
36de9de600
chore: Publish crates
2023-09-23 15:49:46 +00:00
Donny/강동윤
4d777ee270
feat(es/config): Accept jsc.experimental.keepImportAssertions
( #7995 )
...
**Related issue:**
- Closes #7923 .
2023-09-23 15:47:30 +00:00
SWC Bot
3eb23eba7b
chore: Publish crates
2023-09-22 23:50:22 +00:00
강동윤 (Donny)
276be28ae1
chore: Publish crates
2023-09-22 11:15:56 +09:00
SWC Bot
ee6260d53b
chore: Publish crates
2023-09-21 05:18:49 +00:00
magic-akari
5050f5820a
fix(es/compat): Handle nullish in fn expr scope ( #7980 )
...
**Related issue:**
- Closes : #7977
2023-09-21 05:16:43 +00:00
SWC Bot
95285e8a4a
chore: Publish crates
2023-09-20 06:58:46 +00:00
Donny/강동윤
b3d3a7bc73
fix(es/minifier): Do not inline into a template literal with sequential inliner ( #7971 )
...
**Related issue:**
- Closes #7969 .
2023-09-20 06:57:03 +00:00
SWC Bot
0229bad76c
chore: Publish crates
2023-09-19 02:59:38 +00:00
강동윤 (Donny)
2dac39304d
chore: Publish crates
2023-09-19 07:09:26 +09:00
강동윤 (Donny)
76b7a747ad
chore: Publish crates
2023-09-19 07:05:57 +09:00
강동윤 (Donny)
199a13847a
chore: Publish crates
2023-09-19 06:38:30 +09:00
SWC Bot
f66da77220
chore: Publish crates
2023-09-18 14:42:07 +00:00
magic-akari
f7b5e16aef
refactor(es/lint): Remove usage of box_patterns
( #7966 )
...
**Related issue:**
- Closes #7964
2023-09-18 14:39:53 +00:00
SWC Bot
1079daab4c
chore: Publish crates
2023-09-18 14:04:53 +00:00
SWC Bot
f2baa7ab63
chore: Publish crates
2023-09-18 13:22:16 +00:00
Donny/강동윤
005ddc573e
chore(es/preset-env): Ignore tp
in the version of a browser version ( #7968 )
2023-09-18 13:20:23 +00:00
SWC Bot
e749328312
chore: Publish crates
2023-09-16 09:19:13 +00:00
magic-akari
06ca1fe0a0
fix(es/minifier): Handle ModuleDecl
when transform const modules ( #7959 )
...
**Related issue:**
- Closes #7747
2023-09-16 09:17:26 +00:00
SWC Bot
fc90ead01d
chore: Publish crates
2023-09-16 04:33:48 +00:00
magic-akari
28318f09ed
fix(es/compat): Handle PrivateName
in logical_assignments
( #7958 )
...
**Related issue:**
- Closes #7956
2023-09-16 04:32:07 +00:00
SWC Bot
e67bf05f9d
chore: Publish crates
2023-09-15 12:38:09 +00:00
Donny/강동윤
be5b02a8cf
fix(es/module): Preserve import specifier if resolving fails ( #7955 )
...
**Related issue:**
- https://github.com/vercel/next.js/pull/55216
This PR fixes a regression caught by the PR above.
2023-09-15 12:36:25 +00:00
SWC Bot
88b009cee2
chore: Publish crates
2023-09-15 08:25:18 +00:00
Gábor Szabó
ca22359dbd
chore(es/preset-env): Add the repository url to Cargo.toml
( #7941 )
2023-09-15 08:23:23 +00:00
강동윤 (Donny)
01fefd32f7
chore: Publish crates
2023-09-15 15:11:50 +09:00
강동윤 (Donny)
67e30819bd
chore: Publish crates
2023-09-15 15:07:28 +09:00
SWC Bot
16ad8ec4d1
chore: Publish crates
2023-09-14 07:19:55 +00:00
Donny/강동윤
7e8d72d03b
feat(es/module): Add an option to make resolver fully resolve index.js
( #7945 )
...
**Description:**
- `jsc.module.resolveFully` is added to support resolving as `.js`.
**Related issue:**
- Closes #7861
- Closes #7898
2023-09-14 07:17:23 +00:00
SWC Bot
9f8d454e00
chore: Publish crates
2023-09-14 02:49:44 +00:00
magic-akari
a80aec47ef
fix(es/compat): Handle single expression case in static block ( #7944 )
...
**Related issue:**
- Closes #7922
2023-09-14 02:47:44 +00:00
SWC Bot
47388a047e
chore: Publish crates
2023-09-14 02:17:21 +00:00
Brandon Dail
05ca19b844
fix(css/modules): Support composes when using multiple subclass selectors ( #7949 )
2023-09-14 02:14:58 +00:00
SWC Bot
418a2e3016
chore: Publish crates
2023-09-13 05:57:44 +00:00
Anders Kaseorg
b87ac646f8
fix(es/minifier): Parse a file as a module only if opts.module
is true
( #7943 )
...
**Description:**
Previously it was impossible to minify non-strict code (e.g. `delete identifier;`) because `minify()` unconditionally parsed the input as a module regardless of the `module` setting.
**BREAKING CHANGE:**
`minify()` now respects the `module` parameter instead of ignoring it, so users who had been processing modules with `minify()` without passing `{ module: true }` will now need to pass it.
**Related issue**
- Closes #6130 .
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-09-13 05:55:34 +00:00
SWC Bot
858a4f4a22
chore: Publish crates
2023-09-13 02:05:35 +00:00
Austaras
c091c5e295
feat(es/compat): Support pure_getters
for optional_chaining
( #7933 )
...
**Related issue:**
- Closes #7921
2023-09-13 02:03:41 +00:00
Donny/강동윤
26b01bd01b
chore: Publish crates
2023-09-11 23:26:44 +09:00
SWC Bot
0d0f04689c
chore: Publish crates
2023-09-11 08:33:49 +00:00
Donny/강동윤
dac8888829
fix(es/codegen): Use emitAssertForImportAttributes
( #7936 )
...
**Description:**
- Add `format.emitAssertForImportAttributes` to `minify()`
- Use `jsc.experimental. emitAssertForImportAttributes`.
**Related issue (if exists):**
- Closes #7926
- Closes #7928
2023-09-11 08:31:46 +00:00
SWC Bot
5431010c75
chore: Publish crates
2023-09-10 07:00:21 +00:00
magic-akari
2da58959c2
fix(es/codegen): Emit leading comments for ExprStmt
( #7916 )
2023-09-10 06:58:26 +00:00
SWC Bot
3210556c7e
chore: Publish crates
2023-09-10 06:29:19 +00:00
Austaras
97068e12d1
fix(es/compat): Visit assign expr in generator ( #7932 )
...
**Related issue:**
- Closes #7809
2023-09-10 06:27:30 +00:00
Donny/강동윤
8bb2925e23
chore: Publish crates
2023-09-07 10:23:00 +09:00
SWC Bot
8bb911269c
chore: Publish crates
2023-09-06 17:31:41 +00:00
Donny/강동윤
a86e9f3bb5
fix(es/module): Fix jsc.paths
for projects using pnpm ( #7918 )
...
**Related issue:**
- x-ref: https://vercel.slack.com/archives/C04DUD7EB1B/p1693911653100299?thread_ts=1693819683.070959&cid=C04DUD7EB1B
2023-09-06 17:29:47 +00:00
SWC Bot
5c005256d6
chore: Publish crates
2023-09-06 10:26:13 +00:00
Kei Sakamoto
0db25a252c
fix(css/modules): Aggregate class names when composes is chained. ( #7917 )
...
**Description:**
aggregate class names when composes is chained.
**Related issue:**
- Closes #7737
- https://github.com/web-infra-dev/rspack/issues/3875
2023-09-06 19:24:26 +09:00
SWC Bot
4623b3e07f
chore: Publish crates
2023-09-05 12:26:15 +00:00
Donny/강동윤
ee7575695d
feat(es/codegen): Add an option to print assert
for import attributes ( #7914 )
...
**Description:**
- `jsc.experimental.keepImportAssertions` is renamed to `jsc.experimental.keepImportAttributes`.
- `jsc.experimental.emitAssertForImportAttributes` is added.
**Related issue:**
- Closes #7908
2023-09-05 21:24:25 +09:00
SWC Bot
92d08c38e2
chore: Publish crates
2023-09-01 05:26:46 +00:00
Donny/강동윤
85d6e9be07
fix(es/module): Revert #7901 ( #7906 )
...
**Description:**
I'm reverting #7901 because it caused a regression in next.js CI.
https://github.com/vercel/next.js/pull/54653
**Related issue:**
- Reverts #7901 .
2023-09-01 14:24:50 +09:00
Donny/강동윤
fd1c0cfdae
chore: Publish crates
2023-09-01 11:36:14 +09:00
SWC Bot
d1ec49e3e5
chore: Publish crates
2023-08-31 13:25:10 +00:00
Donny/강동윤
aa6495519b
fix(common): Fix logic for excluding FileName
from source maps ( #7900 )
...
**Description:**
This PR also modifies React transform to use `FileName::Internal` and makes `SourceMapGenConfig` skips `FileName::Internal`.
**Related issue:**
- Closes #5272
2023-08-31 13:23:11 +00:00
SWC Bot
e5f7a9dab0
chore: Publish crates
2023-08-31 07:26:53 +00:00
Donny/강동윤
c714dd20de
fix(es/module): Make jsc.paths
fully resolve TypeScript files ( #7901 )
...
**Related issue:**
- Closes #7861
- Closes #7898
2023-08-31 07:24:12 +00:00
SWC Bot
482306086d
chore: Publish crates
2023-08-31 05:56:04 +00:00
Austaras
2db10e9fd1
fix(es/resolver): Correctly resolve global value ( #7893 )
...
**Related issue:**
- Closes #7685
2023-08-31 05:54:18 +00:00
Donny/강동윤
15d3900f60
chore: Publish crates
2023-08-30 21:08:25 +09:00
SWC Bot
3127ad9515
chore: Publish crates
2023-08-30 10:15:47 +00:00
Donny/강동윤
5fbc251db1
fix(es/module): Don't create absolute paths for jsc.paths
on Windows ( #7892 )
...
**Related issue:**
- Closes #7806
2023-08-30 10:11:34 +00:00
SWC Bot
766d3e8896
chore: Publish crates
2023-08-30 03:03:30 +00:00
Austaras
8db968a25d
refactor(es/minifier): Remove mutated
and mutation_by_call_count
( #7890 )
...
**Description:**
`mutated` can be seen as a combination of `reassigned` and `has_property_mutation`, and `mutation_by_call_count` is simply useless.
2023-08-30 03:01:29 +00:00
SWC Bot
853b4803ad
chore: Publish crates
2023-08-30 02:26:08 +00:00
Donny/강동윤
01cbd6edbd
chore(deps): Update memchr
( #7891 )
2023-08-30 02:23:57 +00:00
SWC Bot
aa8ad10ad8
chore: Publish crates
2023-08-29 10:23:30 +00:00
Austaras
87a47bfb2c
fix(es/minifier): Report is_fn_local
even if var is hoisted ( #7876 )
...
**Related issue:**
- Closes #7847
2023-08-29 10:21:14 +00:00
SWC Bot
c31f05a675
chore: Publish crates
2023-08-29 05:47:51 +00:00
Donny/강동윤
4b33d41fab
fix(es/compat): Make SwitchCase
handler of block-scoping
stateless ( #7888 )
...
**Related issue:**
- Closes #7885
2023-08-29 05:45:13 +00:00
SWC Bot
4a2c24bbec
chore: Publish crates
2023-08-29 05:06:03 +00:00
Donny/강동윤
a50501255d
perf(es/transforms): Remove wrong parallelism ( #7889 )
2023-08-29 05:04:11 +00:00
SWC Bot
3e41468a3a
chore: Publish crates
2023-08-29 01:41:18 +00:00
David Sherret
057bd5f3ef
fix(es/dep-graph): Analyze import type children ( #7883 )
...
**Description:**
It was not analyzing children of a dynamic imports.
2023-08-29 01:39:05 +00:00
SWC Bot
44de87f481
chore: Publish crates
2023-08-28 01:12:12 +00:00
Donny/강동윤
a97d8b42b1
feat(es/preset-env): Update data ( #7882 )
2023-08-28 01:09:38 +00:00
SWC Bot
562f5e1eb3
chore: Publish crates
2023-08-28 00:31:39 +00:00
Donny/강동윤
4d3fcb86e4
feat(es/ast): Support import attributes proposal ( #7868 )
...
**Related issue:**
- Closes #7179
2023-08-28 00:29:45 +00:00
SWC Bot
5d25307a1a
chore: Publish crates
2023-08-27 23:38:50 +00:00
Lewis Liu
122d14c0d3
fix(es/codegen): Fix placing of comments of yield arguments ( #7858 )
...
**Description:**
Looks like the bug I ran into had nothing to do with the changes in
#7856 , since it's reproducible without it. Looks like it might have only
surfaced now because https://github.com/swc-project/swc/pull/7853
changed the default value of `jsc.minify.format.comments`? Added a
minimal test case here with the expected result.
Here's the actual output:
```js
export var padding = '';
export function exec2({ commands }) {
return __awaiter(this, void 0, void 0, function*() {
for(let i2 = 0; i2 < commands.length; i2++){
let command = commands[i2];
yield // some-comment
function({ command }) {
command();
}({
command,
handleError
});
}
});
}
```
The comment ends up getting added after the yield, which makes the
output invalid.
Going to see if I can figure out a fix tomorrow, but let me know if you
have any ideas on where to start looking in the meantime!
2023-08-27 23:36:50 +00:00
SWC Bot
2be46c920c
chore: Publish crates
2023-08-27 18:25:51 +00:00
Donny/강동윤
3180e68bf2
fix(es/compat): Apply transforms for explicit resource management ( #7881 )
...
**Related issue:**
- Closes #7879
2023-08-27 18:23:32 +00:00
SWC Bot
84737cdcd8
chore: Publish crates
2023-08-26 01:14:53 +00:00
Donny/강동윤
71d01ec127
feat(es): Add an option to disable builtin transforms ( #7873 )
2023-08-26 01:12:36 +00:00
SWC Bot
606b57c101
chore: Publish crates
2023-08-25 22:13:55 +00:00
Donny/강동윤
7911973020
chore: Publish crates
2023-08-25 22:55:28 +09:00