[package] authors = ["강동윤 "] 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.77.4" [lib] bench = false [features] default = ["filesystem_cache"] # Supports a cache allow to store compiled bytecode into filesystem location. # This feature implies in-memory cache enabled always. filesystem_cache = ["wasmer-cache"] # Supports a cache allow to store wasm module in-memory. This avoids recompilation # to the same module in a single procress lifecycle. memory_cache = [] plugin_transform_schema_v1 = ["swc_common/plugin_transform_schema_v1"] plugin_transform_schema_vtest = ["swc_common/plugin_transform_schema_vtest"] __rkyv = [] rkyv-bytecheck-impl = [ "__rkyv", "swc_common/plugin-bytecheck-rt", "swc_plugin_proxy/plugin-bytecheck-rt", "swc_ecma_ast/rkyv-bytecheck-impl", ] rkyv-impl = [ "__rkyv", "swc_common/plugin-rt", "swc_plugin_proxy/plugin-rt", "swc_ecma_ast/rkyv-impl", ] [dependencies] anyhow = "1.0.42" once_cell = "1.10.0" parking_lot = "0.12.0" serde = { workspace = true, features = ["derive"] } serde_json = "1.0.64" swc_common = { version = "0.29.3", path = "../swc_common", features = [ "concurrent", ] } swc_ecma_ast = { version = "0.94.3", path = "../swc_ecma_ast" } swc_plugin_proxy = { version = "0.22.3", path = "../swc_plugin_proxy" } tracing = "0.1.32" wasmer = { version = "2.3.0", default-features = false } wasmer-wasi = { version = "2.3.0", default-features = false } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] wasmer-cache = { version = "2.3.0", optional = true } [dev-dependencies] criterion = "0.3" swc_atoms = { version = "0.4.18", path = '../swc_atoms' } swc_ecma_loader = { version = "0.41.3", path = "../swc_ecma_loader" } swc_ecma_parser = { version = "0.122.4", path = "../swc_ecma_parser" } swc_ecma_visit = { version = "0.80.3", path = "../swc_ecma_visit" } swc_node_base = { path = "../swc_node_base" } testing = { version = "0.31.3", path = "../testing" } # This allows we can run non-wasm32 target build command while some pkg select features for wasmer/js omits its transitive deps wasmer = "2.3.0" wasmer-wasi = "2.3.0" [[bench]] harness = false name = "invoke"