Donny/강동윤
d1097ccb59
feat(css/parser): Store lexed comments ( #8091 )
...
**Description:**
For now, we leave every comment as a leading comment. As logic for determining leading vs trailing is quite complex, I'll do it with another PR.
2023-10-10 11:42:20 +00:00
Donny/강동윤
54410047fa
build(deps): Update syn
to v2
( #7557 )
2023-06-21 15:38:46 +00:00
Donny/강동윤
46fb4619ba
feat(testing): Add CARGO_TARGET_DIR
and use it from other crates ( #7552 )
2023-06-21 03:16:33 +00:00
Donny/강동윤
aa82e5fff3
test(plugin/runner): Share target
directory ( #7544 )
...
**Description:**
This will reduce CI time greatly.
2023-06-19 05:49:45 +00:00
OJ Kwon
73929fc43c
feat(plugin/runner): Support shared wasix runtime ( #7504 )
2023-06-08 02:19:07 +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
OJ Kwon
bba1fad35c
feat(plugin): Add versioned wrapper struct ( #7382 )
2023-05-15 03:17:31 +00:00
OJ Kwon
4e278befcf
build(cargo): Update wasmer
to v3.3
( #7352 )
2023-05-05 07:26:38 +00:00
OJ Kwon
efad714983
feat(plugin): Enable validation ( #7250 )
2023-04-12 12:30:38 +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/강동윤
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
Donny/강동윤
12546c853a
build(cargo): Revert rustc upgrade ( #7162 )
...
**Description:**
The `rkyv` bug is not fixed.
2023-03-29 17:48:45 +09: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
Donny/강동윤
45cdfed6c8
chore(ci): FIx CI ( #6861 )
2023-01-27 04:44:58 +00:00
Donny/강동윤
99d48e305e
fix(plugin): Make span_to_source
use dedicated function ( #6853 )
...
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/6852 .
- Closes https://github.com/swc-project/swc/issues/6404 .
2023-01-26 02:09:36 +00:00
Donny/강동윤
d8adc58011
chore(ci): Fix benchmark action ( #6582 )
2022-12-06 12:24:55 +00:00
Donny/강동윤
fa8f7b00fc
feat(css/plugin): Support Wasm plugin ( #6568 )
2022-12-02 12:45:17 +00:00
Donny/강동윤
8cdc28cdfa
feat(css/plugin): Prepare Wasm plugins ( #6567 )
2022-12-02 10:14:46 +00:00
OJ Kwon
7a1c2a1e2c
refactor(es/plugins): Simplify read_result_*
( #6426 )
2022-11-13 23:17:41 +00:00
Donny/강동윤
10fb645552
chore(ci): Merge CI scripts ( #5999 )
...
**Description:**
This PR merges CI scripts, and make integration tests use patched crates.
**Related issue:**
- Closes https://github.com/swc-project/swc/issues/5540 .
2022-09-30 16:57:15 +09:00
Donny/강동윤
8b31b65059
fix(es/codegen): Improve performance of debug build ( #6003 )
2022-09-30 16:12:56 +09:00
OJ Kwon
3204ac3e0c
build(cargo): Use workspace deps for internal pkg ( #6001 )
2022-09-30 15:48:23 +09:00
OJ Kwon
af64217f19
build(cargo): Introduce workspace deps ( #5997 )
2022-09-30 13:43:32 +09:00
Donny/강동윤
3c3529cb84
build(rustc): Update rustc ( #5943 )
...
**Description:**
This PR updates rustc, and fix some performance bugs of `swc_common`.
2022-09-24 03:33:47 +00:00
Donny/강동윤
20d071bdc7
test(es/plugin): Add a noop plugin ( #5892 )
...
**Description:**
The plugin is used for benchmark and verification of rkyv.
2022-09-18 09:54:06 +00:00
Donny/강동윤
2bbc9bd73b
refactor(es/plugin): Fix lints ( #5801 )
2022-09-10 12:50:54 +09:00
OJ Kwon
6f19f8902f
refactor(swc_core): enable bytechecked flag ( #5792 )
...
**Description:**
Another update to enable bytecheck rkyv feature flag.
Our dep tree is quite tangled with implicit enable (plugin -> rkyv). PR tries to detach some of it while trying to preserve existing behavior as much as it can.
2022-09-09 08:05:51 +00:00
OJ Kwon
975cbfe0d9
refactor(swc_core): Use namespace ecma
( #5713 )
2022-09-02 10:24:27 +09:00
Donny/강동윤
83fec33359
feat(es/generator): Use new generator implementation ( #5627 )
2022-08-25 16:10:47 +00:00
Donny/강동윤
927ae7e8d3
fix(es/compat): Revert generator reimplementation ( #5624 )
2022-08-25 17:58:37 +09:00
Donny/강동윤
2aa009018f
feat(es/generator): Replace generator implementation with one from tsc ( #5173 )
2022-08-25 04:50:00 +00:00
OJ Kwon
a3e855f720
feat(es/plugin): Provide swc_core
diagnostic from plugin ( #5591 )
2022-08-22 23:48:50 +00:00
OJ Kwon
4a9b1dde1a
fix(es/plugin/runner): Revert wasmer@3 ( #5521 )
2022-08-17 05:18:56 +00:00
OJ Kwon
92f006c9a0
feat(es/plugin): Update wasmer
to 3 ( #5456 )
2022-08-16 16:12:37 +09:00
OJ Kwon
ef1f259a93
fix(swc_core): Revert crate version metadata patch ( #5501 )
2022-08-15 14:06:34 +00:00
OJ Kwon
808e68b4b1
feat(swc_core): Provide build-time metadata diagnostics ( #5494 )
2022-08-15 09:41:14 +00:00
OJ Kwon
83417b6f75
refactor(bindings): Use published swc_core
as interface ( #5482 )
2022-08-14 04:39:27 +00:00
OJ Kwon
9d04f24c26
feat(node): Use published version of swc_core
for node binding ( #5481 )
2022-08-14 01:15:56 +00:00
OJ Kwon
d36e48efbf
build(plugin): Downgrade rkyv
( #5459 )
2022-08-12 14:04:05 +00:00
OJ Kwon
072eb13bf1
build(es): Bump up packages ( #5451 )
2022-08-11 23:58:00 +00:00
OJ Kwon
e25b37d579
build(atoms): Bump swc_atoms
( #5442 )
2022-08-11 18:52:44 +09:00
OJ Kwon
001607f341
feat(plugin): Add some tracing for plugin host ( #5438 )
2022-08-11 02:01:58 +00:00
OJ Kwon
6a36a8d982
fix(plugin): Disable remaining bytecheck
( #5437 )
2022-08-11 01:23:00 +00:00
OJ Kwon
8ca736f8ee
feat(swc_core): Expose quote!
macros ( #5400 )
2022-08-05 07:37:42 +00:00
OJ Kwon
038a543be9
feat(swc_core): Expand features to support node bindings ( #5387 )
2022-08-05 14:11:40 +09:00
OJ Kwon
8b9dd6f026
feat(swc_core): Expand features and use it from wasm and cli ( #5369 )
2022-08-03 03:38:05 +00:00
OJ Kwon
27b464d90a
feat(swc_core): Introduce package ( #5364 )
2022-08-02 07:25:59 +00:00
OJ Kwon
5a164bd137
feat(plugin): Make metadata api lazy ( #5310 )
2022-07-27 13:16:44 +09:00
Donny/강동윤
037a53d5d1
perf(es/ast): Use Atom
in some places ( #5271 )
2022-07-22 20:09:25 +09:00
OJ Kwon
43eeeb35a5
feat(es/plugin): Pass experimental metadata from host ( #5261 )
2022-07-21 05:34:48 +00:00