swc/Cargo.toml
2021-11-09 15:18:11 +09:00

114 lines
3.2 KiB
TOML

[workspace]
members = [
"css",
"css/stylis",
"ecmascript",
"ecmascript/babel/compat",
"ecmascript/jsdoc",
"node/binding",
"plugin",
"plugin/runner",
"plugin/testing",
"wasm",
]
[package]
authors = ["강동윤 <kdy1997.dev@gmail.com>"]
description = "Speedy web compiler"
documentation = "https://rustdoc.swc.rs/swc/"
edition = "2018"
include = ["Cargo.toml", "src/**/*.rs"]
license = "Apache-2.0/MIT"
name = "swc"
repository = "https://github.com/swc-project/swc.git"
version = "0.83.1"
[lib]
name = "swc"
[features]
default = ["es3"]
# You can disable this feautre to reduce binary size.
es3 = []
# See https://github.com/swc-project/swc/issues/1108
#
# If this option is enabled, es2015 transforms are enabled if target is es2015.
# If this option is disabled, es2015 transforms are disabled if target is es2015.
#
# This feature will be removed on v2 of node bindings.
wrong-target = []
concurrent = [
"swc_ecma_utils/concurrent",
"swc_ecma_transforms_base/concurrent",
"swc_ecma_transforms_compat/concurrent",
"swc_ecma_transforms_optimization/concurrent",
]
[dependencies]
ahash = "0.7.4"
anyhow = "1"
base64 = "0.13.0"
dashmap = "4.0.2"
either = "1"
indexmap = {version = "1", features = ["serde"]}
lru = "0.6.1"
once_cell = "1"
pathdiff = "0.2.0"
regex = "1"
serde = {version = "1", features = ["derive"]}
serde_json = "1"
sourcemap = "6"
swc_atoms = {version = "0.2", path = "./atoms"}
swc_common = {version = "0.14.0", path = "./common", features = ["sourcemap", "concurrent"]}
swc_ecma_ast = {version = "0.57.0", path = "./ecmascript/ast"}
swc_ecma_codegen = {version = "0.79.0", path = "./ecmascript/codegen"}
swc_ecma_ext_transforms = {version = "0.37.0", path = "./ecmascript/ext-transforms"}
swc_ecma_loader = {version = "0.24.0", path = "./ecmascript/loader", features = ["lru", "node", "tsc"]}
swc_ecma_minifier = {version = "0.49.0", path = "./ecmascript/minifier"}
swc_ecma_parser = {version = "0.77.0", path = "./ecmascript/parser"}
swc_ecma_preset_env = {version = "0.64.0", path = "./ecmascript/preset-env"}
swc_ecma_transforms = {version = "0.93.0", path = "./ecmascript/transforms", features = [
"compat",
"module",
"optimization",
"proposal",
"react",
"typescript",
]}
swc_ecma_transforms_base = {version = "0.43.0", path = "./ecmascript/transforms/base"}
swc_ecma_transforms_compat = {version = "0.50.0", path = "./ecmascript/transforms/compat"}
swc_ecma_transforms_optimization = {version = "0.63.0", path = "./ecmascript/transforms/optimization"}
swc_ecma_utils = {version = "0.51.0", path = "./ecmascript/utils"}
swc_ecma_visit = {version = "0.43.0", path = "./ecmascript/visit"}
swc_ecmascript = {version = "0.85.0", path = "./ecmascript"}
swc_visit = {version = "0.2.3", path = "./visit"}
tracing = "0.1.28"
[dev-dependencies]
rayon = "1"
swc_node_base = {version = "0.5.0", path = "./node/base"}
testing = {version = "0.15.0", path = "./testing"}
walkdir = "2"
[[example]]
name = "usage"
[profile.release]
codegen-units = 1
lto = "fat"
# debug = true
# opt-level = 'z'
[profile.bench]
codegen-units = 1
debug = true
# Without this, printing diff consumes more than a minute.
[profile.dev.package.pretty_assertions]
opt-level = 3
[profile.test.package.pretty_assertions]
opt-level = 3