gb/Cargo.toml

131 lines
3.9 KiB
TOML
Raw Normal View History

[workspace]
resolver = "2"
members = [
"botapp",
"botdevice",
"botlib",
"botserver",
"bottest",
"botui",
]
[workspace.lints.rust]
unused_imports = "warn"
unused_variables = "warn"
unused_mut = "warn"
unsafe_code = "deny"
missing_docs = "allow"
[workspace.lints.clippy]
all = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
nursery = { level = "warn", priority = -1 }
cargo = { level = "warn", priority = -1 }
panic = "warn"
todo = "warn"
# Disabled: has false positives for functions with mut self, heap types (Vec, String)
missing_const_for_fn = "allow"
# Disabled: Axum handlers and framework requirements need owned types
needless_pass_by_value = "allow"
# Disabled: transitive dependencies we cannot control
multiple_crate_versions = "allow"
# Disabled: when async traits require non-Send futures
future_not_send = "allow"
# Disabled: intentional similar names for related concepts (e.g. title_bg/title_fg)
similar_names = "allow"
# Disabled: doc comments removed per zero-comments policy
missing_errors_doc = "allow"
missing_panics_doc = "allow"
# Disabled: not all public functions need #[must_use]
must_use_candidate = "allow"
# Disabled: functions can be long if well-structured
too_many_lines = "allow"
# Disabled: complex functions are sometimes necessary
cognitive_complexity = "allow"
# Disabled: many arguments needed for complex constructors
too_many_arguments = "allow"
# Disabled: module organization is intentional
module_name_repetitions = "allow"
# Disabled: struct organization is intentional
struct_excessive_bools = "allow"
# Disabled: explicit returns sometimes clearer
needless_return = "allow"
# Disabled: if-let vs match is stylistic
single_match_else = "allow"
# Disabled: option/result chains are readable
option_if_let_else = "allow"
# Disabled: explicit ref patterns sometimes clearer
redundant_closure_for_method_calls = "allow"
# Disabled: cast precision loss acceptable in controlled cases
cast_possible_truncation = "allow"
cast_sign_loss = "allow"
cast_precision_loss = "allow"
cast_possible_wrap = "allow"
# Disabled: wildcard imports used intentionally
wildcard_imports = "allow"
# Disabled: some patterns require manual implementations
derivable_impls = "allow"
# Disabled: inline format args style preference
uninlined_format_args = "allow"
# Disabled: default trait not always appropriate
default_trait_access = "allow"
# Disabled: redundant else can be clearer
redundant_else = "allow"
# Disabled: unit patterns in matches intentional
ignored_unit_patterns = "allow"
# Disabled: manual string operations sometimes clearer
manual_string_new = "allow"
# Disabled: items after statements acceptable
items_after_statements = "allow"
# Disabled: clone on copy types sometimes intentional
clone_on_copy = "allow"
# Disabled: map_unwrap_or style preference
map_unwrap_or = "allow"
# Disabled: unnecessary wraps sometimes for API consistency
unnecessary_wraps = "allow"
# Disabled: used underscore binding acceptable
used_underscore_binding = "allow"
# Disabled: implicit hasher acceptable
implicit_hasher = "allow"
# Disabled: return self not always appropriate
return_self_not_must_use = "allow"
# Disabled: ref binding style preference
ref_binding_to_reference = "allow"
# Disabled: needless borrow sometimes clearer
needless_borrow = "allow"
# Disabled: explicit iter acceptable
explicit_iter_loop = "allow"
# Disabled: explicit into iter acceptable
explicit_into_iter_loop = "allow"
# Disabled: false positives with async mutexes that must be held across await points
significant_drop_tightening = "allow"
[profile.release]
lto = true
opt-level = "z"
strip = true
panic = "abort"
codegen-units = 1
overflow-checks = true
[profile.ci]
inherits = "release"
lto = false
codegen-units = 16
debug = false
[profile.low-memory]
inherits = "release"
lto = "thin"
codegen-units = 16
debug = false
incremental = false
opt-level = "s"
[profile.dev]
debug = 0
incremental = true
codegen-units = 256
opt-level = 0