swc/crates/swc_plugin_runner/Cargo.toml
2024-06-29 09:26:51 +00:00

94 lines
3.2 KiB
TOML

[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 = "0.110.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"]
# Supports a cache allow to store compiled bytecode into filesystem location.
# This feature implies in-memory cache support. This is not supported on wasm32 target.
filesystem_cache = ["wasmer-cache"]
plugin_transform_schema_v1 = ["swc_common/plugin_transform_schema_v1"]
plugin_transform_schema_vtest = ["swc_common/plugin_transform_schema_vtest"]
# Enable ECMASCript support
ecma = ["swc_ecma_ast/rkyv-impl"]
# Enable CSS support
css = ["swc_css_ast/rkyv-impl"]
__rkyv = []
rkyv-impl = ["__rkyv", "swc_common/plugin-rt", "swc_plugin_proxy/plugin-rt"]
[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 = "0.34.0", path = "../swc_common", features = [
"concurrent",
] }
swc_css_ast = { version = "0.141.0", path = "../swc_css_ast", optional = true }
swc_ecma_ast = { version = "0.115.0", path = "../swc_ecma_ast", optional = true }
swc_plugin_proxy = { version = "0.44.0", path = "../swc_plugin_proxy" }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
wasmer-cache = { version = "4.0.0", optional = true }
wasmer-compiler-cranelift = { version = "4.0.0", default-features = false }
[dev-dependencies]
criterion = { workspace = true }
swc_atoms = { version = "0.6.5", path = '../swc_atoms' }
swc_css_ast = { version = "0.141.0", path = "../swc_css_ast", features = [
"rkyv-impl",
] }
swc_css_parser = { version = "0.151.0", path = "../swc_css_parser" }
swc_ecma_ast = { version = "0.115.0", path = "../swc_ecma_ast", features = [
"rkyv-impl",
] }
swc_ecma_loader = { version = "0.46.0", path = "../swc_ecma_loader" }
swc_ecma_parser = { version = "0.147.0", path = "../swc_ecma_parser" }
swc_ecma_visit = { version = "0.101.0", path = "../swc_ecma_visit" }
swc_malloc = { version = "0.5.10", path = "../swc_malloc" }
testing = { version = "0.36.0", path = "../testing" }
tokio = { workspace = true, features = ["rt"] }
[[bench]]
harness = false
name = "ecma_invoke"