swc/crates/swc_common/Cargo.toml
2023-03-08 02:51:08 +00:00

91 lines
3.1 KiB
TOML

[package]
authors = ["강동윤 <kdy1997.dev@gmail.com>"]
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.29.35"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[lib]
bench = false
[features]
__plugin = []
__plugin_mode = []
__plugin_rt = []
concurrent = ["parking_lot"]
debug = []
default = []
diagnostic-serde = []
perf = ["parking_lot"]
plugin-base = ["__plugin", "anyhow", "rkyv-impl", "diagnostic-serde"]
plugin-mode = ["__plugin_mode", "plugin-base"]
plugin-rt = ["__plugin_rt", "plugin-base"]
plugin-bytecheck-base = [
"__plugin",
"anyhow",
"rkyv-bytecheck-impl",
"diagnostic-serde",
]
plugin-bytecheck-mode = ["__plugin_mode", "plugin-bytecheck-base"]
plugin-bytecheck-rt = ["__plugin_rt", "plugin-bytecheck-base"]
plugin_transform_schema_v1 = []
plugin_transform_schema_vtest = []
tty-emitter = ["atty", "termcolor"]
__rkyv = []
# Enably rkyv serialization with stable version of rkyv.
rkyv-impl = ["__rkyv", "rkyv", "swc_atoms/rkyv-impl"]
# Enable rkyv serialization with updated version of rkyv, along with bytecheck.
rkyv-bytecheck-impl = ["__rkyv", "rkyv-latest", "swc_atoms/rkyv-bytecheck-impl"]
[dependencies]
ahash = "0.7.4"
anyhow = { version = "1.0.45", optional = true }
arbitrary = { version = "1", optional = true, features = ["derive"] }
ast_node = { version = "0.8.6", path = "../ast_node" }
atty = { version = "0.2", optional = true }
better_scoped_tls = { version = "0.1.0", path = "../better_scoped_tls" }
bytecheck = { version = "0.6.9", optional = true }
cfg-if = "1.0.0"
either = "1.5"
from_variant = { version = "0.1.3", path = "../from_variant" }
new_debug_unreachable = "1.0.4"
num-bigint = "0.4"
once_cell = "1.10.0"
parking_lot = { version = "0.12.0", optional = true }
rkyv = { version = "=0.7.37", optional = true }
# This is to avoid cargo version selection conflict between rkyv=0.7.37 and other versions, as it is strictly pinned
# cannot be merged.
rkyv-latest = { package = "rkyv-test", version = "=0.7.38-test.2", optional = true }
rustc-hash = "1.1.0"
serde = { version = "1.0.119", features = ["derive"] }
siphasher = "0.3.9"
sourcemap = { version = "6", optional = true }
string_cache = "0.8.7"
swc_atoms = { version = "0.4.39", path = "../swc_atoms" }
swc_eq_ignore_macros = { version = "0.1.1", path = "../swc_eq_ignore_macros" }
swc_visit = { version = "0.5.4", path = "../swc_visit" }
termcolor = { version = "1.0", optional = true }
tracing = "0.1.32"
unicode-width = "0.1.4"
url = "2.2.2"
[dev-dependencies]
criterion = "0.3"
rayon = "1"
serde_json = "1"
[[bench]]
harness = false
name = "serde"