[package]
authors = ["강동윤 <kdy1997.dev@gmail.com>"]
description = "Runner for swc plugins. This crate is INTERNAL crate and used by swc itself."
documentation = "https://rustdoc.swc.rs/swc_plugin_runner/"
edition = "2021"
license = "Apache-2.0"
name = "swc_plugin_runner"
repository = "https://github.com/swc-project/swc.git"
version = "4.0.0"
[lib]
bench = false
doctest = false
[features]
default = ["filesystem_cache", "plugin_transform_host_native"]
plugin_transform_host_js = [
"wasmer/js-default",
"wasmer-wasix/js-default",
"wasmer-compiler-cranelift/wasm",
]
plugin_transform_host_native = [
"wasmer/default",
"wasmer-wasix/sys",
"wasmer-wasix/logging",
"wasmer-wasix/host-fs",
"wasmer-wasix/sys-poll",
"wasmer-wasix/sys-thread",
"wasmer-wasix/host-threads",
"wasmer-compiler-cranelift/default",
]
plugin_transform_host_native_shared_runtime = ["tokio"]
filesystem_cache = ["wasmer-cache"]
plugin_transform_schema_v1 = ["swc_common/plugin_transform_schema_v1"]
plugin_transform_schema_vtest = ["swc_common/plugin_transform_schema_vtest"]
ecma = ["swc_ecma_ast/rkyv-impl"]
css = ["swc_css_ast/rkyv-impl"]
__rkyv = []
rkyv-impl = ["__rkyv", "swc_common/plugin-rt", "swc_plugin_proxy/plugin-rt"]
[build-dependencies]
vergen = { workspace = true, features = ["build", "cargo"] }
[dependencies]
anyhow = { workspace = true }
enumset = { workspace = true }
futures = { workspace = true }
once_cell = { workspace = true }
parking_lot = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
tokio = { workspace = true, optional = true }
tracing = { workspace = true }
virtual-fs = { workspace = true }
wasmer = { workspace = true }
wasmer-wasix = { workspace = true }
swc_common = { version = "4.0.0", path = "../swc_common", features = [
"concurrent",
] }
swc_css_ast = { version = "4.0.0", path = "../swc_css_ast", optional = true }
swc_ecma_ast = { version = "4.0.0", path = "../swc_ecma_ast", optional = true }
swc_plugin_proxy = { version = "4.0.0", path = "../swc_plugin_proxy" }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
wasmer-cache = { version = "4.3.7", optional = true }
wasmer-compiler-cranelift = { version = "4.3.7", default-features = false }
[dev-dependencies]
codspeed-criterion-compat = { workspace = true }
criterion = { workspace = true }
swc_atoms = { version = "2.0.0", path = '../swc_atoms' }
swc_css_ast = { version = "4.0.0", path = "../swc_css_ast", features = [
"rkyv-impl",
] }
swc_css_parser = { version = "4.0.0", path = "../swc_css_parser" }
swc_ecma_ast = { version = "4.0.0", path = "../swc_ecma_ast", features = [
"rkyv-impl",
] }
swc_ecma_loader = { version = "4.0.0", path = "../swc_ecma_loader" }
swc_ecma_parser = { version = "5.0.0", path = "../swc_ecma_parser" }
swc_ecma_visit = { version = "4.0.0", path = "../swc_ecma_visit" }
swc_malloc = { version = "1.0.0", path = "../swc_malloc" }
testing = { version = "4.0.0", path = "../testing" }
tokio = { workspace = true, features = ["rt"] }
[[bench]]
harness = false
name = "ecma_invoke"