[package] authors = ["강동윤 "] description = "Common utilities for the swc project." documentation = "https://rustdoc.swc.rs/swc_common/" edition = "2021" license = "Apache-2.0" name = "swc_common" repository = "https://github.com/swc-project/swc.git" version = "0.37.2" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [lib] bench = false [features] __plugin = [] __plugin_mode = [] __plugin_rt = [] ahash = ["dep:ahash"] concurrent = ["parking_lot"] debug = [] default = [] diagnostic-serde = [] plugin-base = ["__plugin", "anyhow", "rkyv-impl", "diagnostic-serde"] plugin-mode = ["__plugin_mode", "plugin-base"] plugin-rt = ["__plugin_rt", "plugin-base"] plugin_transform_schema_v1 = [] plugin_transform_schema_vtest = [] tty-emitter = ["termcolor"] __rkyv = [] rkyv-impl = ["__rkyv", "rkyv", "swc_atoms/rkyv-impl", "bytecheck"] [dependencies] ahash = { workspace = true, optional = true } anyhow = { workspace = true, optional = true } arbitrary = { workspace = true, features = ["derive"], optional = true } # bytecheck version should be in sync with rkyv version. Do not bump individually. bytecheck = { workspace = true, optional = true } cfg-if = { workspace = true } either = { workspace = true } new_debug_unreachable = { workspace = true } num-bigint = { workspace = true } once_cell = { workspace = true } parking_lot = { workspace = true, optional = true } rkyv = { workspace = true, features = [ "strict", "validation", ], optional = true } rustc-hash = { workspace = true } serde = { workspace = true, features = ["derive"] } siphasher = { workspace = true } sourcemap = { workspace = true, optional = true } termcolor = { workspace = true, optional = true } tracing = { workspace = true } unicode-width = { workspace = true } url = { workspace = true } ast_node = { version = "0.9.8", path = "../ast_node" } better_scoped_tls = { version = "0.1.1", path = "../better_scoped_tls" } from_variant = { version = "0.1.8", path = "../from_variant" } swc_allocator = { version = "0.1.7", path = "../swc_allocator", default-features = false } swc_atoms = { version = "0.6.5", path = "../swc_atoms" } swc_eq_ignore_macros = { version = "0.1.3", path = "../swc_eq_ignore_macros" } swc_visit = { version = "0.6.0", path = "../swc_visit" } [dev-dependencies] codspeed-criterion-compat = { workspace = true } criterion = { workspace = true } rayon = { workspace = true } serde_json = { workspace = true } [[bench]] harness = false name = "serde"