Commit Graph

74 Commits

Author SHA1 Message Date
OJ Kwon
a4b14c3806
test(node): Refactor tests () 2022-07-12 05:35:44 +00:00
OJ Kwon
f167198470
feat(plugin/macros): Export new interface for getting plugin schema version () 2022-07-11 01:44:00 +00:00
OJ Kwon
e8214babf5
refactor(plugin): Refactor transform executor () 2022-07-08 06:02:42 +00:00
OJ Kwon
82fbe15a57
feat(plugin): Wrap serialized struct with a version () 2022-07-07 07:46:49 +00:00
OJ Kwon
2ba8b39fa0
refactor(common): Bikeshed plugin apis () 2022-07-06 04:42:00 +00:00
OJ Kwon
f06c862a9f feat(plugin): Support lookup_char_pos of SourceMap () 2022-04-19 14:26:28 +09:00
OJ Kwon
536a190dc9
feat(plugin): Implement PoC of comments api () 2022-03-31 08:45:08 +00:00
OJ Kwon
dab2002a2e
refactor(plugin/runner): Split modules and introduce feature flags () 2022-03-15 22:45:40 +00:00
Donny/강동윤
3d944656bf
refactor(es): Make compilation faster () 2022-02-26 06:41:14 +00:00
OJ Kwon
05aecf507e
fix(plugin): Fix caching of wasm modulee () 2022-02-18 05:50:51 +00:00
OJ Kwon
a96217feaa
feat(plugin): Add PluginContext () 2022-02-15 08:03:17 +00:00
Donny/강동윤
9b76783281
refactor(common): Cleanup & rustfmt ()
swc_common:
 - Merge identical source codes.

swc_css_parser:
 - Deny `clippy::all`.
 - Fix lints.
2022-02-09 06:33:32 +00:00
OJ Kwon
a8debc17f6
feat(plugin): Pass host context to plugins for diagnostics emission () 2022-01-25 08:13:39 +00:00
OJ Kwon
438649818f
refactor(plugin): Remove multivalue polyfill () 2022-01-24 15:13:30 +09:00
OJ Kwon
a4c497464d
feat(plugin/runnner): Support wasm32-wasi targets () 2022-01-15 04:40:00 +00:00
OJ Kwon
432d5d3fb7
feat(plugin/macro): Add safe API for plugins based on a proc-macro () 2022-01-12 09:32:52 +00:00
OJ Kwon
a2f2b5ac89
feat(plugin): Don't serialize/deserialize needlessly ()
swc_common:
 - Add `Serialized`.

swc_plugin_runner:
 - Accept `Serialized` instead of `Program`.
 - Pass `Serialized` from previous plugin instead of deserializing it.
2022-01-11 10:11:04 +00:00
Austaras
f58b50bea7
refactor(es/ast): Change types of member-like expressions ()
swc_ecma_ast:
 - Split `MemberExpr` into `MemberExpr` and `SuperPropExpr`.
 - Use `Box<Expr>` for `MemberExpr.obj`.
 - Use ad-hoc type for `MemberExpr.prop`.
 - Use ad-hoc type for `SuperPropExpr.prop`.
 - Use `Callee` instead of  `ExprOrSpread` for `CallExpr`.
 - Simplify types for meta property expressions.
2022-01-10 13:54:42 +00:00
OJ Kwon
7e7421ea52
feat(plugin): Perform actual transforms in plugins () 2022-01-10 21:34:16 +09:00
OJ Kwon
c9ded9b720
feat(plugin): Allow multi-value for the plugin signature () 2022-01-09 15:02:56 +09:00
OJ Kwon
92de2c7884
feat(plugin): Pass serialized ast to a wasm file ()
swc_common:
 - Use correct cargo feature for plugin apis.

swc_plugin:
 - Add hidden functions required for memory operations from host.

swc_plugin_runner:
 - Pass serialized AST to a wasm file.
2022-01-07 15:13:46 +09:00
OJ Kwon
b61c49fe39
refactor(plugin/runner): Avoid redundant filesystem reads () 2022-01-04 07:10:39 +00:00
OJ Kwon
fc4c6708f2
refactor(plugin): Add a loader for wasm-based plugin system () 2022-01-03 19:03:01 +00:00
Donny/강동윤
91ef3cc16e
feat(plugin): Enable plugin support under experimental flag ()
swc_plugin_runner:
 - Add plugin resolver.
 - Implement cache for resolver.
 - Add some integration tests.

swc:
 - Add a cargo feature named `plugin`.
 - Add an experimental option for plugins.

node:
 - Enable `plugin`.
 - Add some integration tests.
2021-11-28 17:02:14 +09:00