Commit Graph

5119 Commits

Author SHA1 Message Date
SWC Bot
344a6ea7be chore: Publish crates 2023-05-20 04:47:53 +00:00
OJ Kwon
c03a74c198
refactor(plugin/runner): Add attributes to the module bytes (#7419) 2023-05-20 04:46:09 +00:00
SWC Bot
920013511b chore: Publish crates 2023-05-20 04:00:44 +00:00
OJ Kwon
f8fe365c3b
feat(plugin/runner): Enable in-memory precompiled module cache (#7420) 2023-05-20 03:58:55 +00:00
Donny/강동윤
0ac3aebe3d chore: Publish crates 2023-05-19 14:25:31 +09:00
SWC Bot
b2c9bb47a0 chore: Publish crates 2023-05-19 04:37:45 +00:00
Austaras
40d2bf7ec3
fix(es/minifier): Prevent inlining vars assigned outside current function scope (#7414)
**Related issue:**

 - Closes #7412.
2023-05-19 13:35:50 +09:00
SWC Bot
135c4fd16b chore: Publish crates 2023-05-18 08:20:26 +00:00
Donny/강동윤
57ad722d06
fix(es/parser): Fix parsing of > in typescript mode (#7407)
**Related issue:**

 - Closes #7403.
2023-05-18 08:18:27 +00:00
SWC Bot
9440f4b196 chore: Publish crates 2023-05-18 07:08:08 +00:00
OJ Kwon
ac5ab607c9
refactor(plugin/runner): Revise cache, module loading (#7408)
**Description:**

One of the oversight around design of `TransformExecutor` is
encapsulating plugin module logic. It has access to the cache and do its
own loading & storing. This means consumer of plugin runner have tricky
challenge to control its caching system. First, there is no way to
escape how swc_plugin_runner controls cache and cannot synchronize into
their own, also depends on the usecases cannot control the features they
want to opt in: for example, there's no way one interface uses in-memory
cache, and another uses filesystem since it is compile time configured
singleton.

PR revisits overall design of TransformExecutor: now it accepts a tratir
`PluginModuleBytes`, which abstracts any kind of bytes we are dealing
with, such as raw file slice or serialized `wasmer::Module`. Cache
instantiation and managing is now bubbled up to the application level
(`swc` in here), so if someone wants non-singleton caching or integrate
into their own caching system it can be customized.

Lastly, deprecated `memory_cache` feature and only exposes
`filesystem_cache`. Cache implementation uses in-memory is always
available, and can opt in filesystem cache where it's supported.


**BREAKING CHANGE:**

This is clearly breaking changes for the consumers of swc_core. for the
@swc/core, this PR takes care of necessary changes. I'll work on
next-swc changes later once we have new @swc/core version with this
changes.
2023-05-18 07:05:39 +00:00
SWC Bot
31d7b88555 chore: Publish crates 2023-05-18 01:21:08 +00:00
Austaras
5dbbbea2ef
fix(es/minifier): Mark all function params as potential property mutation (#7409)
**Description:**

This issue is more severe than I originally thought. It raises not in
array indexing, but in function calls and property mutation. We should
treat all function arguments as potentially be property mutated,
otherwise following example

```js
class A {
	a = 1

	toString() {
		return this.a
	}
}

const a = new A()

function foo(x) {
	x.a++
}

const b = a + 1

foo(a)

console.log(b)
```

would be error(It should log 2, but logs 3 after compress).

As the result, massive regressions is unavoidable, since some of these
optimizations may indeed cause error. Part of them can be mitigated with
following optimization -- allow inline of ident even if its original
value is mutated. Consider

```js
export function foo(x) {
   const y = x
   x.a = 1
   y.b = 2
}
```

If x is a primitive value, all mutations to its properties are ignored;
if x is a object, then y refers to the same object no matter what
mutation is performed.

And there's still room for more, currently following code
```js
export function foo(x) {
    const y = Math.floor(x);
    g(y);
}
```
But I'd rather do it in a separate PR.


**Related issue:**

 - Closes #7402.
2023-05-18 01:19:17 +00:00
SWC Bot
a2a544a0ae chore: Publish crates 2023-05-17 13:12:20 +00:00
Yunfei He
dba78a0031
fix(es/compat): Mark reserved function names private (#7298) 2023-05-17 13:10:27 +00:00
SWC Bot
c520e7469e chore: Publish crates 2023-05-17 06:17:15 +00:00
Donny/강동윤
95291f2c5d
fix(common): Disable tracing/release_max_level_info (#7401) 2023-05-17 06:15:18 +00:00
SWC Bot
8052d4dabd chore: Publish crates 2023-05-17 04:53:45 +00:00
Donny/강동윤
1d3f32056c
fix(es/parser): Fix parsing of module identifier (#7400)
**Related issue:**

 - Closes #4176.
 - Closes #7372.
2023-05-17 04:51:57 +00:00
SWC Bot
820f29ffc1 chore: Publish crates 2023-05-17 03:57:12 +00:00
Donny/강동윤
6b92eecd39
test(css/module): Add a test for a fixed issue (#7399)
**Related issue:**

 - Closes #6897.
2023-05-17 03:55:24 +00:00
SWC Bot
227c272904 chore: Publish crates 2023-05-16 12:33:08 +00:00
Donny/강동윤
eaba323581
test(es/parser): Add a test for a fixed issue (#7398)
**Related issue:**

 - Closes #6976.
2023-05-16 12:31:05 +00:00
SWC Bot
da0c612d85 chore: Publish crates 2023-05-16 05:18:57 +00:00
Donny/강동윤
3a0565f377
chore(plugin): Update rkyv to v0.7.42 (#7397) 2023-05-16 14:17:12 +09:00
SWC Bot
d3db7edd51 chore: Publish crates 2023-05-16 04:14:36 +00:00
Donny/강동윤
40ba242076
fix(es/codegen): Do not create duplicate source map entry (#7309) 2023-05-16 04:12:46 +00:00
SWC Bot
02b22f7625 chore: Publish crates 2023-05-16 03:23:16 +00:00
Donny/강동윤
f9cdd741c2
test(es/minifier): Enable more terser tests (#7396) 2023-05-16 03:21:08 +00:00
Donny/강동윤
4a53951fe3 chore: Publish crates 2023-05-15 13:18:22 +09:00
SWC Bot
a05e28906b chore: Publish crates 2023-05-15 04:14:42 +00:00
OJ Kwon
05b4c11497
feat(swc_core): Expose plugin proxy to the host env (#7391) 2023-05-15 13:12:33 +09:00
Donny/강동윤
8e6fea8519 chore: Publish crates 2023-05-15 12:42:54 +09:00
SWC Bot
5e3d156aca chore: Publish crates 2023-05-15 03:20:03 +00:00
OJ Kwon
bba1fad35c
feat(plugin): Add versioned wrapper struct (#7382) 2023-05-15 03:17:31 +00:00
SWC Bot
5d30437206 chore: Publish crates 2023-05-15 02:27:59 +00:00
Donny/강동윤
cad18fae4b
feat(es/compat): Implement auto accessors fully (#7370)
**Related issue:**

 - Closes #7193.
2023-05-15 02:26:07 +00:00
SWC Bot
a2577adffa chore: Publish crates 2023-05-14 06:08:33 +00:00
OJ Kwon
e3868a7e00
feat(swc_core): Allow native env plugin to use memory cache (#7390)
**Description:**

I just realized there could be some case who'll want plugin in native env, but without filesystem cache. If there's a custom cache implementation, it'll make a conflict to swc's caching mechanism since swc does not expose any interface to the its cache.

PR takes simple approach to expose another feature to opt in native env with memory cache for those case. Ideally we should make `plugin_transform_host_native` to not to opt-in any cache, and then make `swc_plugin_runner` to run without any cache implementation - but that'll be a breaking changes with few more involved changes.
2023-05-14 06:06:24 +00:00
SWC Bot
a71d5b2180 chore: Publish crates 2023-05-14 05:23:11 +00:00
Austaras
fa7a3521f5
fix(es/parser): Fix >= with type instantiate (#7388) 2023-05-14 05:21:13 +00:00
SWC Bot
e88ae37a0c chore: Publish crates 2023-05-12 00:47:49 +00:00
OJ Kwon
9b3a41c57d
refactor(common): Derive ByteCheck for ArcString (#7380) 2023-05-12 09:45:59 +09:00
SWC Bot
7655aaa42a chore: Publish crates 2023-05-11 14:02:24 +00:00
Donny/강동윤
166e77c2b3
chore(es): Enable tracing spans for release builds (#7379) 2023-05-11 13:59:53 +00:00
SWC Bot
65785bdf21 chore: Publish crates 2023-05-10 04:19:21 +00:00
Donny/강동윤
041b491466
feat(es/parser): Implement explicit resource management (#7322)
**Description:**

 - Add `UsingDecl`.
 - Add `UsingDecl` to `Decl`.
 - Rename `VarDeclOrPat` to `ForHead`.
 - Add `UsingDecl` to `ForHead`.
 - Implement parser for using declarations.

**Related issue:**

 - #7316.
2023-05-10 04:16:44 +00:00
SWC Bot
6432e1f5c5 chore: Publish crates 2023-05-10 03:33:12 +00:00
Donny/강동윤
1dced17998
fix(es/minifier): Fix remapping of vars upon inlining (#7362)
**Related issue:**

 - Closes #7331.
2023-05-10 03:31:15 +00:00
SWC Bot
e1c9182e1c chore: Publish crates 2023-05-09 05:47:00 +00:00
Donny/강동윤
97ec259144
feat(es/compat): Partially support auto accessors (#7364)
**Description:**

I'll create a follow-up PR for a full support for auto accessors.

**Related issue:**

 - #7193.
2023-05-09 05:45:16 +00:00
SWC Bot
d8a3310543 chore: Publish crates 2023-05-09 03:04:13 +00:00
SWC Bot
7fc9b00443 chore: Publish crates 2023-05-08 03:40:27 +00:00
Donny/강동윤
9c052db796
feat(es/compat): Support export class from stage 3 decorator pass (#7363)
**Related issue:**

 - Closes #7358.
2023-05-08 03:38:43 +00:00
SWC Bot
aef5ac4812 chore: Publish crates 2023-05-06 03:56:38 +00:00
OJ Kwon
d2c1f45f5a
feat(plugin): Enable bytecheck (#7280)
**Description:**

Second attempt to enable bytecheck. This PR does not have versioned struct yet, just enabling bytecheck wherever possible. Also, it is for the ast only yet, so transform metadata and others might need this later.

PR seems to be passing all the ci, but as we've experienced before, there might be some unexpected outcomes with the release. Maybe better to hold this until clear https://github.com/swc-project/swc/issues/7238, then land as a separate release.
2023-05-06 03:54:25 +00:00
SWC Bot
b60a33001a chore: Publish crates 2023-05-05 08:22:21 +00:00
Cong-Cong Pan
b180d09e1d
fix(xml/codegen): Escape < and > in child (#7351) 2023-05-05 08:20:09 +00:00
SWC Bot
5e595e7644 chore: Publish crates 2023-05-05 07:28:53 +00:00
OJ Kwon
4e278befcf
build(cargo): Update wasmer to v3.3 (#7352) 2023-05-05 07:26:38 +00:00
SWC Bot
e9f3371c5f chore: Publish crates 2023-05-02 02:13:33 +00:00
Donny/강동윤
e0de83e862
fix(es/compat): Fix is_setter in parameters pass (#7348)
**Description:**

x-ref: https://vercel.slack.com/archives/C02HY34AKME/p1682667306929829
2023-05-02 02:11:42 +00:00
SWC Bot
11c1f2c7b3 chore: Publish crates 2023-04-30 12:45:00 +00:00
OJ Kwon
91a3fbe460
refactor(plugin/runner): Refine cache location (#7346) 2023-04-30 21:43:13 +09:00
Donny/강동윤
afe94b72e5 chore: Publish crates 2023-04-29 22:57:05 +09:00
SWC Bot
4ad18beca3 chore: Publish crates 2023-04-29 13:48:25 +00:00
Donny/강동윤
d061d295ff
fix(es/typescript): Fix typescript strip pass (#7342)
**Related issue:**

 - Reverts #7196.
 - https://github.com/vercel/turbo/issues/4747.
2023-04-29 22:46:36 +09:00
SWC Bot
767284e27f chore: Publish crates 2023-04-29 13:28:01 +00:00
magic-akari
985f0cad06
fix(es/parser): Parse decorators after export (#7340) 2023-04-29 22:26:13 +09:00
SWC Bot
b80ceaed03 chore: Publish crates 2023-04-29 13:21:14 +00:00
Donny/강동윤
246300ae25
feat(es/minifier): Drop expressions using sequential inliner (#6936) 2023-04-29 22:19:00 +09:00
SWC Bot
098b9387c1 chore: Publish crates 2023-04-29 13:00:37 +00:00
Donny/강동윤
d6999ba1ac
fix(plugin/runner): Revert #7341 (#7344)
**Description:**

This reverts commit 245163a778.
2023-04-29 21:58:48 +09:00
SWC Bot
2c7f94f1ac chore: Publish crates 2023-04-29 11:16:12 +00:00
OJ Kwon
245163a778
feat(plugin/runner): Improve caching (#7341)
**Description:**

Previously disabled cache (storing compiled module in memory) still doesn't work, so falling back to storing raw bytes and create new module each time. This is the same behavior to the wasm build's approach.

Also minor improved caching root to include more information. Previous rustc didn't seem to work unfortunately, so removed but instead using plugin_runner's version.
2023-04-29 11:14:21 +00:00
SWC Bot
e7911ee594 chore: Publish crates 2023-04-26 01:25:19 +00:00
Samuel Eisenhandler
7e99e5fd2c
fix(es/codegen): Emit type arguments for call expressions (#7335) 2023-04-26 01:23:13 +00:00
Donny/강동윤
1ecc4385b6 chore: Publish crates 2023-04-25 19:25:16 +09:00
SWC Bot
d67f9bfd75 chore: Publish crates 2023-04-25 10:06:32 +00:00
magic-akari
caee073935
feat(es/module): Add export_interop_annotation flag (#7330)
**Related issue:**

 - https://github.com/vercel/next.js/issues/48801
2023-04-25 10:04:28 +00:00
Donny/강동윤
897099b970 chore: Publish crates 2023-04-25 09:30:08 +09:00
SWC Bot
5f55e04c4d chore: Publish crates 2023-04-24 15:01:16 +00:00
Donny/강동윤
603f22de76
test(es): Update tsc test suite (#7323) 2023-04-24 14:59:19 +00:00
SWC Bot
923ed13b6a chore: Publish crates 2023-04-24 09:25:42 +00:00
OJ Kwon
577f81ec40
fix(common): Workaround the Arc and rkyv issue (#7321)
**Description:**

Attempt to workaround #7238.

Originally I thought this is related with oom or memory layout, then realized actual deserialization error occurs in weird position - it tries to deserialize BytePos (which is obvious type) and it fails. It made me think maybe a property next to the struct layout have some unexpected behavior, notably Arc<String>.

PR applies same workaround as Atom does, and it seems to at least pass swc-coverage-instrument's usecases. May need bit more verification with other plugins to see if we can call this out as reliable workaround.
2023-04-24 09:23:31 +00:00
SWC Bot
51f3840609 chore: Publish crates 2023-04-24 05:25:39 +00:00
Fy
66b5b110bf
fix(es/compat): Transform curried function call with optional chaining (#7313)
**Related issue:**

 - Closes #7312
2023-04-24 05:23:53 +00:00
SWC Bot
5400648de8 chore: Publish crates 2023-04-24 04:17:24 +00:00
David Sherret
0ca05d8b69
fix(es/codegen): Fix codegen of TsModuleDecl (#7319) 2023-04-24 04:15:08 +00:00
SWC Bot
caffb9593c chore: Publish crates 2023-04-24 03:28:05 +00:00
Donny/강동윤
2c441f5c8d chore: Publish crates 2023-04-21 15:30:05 +09:00
SWC Bot
f2a38e808a chore: Publish crates 2023-04-21 06:13:37 +00:00
Donny/강동윤
6f81cb9c32
fix(es/parser): Fix handling of in and out of typescript (#7308)
**Related issue:**

 - Closes #7305.
2023-04-21 15:11:18 +09:00
SWC Bot
1812d9ef7f chore: Publish crates 2023-04-21 04:00:12 +00:00
Donny/강동윤
e7f7b01f59
fix(es): Fix a crash related to source map (#7307)
**Related issue:**

 - Reverts #7229.
 - Closes #7301.
2023-04-21 03:58:24 +00:00
SWC Bot
c8e6774070 chore: Publish crates 2023-04-20 08:28:29 +00:00
magic-akari
38dfb91ebc
fix(es/helpers): Remove unnecessary parameters in helper_expr! macro (#7296)
**Description:**

We have moved to snake_case, so the last parameter of helper_expr is unnecessary.
2023-04-20 08:26:34 +00:00
SWC Bot
af8e158948 chore: Publish crates 2023-04-20 07:35:26 +00:00
Donny/강동윤
9c279b802b
fix(es/modules): Support jsc.baseUrl without jsc.paths (#7302)
**Related issue:**

 - Closes #1324.
2023-04-20 07:33:29 +00:00
SWC Bot
35ad9234e9 chore: Publish crates 2023-04-20 02:13:02 +00:00
Donny/강동윤
38495a9835
test(es/compat): Add a test for a wrong issue (#7300)
**Related issue:**

 - Closes #7290.
2023-04-20 11:10:25 +09:00
SWC Bot
7fd1e93434 chore: Publish crates 2023-04-19 21:54:39 +00:00
Leah
3422923cb0
fix(testing): Fix path normalization on windows for testing diffs (#7299) 2023-04-19 21:52:40 +00:00
SWC Bot
ffa76894fd chore: Publish crates 2023-04-19 14:28:50 +00:00
SWC Bot
095e0ad034 chore: Publish crates 2023-04-19 12:30:15 +00:00
OJ Kwon
39d415cc16
build(cargo): bump up wasmer (#7294)
**Description:**
Maybe fix? https://github.com/swc-project/swc/issues/7238

https://github.com/wasmerio/wasmer/issues/3764#issuecomment-1514084441
2023-04-19 12:28:31 +00:00
SWC Bot
0e4d764f90 chore: Publish crates 2023-04-19 11:27:00 +00:00
Austaras
7a00f2e954
fix(es/resolver): Hoist parameter in arrow and constructor (#7292)
**Related issue:**

 - Closes #7248.

---

Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2023-04-19 11:25:02 +00:00
SWC Bot
0d4fe74ab5 chore: Publish crates 2023-04-19 07:24:45 +00:00
Donny/강동윤
0aab90c005
fix(es/minifier): Fix a inliner bug related to Script (#7288)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7287.
2023-04-19 07:22:48 +00:00
SWC Bot
b68466c0d9 chore: Publish crates 2023-04-19 06:26:19 +00:00
Donny/강동윤
bc83cb2ecf
perf(preset-env): Update static map (#7293)
**Description:**

x-ref: https://vercel.slack.com/archives/C02HY34AKME/p1681811874650839
2023-04-19 06:24:23 +00:00
SWC Bot
1c530b8919 chore: Publish crates 2023-04-18 02:46:59 +00:00
Donny/강동윤
248fd374e6
perf(es/react): Don't use regex (#7284)
**Description:**

It's causing a performance problem in concurrent scenarios.

x-ref: https://linear.app/vercel/issue/WEB-921
x-ref: https://vercel.slack.com/archives/C02HY34AKME/p1681757237489689
2023-04-18 02:45:08 +00:00
Donny/강동윤
e757e65393 chore: Publish crates 2023-04-16 13:23:28 +09:00
SWC Bot
f7355420dd chore: Publish crates 2023-04-15 14:52:40 +00:00
Donny/강동윤
4c06a56e52
fix(es/minifier): Use UTF16 length for str.length (#7275)
**Related issue:**

 - Closes #7274.
2023-04-15 14:50:52 +00:00
SWC Bot
d90d14fc23 chore: Publish crates 2023-04-15 13:58:51 +00:00
Donny/강동윤
5d3313aa7e
feat(es/modules): Use function instead of arrow function unconditionally (#7273) 2023-04-15 13:57:00 +00:00
SWC Bot
9e752bd1aa chore: Publish crates 2023-04-15 04:21:44 +00:00
Austaras
93a264c9a4
fix(es/renamer): Ensure that param and function body are in same scope (#7271)
**Description:**

The problem arises in L235 of swc_ecma_transforms_base/src/rename/mod.rs

```rs
unit!(visit_mut_fn_decl, FnDecl, true);
```

which calls `get_map` and evals to

```rs
node.visit_children_with(&mut v);
```

with `FnDecl` and `Analyzer` in L132. However, in `Analyzer`, a visit to raw function was not overloaded, so function arguments and function body are considered different scopes.

**Related issue:**

 - Closes #7261.
2023-04-15 04:19:52 +00:00
SWC Bot
42c4b07f34 chore: Publish crates 2023-04-15 03:29:04 +00:00
IWANABETHATGUY
c4cce12758
build(cargo): Update bitflags to v2 (#7270) 2023-04-15 03:26:56 +00:00
SWC Bot
db9320c051 chore: Publish crates 2023-04-15 02:19:38 +00:00
Cong-Cong Pan
635bf8116b
refactor(es/parser): Remove :: token as it's not used (#7268) 2023-04-15 02:17:37 +00:00
SWC Bot
0e1435a97f chore: Publish crates 2023-04-15 01:32:33 +00:00
SWC Bot
cfc53fe0df chore: Publish crates 2023-04-15 00:36:58 +00:00
limerick
219a738a75
fix(es): Allow extra comments after sourceMappingURL (#7262) 2023-04-15 00:35:04 +00:00
SWC Bot
5f0660667f chore: Publish crates 2023-04-14 23:50:14 +00:00
Robin Appelman
beefdd459c
fix(es/loader): Fix browser overwrites not applying correctly (#7243) 2023-04-14 23:48:22 +00:00
SWC Bot
a9e7efc129 chore: Publish crates 2023-04-14 22:55:55 +00:00
Donny/강동윤
5629e6b529 chore: Publish crates 2023-04-13 20:23:18 +09:00
SWC Bot
e618d4de6a chore: Publish crates 2023-04-13 11:12:23 +00:00
SWC Bot
e6cffb7581 chore: Publish crates 2023-04-13 08:41:47 +00:00
OJ Kwon
ff3decc7db
build(plugin): Update rkyv (#7257) 2023-04-13 08:39:23 +00:00
SWC Bot
fb9eed24ad chore: Publish crates 2023-04-13 07:00:40 +00:00
Donny/강동윤
1fe5c3a803
feat(es): Use minify.format.ascii_only if output.charset is not specified (#7258)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7240.
2023-04-13 06:58:43 +00:00
SWC Bot
8fc527343b chore: Publish crates 2023-04-13 05:52:04 +00:00
OJ Kwon
6bd58cbcfd
refactor(plugin): Remove bytecheck flag (#7256) 2023-04-13 05:49:58 +00:00
SWC Bot
604667d522 chore: Publish crates 2023-04-13 03:25:23 +00:00
Donny/강동윤
a44fea1ec8
fix(es/minifier): Fix handling of optional chaining when hoist_props is enabled (#7246)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7228.
2023-04-13 03:23:29 +00:00
SWC Bot
dd56100585 chore: Publish crates 2023-04-12 13:23:23 +00:00
limerick
f0e3b1d09a
feat(es): Provide more information when loading of input source map failed (#7249) 2023-04-12 13:21:25 +00:00
SWC Bot
8e5cb60183 chore: Publish crates 2023-04-12 12:33:03 +00:00
OJ Kwon
efad714983
feat(plugin): Enable validation (#7250) 2023-04-12 12:30:38 +00:00
SWC Bot
d4782ee526 chore: Publish crates 2023-04-12 11:46:53 +00:00
magic-akari
2e947e7aeb
fix(es/compat): Handle export function in reserved_word (#7251) 2023-04-12 11:44:49 +00:00
SWC Bot
f31f67c7fb chore: Publish crates 2023-04-11 07:05:27 +00:00
Donny/강동윤
e35097fd8c
fix(es/codegen): Respect ascii_only for identifiers (#7247)
**Related issue:**

 - https://github.com/swc-project/swc/issues/7240.
2023-04-11 07:03:19 +00:00
SWC Bot
33ff2ba7c4 chore: Publish crates 2023-04-11 04:50:23 +00:00
Donny/강동윤
559d1202bc
feat(es/minifier): Support PURE comment of seq exprs (#7245)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7241.
2023-04-11 04:48:11 +00:00
SWC Bot
a0e193d177 chore: Publish crates 2023-04-11 03:47:41 +00:00
Donny/강동윤
70b86dbe37
refactor(plugin/runner): Fix clippy warnings (#7244) 2023-04-11 03:45:49 +00:00
SWC Bot
80e125a386 chore: Publish crates 2023-04-11 02:13:17 +00:00
David Sherret
6614886192
fix(es/parser): Parse const type parameters in arrow function expressions (#7242) 2023-04-11 02:11:04 +00:00
SWC Bot
2a662350e6 chore: Publish crates 2023-04-10 10:47:52 +00:00
Donny/강동윤
01db30f91e
fix(es/parser): Reset ctx for cond while parsing a stmt (#7232) 2023-04-10 10:45:49 +00:00
SWC Bot
c06690ec9c chore: Publish crates 2023-04-10 09:31:19 +00:00
Yukang
c6659183a6
fix(es): Fix a crash related to an empty source map (#7229) 2023-04-10 09:28:15 +00:00
SWC Bot
ab9e793fa8 chore: Publish crates 2023-04-10 08:48:13 +00:00
Yukang
b1c40a411f
fix(es/parser): Use a hard error for missing r-paren in an if stmt (#7223)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7104.
2023-04-10 08:46:01 +00:00
SWC Bot
0fe90881b5 chore: Publish crates 2023-04-10 07:03:43 +00:00
Donny/강동윤
695ce060e9
test(es/plugin): Enable E2E test again (#7236) 2023-04-10 07:01:56 +00:00
Donny/강동윤
a24f3554ce chore: Publish crates 2023-04-10 14:04:04 +09:00
SWC Bot
8741fdb126 chore: Publish crates 2023-04-10 04:55:59 +00:00
Donny/강동윤
b868ed02a3
refactor(plugin/runner): Fix publish action (#7234) 2023-04-10 13:54:08 +09:00
Donny/강동윤
bc676e9f0f chore: Publish crates 2023-04-10 13:14:30 +09:00
SWC Bot
2204b7809b chore: Publish crates 2023-04-10 03:42:39 +00:00
OJ Kwon
56bdacc72d
feat(plugin/runner): Update wasmer to v3 (#7197)
**Description:**

This PR reattempts https://github.com/swc-project/swc/pull/5456.

Most of the changes are for the breaking changes of wasmer@3, as well as enabling rkyv's strict mode (https://github.com/swc-project/swc/pull/6922). This could not be seperated since wasmer@3 enables strict mode by default without a way to turn it off.

There are a couple of changes worth noting:

- Disabling in-memory module lookup: https://github.com/swc-project/swc/pull/7197/files#diff-3bda5def6ce2b7553c3b3a5ad241c0bdb7021e67b7de1e594df4cd5a54d403b3R154-R159
- Disabling plugin_runner in bindings_wasm: https://github.com/swc-project/swc/pull/7197/files#diff-dc3ded556a1fd709a129acd588e5eda651b842c6acc3f5340d40088a1f927facR310-R312
- Skipping plugin compat test: https://github.com/swc-project/swc/pull/7197/files#diff-531197dfcefba05faca53f0cf442ecc2dc6b59d5ead01979f5ffb912aa36249aR64-R66
2023-04-10 03:40:25 +00:00
Donny/강동윤
e116fedd22 chore: Publish crates 2023-04-10 11:55:00 +09:00
SWC Bot
bb80c659b3 chore: Publish crates 2023-04-07 01:46:34 +00:00
Donny/강동윤
e241201bf7
fix(es/testing): Ensure that we call fold_program (#7222) 2023-04-07 01:44:50 +00:00
SWC Bot
68751600ae chore: Publish crates 2023-04-06 14:47:27 +00:00
Donny/강동윤
a7a53c6208
feat(es): Expose stage 3 decorator (#7220) 2023-04-06 14:45:21 +00:00
SWC Bot
4b9cfbb4dd chore: Publish crates 2023-04-06 13:48:37 +00:00
Donny/강동윤
f5c62fbbf8
fix(es/compat): Fix finally handling of generator (#7215)
**Description:**

Update generator implementation to match
e83d61398e/src/compiler/transformers/generators.ts

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5913.
2023-04-06 09:37:21 +00:00
SWC Bot
150e54dc3a chore: Publish crates 2023-04-06 08:56:53 +00:00
magic-akari
29bf1760be
fix(es/typescript): Fix computation of enum bits (#7219)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7218.
2023-04-06 08:54:59 +00:00
SWC Bot
352aa7a3ea chore: Publish crates 2023-04-06 05:30:13 +00:00
SWC Bot
c6b28f91cc chore: Publish crates 2023-04-05 05:17:51 +00:00
Donny/강동윤
3f61638cbf
refactor(macros/ast-node): Drop darling to reduce compile time (#7214) 2023-04-05 05:15:50 +00:00
SWC Bot
a22a8a70ed chore: Publish crates 2023-04-05 04:37:50 +00:00
Donny/강동윤
73bc29eeb0
fix(es/minifier): Don't remove used var decl (#7200)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7194.
2023-04-05 04:35:37 +00:00
SWC Bot
eb127df8cc chore: Publish crates 2023-04-04 10:29:29 +00:00
Donny/강동윤
5aee7abfc6 chore: Publish crates 2023-04-04 14:46:04 +09:00
SWC Bot
c8fca9a054 chore: Publish crates 2023-04-04 03:07:51 +00:00
magic-akari
a13a78e3fe
feat(es/helpers): Use named export and unify import path (#7182)
**BREAKING CHANGE:**

Breaking changes for `@swc/helpers`. A new major version `0.5.0` is required.


**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7157
2023-04-04 03:05:47 +00:00
SWC Bot
06bacca90c chore: Publish crates 2023-04-04 02:24:40 +00:00
Adam Jahn
bfe654438f
fix(swc_core): Fix a feature name (#7198) 2023-04-04 02:22:47 +00:00
SWC Bot
ad7daddeb8 chore: Publish crates 2023-04-04 01:50:35 +00:00
HeYunfei
ddfbc93624
fix(es/typescript): Mark A as a type in export { type A } (#7196) 2023-04-04 01:47:58 +00:00
SWC Bot
ae2362e97b chore: Publish crates 2023-04-03 08:15:39 +00:00
Donny/강동윤
7a863ad18f
feat(es/compat): Implement stage 3 decorator, without auto accessor (#6950) 2023-04-03 08:13:12 +00:00
SWC Bot
a679dbe9aa chore: Publish crates 2023-04-02 22:16:24 +00:00
Marvin Hagemeister
414e66910d
fix(es/parser): Fix infinite loop on jsx in js (#7191) 2023-04-02 22:14:29 +00:00
SWC Bot
48843455fa chore: Publish crates 2023-04-02 03:49:33 +00:00
limerick
3e6a1869e8
fix(es): Allow missing .map file (#7141) 2023-04-02 03:47:39 +00:00
SWC Bot
f73f96dd94 chore: Publish crates 2023-04-02 00:24:57 +00:00
OJ Kwon
976667f7d9
feat(plugin/runner): Improve cache path (#7188)
**Description:**

This PR is minor improvement, non breaking changes to cache path for the plugin. In short, it tries to combine rustc version if available to expand. `option_env!` supposed to embed build time rustc version. It'd be ideal if we could match between plugin's as well, but I doubt if we could before actually load plugin.
2023-04-02 00:22:58 +00:00
SWC Bot
fa153348c9 chore: Publish crates 2023-04-01 06:17:38 +00:00
Donny/강동윤
df7b4e71d2
feat(css/modules): Preserve spans of CSS class names (#7185)
**Description:**

x-ref: https://vercel.slack.com/archives/D03JF6EG45S/p1680280923015879
2023-04-01 06:15:25 +00:00
SWC Bot
b7366fd5ce chore: Publish crates 2023-04-01 05:42:08 +00:00
magic-akari
98f14931e7
fix(es/modules): Hint nodejs for multiple export * (#7184) 2023-04-01 05:40:25 +00:00
SWC Bot
b94fbed4c9 chore: Publish crates 2023-03-31 06:17:53 +00:00
magic-akari
3ca954b9f9
fix(es/helpers): Use snake_case for helpers (#7147)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7144.
 - Closes https://github.com/swc-project/swc/issues/7118.
2023-03-31 15:15:21 +09:00
SWC Bot
d61e84c5ce chore: Publish crates 2023-03-31 04:03:04 +00:00
SWC Bot
7d69b79a9e chore: Publish crates 2023-03-31 03:23:35 +00:00
magic-akari
0a80e0506b
fix(es/compat): Handle shorthand object prop while renaming (#7176)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7174.
2023-03-31 03:21:39 +00:00
Donny/강동윤
a1b7e1358a chore: Publish crates 2023-03-30 17:59:01 +09:00
SWC Bot
bf1e55d27b chore: Publish crates 2023-03-30 08:48:31 +00:00
magic-akari
23fb8c5563
fix(es/compat): Fix the position for temp var injection (#7171) 2023-03-30 17:41:55 +09:00
SWC Bot
6a015550ba chore: Publish crates 2023-03-30 08:40:29 +00:00
magic-akari
065d11cb9b
fix(es/compat): Handle import/export in reserved_word (#7165) 2023-03-30 17:38:35 +09:00
SWC Bot
b1fb6b655f chore: Publish crates 2023-03-30 08:08:20 +00:00
Donny/강동윤
0259a7465f
build(cargo): Update rustc to nightly-2023-03-20 (#7170)
**Description:**

This PR also updates `rkyv` to `=0.7.40`.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6807.
2023-03-30 08:06:02 +00:00
SWC Bot
44062d6fa5 chore: Publish crates 2023-03-29 08:50:54 +00:00
Donny/강동윤
12546c853a
build(cargo): Revert rustc upgrade (#7162)
**Description:**

The `rkyv` bug is not fixed.
2023-03-29 17:48:45 +09:00
Donny/강동윤
4d7491d477 chore: Publish crates 2023-03-29 16:05:50 +09:00
SWC Bot
d74103739a chore: Publish crates 2023-03-29 06:26:30 +00:00
Donny/강동윤
e445502072
build(cargo): Update rustc to nightly-2023-03-28 (#7154)
**Description:**

This PR also updates `rkyv` to `=0.7.40`.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6807.
2023-03-29 06:24:19 +00:00
SWC Bot
fca18b2c6b chore: Publish crates 2023-03-28 08:00:32 +00:00
Donny/강동윤
6f0bf665c2
fix(css/compat): Remove usage of box_syntax (#7153) 2023-03-28 16:58:08 +09:00
SWC Bot
03f7a2d8d7 chore: Publish crates 2023-03-27 06:41:36 +00:00
Fy
05a2815e6c
feat(es/react): Support script within automatic runtime (#7126)
**Description:**

Inject `const { jsx: _jsx} = require("react/jsx-runtime")` when sourceType is `script`

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7119.
2023-03-27 06:39:37 +00:00
SWC Bot
47f15f9f28 chore: Publish crates 2023-03-27 06:04:11 +00:00
Donny/강동윤
5e58b3e5f6
feat(css/parser): Add legacy_ie to the ParserConfig (#7109) 2023-03-27 15:02:18 +09:00
SWC Bot
8fe52a12b3 chore: Publish crates 2023-03-27 04:31:35 +00:00
Donny/강동윤
30bc086052
refactor(ast): Make serde optional (#7138)
**Description:**

Turbopack does not use `serde` of swc AST types.
2023-03-27 13:28:42 +09:00
SWC Bot
3f2ba68d4b chore: Publish crates 2023-03-24 04:48:48 +00:00
Donny/강동윤
28261985b0
chore(cargo): Refactor Cargo.toml to reduce merge conflict (#7139) 2023-03-24 13:46:42 +09:00
SWC Bot
6635d54128 chore: Publish crates 2023-03-24 02:42:16 +00:00
Donny/강동윤
915f747cb7
refactor(es/parser): Remove EnumKind to reduce compile time (#7137) 2023-03-24 11:40:26 +09:00
SWC Bot
4eef5532a4 chore: Publish crates 2023-03-23 09:42:52 +00:00
Donny/강동윤
b13eb4c811
fix(fast-graph): Use fxhash instead of ahash to make iteration order consistent (#7133)
**Description:**

Some operations of `petgraph` assumes the same iteration order.
2023-03-23 18:32:47 +09:00
SWC Bot
b178ff5661 chore: Publish crates 2023-03-23 09:19:33 +00:00
Donny/강동윤
2154a3f117
refactor(macros): Reduce compile time (#7132)
**Description:**

 - Reduce usage of generics in proc-macros.
 - Remove needless operations like parsing tokens as an AST node.
2023-03-23 18:16:50 +09:00
SWC Bot
d1ae6bb3d9 chore: Publish crates 2023-03-23 09:14:02 +00:00
Donny/강동윤
150c2b6fba
fix(css/codegen): Preserve raw of numbers (#7131)
**Description:**

x-ref: https://vercel.slack.com/archives/C03EWR7LGEN/p1679513958649249
2023-03-23 09:12:07 +00:00
SWC Bot
42f71431bf chore: Publish crates 2023-03-23 05:19:01 +00:00
Donny/강동윤
dfe1a3f496
refactor(es): Remove needless build scripts to reduce compile time (#7129) 2023-03-23 05:15:59 +00:00
SWC Bot
e77bc0a62f chore: Publish crates 2023-03-23 04:39:01 +00:00
Donny/강동윤
08fa94fc73
refactor(es/codegen): Extract code from generic functions to reduce compile time (#7127) 2023-03-23 04:37:02 +00:00
SWC Bot
f81ac50c2a chore: Publish crates 2023-03-23 04:00:14 +00:00
magic-akari
5d7acfd9cb
fix(es/react): Respect import_source in new jsx (#7128)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6987.
2023-03-23 03:58:28 +00:00
SWC Bot
aaaa9caafc chore: Publish crates 2023-03-22 12:27:14 +00:00
Crayon
1e4abcb11d
doc(es): Fix doc url (#7123) 2023-03-22 12:25:17 +00:00
SWC Bot
0195f536ef chore: Publish crates 2023-03-22 11:50:07 +00:00
Fy
d50689eab0
fix(es/visit): Fix handling of Program of AndThen (#7120) 2023-03-22 11:48:13 +00:00
SWC Bot
8c5a1f140a chore: Publish crates 2023-03-22 06:33:46 +00:00
Donny/강동윤
6d9763e8c0
fix(es/renamer): Don't use symbols used by declarations if eval exists (#7116)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6971.
 - Closes https://github.com/swc-project/swc/issues/7094.
2023-03-22 06:31:43 +00:00