[workspace] members = [ "xtask", "crates/swc_allocator", "crates/swc_core", "crates/swc_cli_impl", "crates/dbg-swc", "crates/jsdoc", "crates/binding_macros", "crates/swc_css", "crates/swc_css_lints", "crates/swc_css_prefixer", "crates/swc_ecmascript", "crates/swc_ecma_lints", "crates/swc_ecma_quote", "crates/swc_estree_compat", "crates/swc_html", "crates/swc_plugin", "crates/swc_plugin_macro", "crates/swc_plugin_runner", "crates/swc_plugin_testing", "crates/swc_plugin_proxy", "crates/swc_timer", "crates/swc_xml", "crates/swc_x_optimizer", "crates/swc_transform_common", "crates/swc_typescript", "crates/swc_fast_ts_strip", "tools/generate-code", "tools/swc-releaser", ] resolver = "2" [workspace.package] license = "Apache-2.0" repository = "https://github.com/swc-project/swc.git" [workspace.dependencies] # bytecheck version should be in sync with rkyv version. Do not bump individually. bytecheck = "0.6.10" rkyv = "=0.7.45" Inflector = "0.11.4" ahash = "0.8.8" allocator-api2 = "0.2.18" ansi_term = "0.12.1" anyhow = "1.0.81" arbitrary = "1" arrayvec = "0.7.4" assert_cmd = "2.0.12" assert_fs = "1.0.13" auto_impl = "1.2.0" backtrace = "0.3.61" base64 = "0.21.0" bitflags = "2.5.0" browserslist-rs = "0.16.0" bumpalo = "3.16.0" cargo_metadata = "0.18.1" cfg-if = "1.0.0" changesets = "0.2.2" chrono = "0.4.38" codspeed-criterion-compat = "2.6.0" console_error_panic_hook = "0.1.7" copyless = "0.1.5" crc = "2.1.0" criterion = "0.5.1" crossbeam-queue = "0.3.11" dashmap = "5.5.3" dialoguer = "0.10.2" difference = "2" either = "1.10.0" enumset = "1.1.2" flate2 = "1.0" futures = "0.3" glob = "0.3.0" hashbrown = "0.14.5" hex = "0.4.3" hstr = "0.2.12" indexmap = "2.0.0" is-macro = "0.3.5" js-sys = "0.3.59" jsonc-parser = "0.21.0" lazy_static = "1.4.0" lexical = "6.1.0" lru = "0.10.0" memchr = "2.6.1" miette = "7.2.0" napi = { version = "2.0.0", default-features = false } napi-derive = { version = "2.0.0", default-features = false } new_debug_unreachable = "1.0.6" nom = "7.1.3" ntest = "0.7.2" num-bigint = "0.4.3" num-traits = "0.2.15" num_cpus = "1.13.1" once_cell = "1.19.0" parking_lot = "0.12.1" path-absolutize = "3.0.11" pathdiff = "0.2.1" petgraph = "0.6.0" phf = "0.11.2" pretty_assertions = "1.3" proc-macro2 = "1.0.24" ptr_meta = "0.1.4" quote = "1.0.7" radix_fmt = "1.0.0" rayon = "1.7.0" regex = "1.5.4" relative-path = "1.6.1" reqwest = "0.11.14" rustc-hash = "1.1.0" ryu-js = "1.0.0" scoped-tls = "1.0.1" semver = "1.0.20" serde = "1.0.197" serde-wasm-bindgen = "0.4.5" serde_derive = "1.0.197" serde_json = "1.0.115" sha1 = "0.10.6" sha2 = "0.10.8" siphasher = "0.3.9" smallvec = "1.8.0" smartstring = "1" sourcemap = "9.0.0" st-map = "0.2.0" syn = "2" tempfile = "3.6.0" termcolor = "1.0" thiserror = "1.0.30" tokio = { version = "1", default-features = false } toml = "0.8.2" tracing = "0.1.40" tracing-chrome = "0.5.0" tracing-futures = "0.2.5" tracing-subscriber = "0.3.18" triomphe = "0.1.13" typed-arena = "2.0.1" unicode-id = "0.3" unicode-id-start = "1.2.0" unicode-width = "0.1.4" url = "2.4.0" vergen = { version = "9.0.0", default-features = false } virtual-fs = { version = "0.16.0", default-features = false } walkdir = "2.4.0" wasm-bindgen = "0.2.91" wasm-bindgen-futures = "0.4.41" wasmer = { version = "4.3.7", default-features = false } wasmer-wasix = { version = "0.27.0", default-features = false } [profile.release] lto = true # We use CARGO_PROFILE_RELEASE_LTO for production builds # lto = "fat" # debug = true # opt-level = 'z' [profile.bench] debug = true lto = true # Optimize for iteration [profile.dev.build-override] opt-level = 3 [profile.dev.package."*"] opt-level = 3