threads = 0
exclude_paths = [
"target",
".git",
"node_modules",
"benches/**",
"examples/**",
"build.rs",
]
ignore_findings = []
min_severity = "warning"
[thresholds.arch]
god_module_loc = 2000
god_module_items = 60
public_api_ratio = 0.7
feature_concentration = 15
hidden_global_state = 3
[thresholds.design]
large_trait_methods = 15
excessive_generics = 5
deep_trait_bounds = 4
wide_hierarchy = 26
fat_impl_methods = 25
god_struct_fields = 20
primitive_obsession_fields = 4
data_clumps_args = 3
data_clumps_occurrences = 8
stringly_typed_fields = 3
large_error_enum_variants = 26
[thresholds.impl]
long_function_loc = 100
long_closure_loc = 25
deep_closure_nesting = 3
cyclomatic_complexity = 31
too_many_arguments = 6
deep_match_nesting = 3
deep_if_else = 6
excessive_unwrap = 3
large_enum_variants = 26
long_method_chain = 4
lifetime_explosion = 4
unsafe_block_overuse = 5
deeply_nested_type = 3
interior_mutability_abuse = 5
[thresholds.concurrency]
large_future_loc = 100
arc_mutex_overuse = 3
[thresholds.unsafe]
unsafe_without_comment = true
[policy]
skip_tests = true
test_path_markers = [
"tests",
"test",
"tests.rs",
"_tests.rs",
"fuzz",
"fuzz_targets",
]
skip_data_carrier_structs = true
skip_template_structs = true
data_carrier_struct_suffixes = [
"Activity",
"Command",
"Config",
"ConfigFile",
"Descriptor",
"Details",
"Dto",
"DTO",
"Entry",
"Event",
"Failure",
"Finding",
"FormData",
"Grant",
"Hit",
"Inspection",
"Item",
"Link",
"Metrics",
"Notification",
"Options",
"Outcome",
"Overview",
"Page",
"Query",
"Report",
"Request",
"Response",
"Result",
"Settings",
"SettingsFile",
"Session",
"Snapshot",
"Stats",
"Summary",
"Template",
"Variant",
"View",
"Vulnerability",
]