[package]
edition = "2024"
name = "rolldown_common"
version = "1.0.0"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "This crate is mostly for sharing code between rolldwon crates."
homepage = "https://rolldown.rs/"
readme = false
license = "MIT"
repository = "https://github.com/rolldown/rolldown"
[features]
default = ["serde"]
deserialize_bundler_options = [
"dep:schemars",
"dep:serde",
]
serde = [
"dep:serde",
"oxc_index/serde",
]
[lib]
name = "rolldown_common"
path = "src/lib.rs"
doctest = false
[dependencies.anyhow]
version = "1.0.98"
[dependencies.arcstr]
version = "1.2.0"
default-features = false
[dependencies.bitflags]
version = "2.9.1"
[dependencies.dashmap]
version = "6.2.1"
[dependencies.derive_more]
version = "2.0.1"
features = ["debug"]
[dependencies.fast-glob]
version = "1.0.0"
[dependencies.itertools]
version = "0.14.0"
[dependencies.num-bigint]
version = "0.4.6"
[dependencies.oxc]
version = "0.132.0"
features = [
"ast_visit",
"transformer",
"minifier",
"mangler",
"semantic",
"codegen",
"serialize",
"isolated_declarations",
"regular_expression",
"cfg",
]
[dependencies.oxc_ecmascript]
version = "0.132.0"
[dependencies.oxc_index]
version = "4"
features = [
"rayon",
"serde",
]
[dependencies.oxc_resolver]
version = "11.19.1"
features = ["yarn_pnp"]
[dependencies.oxc_str]
version = "0.132.0"
[dependencies.rolldown_ecmascript]
version = "1.0.0"
[dependencies.rolldown_error]
version = "1.0.0"
[dependencies.rolldown_sourcemap]
version = "1.0.0"
[dependencies.rolldown_std_utils]
version = "1.0.0"
[dependencies.rolldown_utils]
version = "1.0.0"
[dependencies.rustc-hash]
version = "2.1.1"
[dependencies.schemars]
version = "1.0.0"
optional = true
[dependencies.serde]
version = "1.0.219"
features = [
"derive",
"derive",
]
optional = true
[dependencies.serde_json]
version = "1.0.140"
features = ["arbitrary_precision"]
[dependencies.simdutf8]
version = "0.1.5"
[dependencies.string_wizard]
version = "1.0.0"
features = ["serde"]
[dependencies.sugar_path]
version = "2.0.1"
features = ["cached_current_dir"]
[dependencies.tokio]
version = "1.45.0"
default-features = false
[dev-dependencies.insta]
version = "1.43.1"
[lints.clippy]
allow_attributes = "deny"
branches_sharing_code = "allow"
case_sensitive_file_extension_comparisons = "allow"
clone_on_ref_ptr = "deny"
cognitive_complexity = "allow"
collapsible_if = "allow"
dbg_macro = "deny"
doc_markdown = "allow"
empty_drop = "deny"
equatable_if_let = "allow"
exit = "deny"
fallible_impl_from = "allow"
filetype_is_file = "deny"
get_unwrap = "deny"
impl_trait_in_params = "allow"
iter_with_drain = "allow"
literal_string_with_formatting_args = "allow"
map_unwrap_or = "allow"
missing_const_for_fn = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_inception = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
needless_collect = "allow"
needless_for_each = "allow"
new_without_default = "allow"
non_send_fields_in_send_ty = "allow"
option_if_let_else = "allow"
or_fun_call = "allow"
print_stderr = "deny"
print_stdout = "deny"
rc_buffer = "deny"
rc_mutex = "deny"
rest_pat_in_fully_bound_structs = "deny"
significant_drop_tightening = "allow"
similar_names = "allow"
single_match_else = "allow"
single_option_map = "allow"
string_lit_as_bytes = "allow"
struct_field_names = "allow"
todo = "deny"
too_long_first_doc_paragraph = "allow"
trivial_regex = "allow"
trivially_copy_pass_by_ref = "allow"
unimplemented = "deny"
unnecessary_safety_comment = "deny"
unnecessary_struct_initialization = "allow"
unused_self = "allow"
use_self = "allow"
useless_let_if_seq = "allow"
wrong_self_convention = "allow"
zero_sized_map_values = "allow"
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "deny"
priority = -1