# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.89"
name = "debtmap"
version = "0.16.2"
authors = ["Glen Baker <iepathos@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Code complexity and technical debt analyzer"
readme = "README.md"
keywords = [
    "code-analysis",
    "technical-debt",
    "complexity",
    "static-analysis",
]
categories = [
    "development-tools",
    "command-line-utilities",
]
license = "MIT"
repository = "https://github.com/iepathos/debtmap"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]
targets = [
    "x86_64-unknown-linux-gnu",
    "x86_64-apple-darwin",
    "x86_64-pc-windows-msvc",
]

[package.metadata.llvm-cov]
ignore-filename-regex = [
    "tests/.*",
    '.*_test\.rs',
    '.*_tests\.rs',
    ".*/tests/.*",
    ".*/test/.*",
    "benches/.*",
    ".*/bench/.*",
    ".*/benchmark/.*",
]

[lib]
name = "debtmap"
path = "src/lib.rs"

[[bin]]
name = "debtmap"
path = "src/main.rs"

[[example]]
name = "effect_pipeline"
path = "examples/effect_pipeline.rs"

[[example]]
name = "enhanced_complexity_demo"
path = "examples/enhanced_complexity_demo.rs"

[[example]]
name = "extreme_debt_example"
path = "examples/extreme_debt_example.rs"

[[example]]
name = "false_positive_reduction_demo"
path = "examples/false_positive_reduction_demo.rs"

[[example]]
name = "pipeline_demo"
path = "examples/pipeline_demo.rs"

[[example]]
name = "simple_calls"
path = "examples/simple_calls.rs"

[[test]]
name = "analyzer_tests"
path = "tests/analyzer_tests.rs"

[[test]]
name = "anti_pattern_detection_integration"
path = "tests/anti_pattern_detection_integration.rs"

[[test]]
name = "apply_entropy_dampening_tests"
path = "tests/apply_entropy_dampening_tests.rs"

[[test]]
name = "batch_integration"
path = "tests/batch_integration.rs"

[[test]]
name = "boilerplate_integration_test"
path = "tests/boilerplate_integration_test.rs"

[[test]]
name = "boilerplate_performance_test"
path = "tests/boilerplate_performance_test.rs"

[[test]]
name = "bug_documentation_tests"
path = "tests/bug_documentation_tests.rs"

[[test]]
name = "call_graph_async_same_file_test"
path = "tests/call_graph_async_same_file_test.rs"

[[test]]
name = "call_graph_closure_test"
path = "tests/call_graph_closure_test.rs"

[[test]]
name = "call_graph_comprehensive_test"
path = "tests/call_graph_comprehensive_test.rs"

[[test]]
name = "call_graph_cross_file_resolution_test"
path = "tests/call_graph_cross_file_resolution_test.rs"

[[test]]
name = "call_graph_debug_output_test"
path = "tests/call_graph_debug_output_test.rs"

[[test]]
name = "call_graph_disambiguation_test"
path = "tests/call_graph_disambiguation_test.rs"

[[test]]
name = "call_graph_extraction_test"
path = "tests/call_graph_extraction_test.rs"

[[test]]
name = "call_graph_improved_test"
path = "tests/call_graph_improved_test.rs"

[[test]]
name = "call_graph_resolution_test"
path = "tests/call_graph_resolution_test.rs"

[[test]]
name = "call_graph_stress_test"
path = "tests/call_graph_stress_test.rs"

[[test]]
name = "call_graph_struct_literal_test"
path = "tests/call_graph_struct_literal_test.rs"

[[test]]
name = "clean_dispatcher_output_test"
path = "tests/clean_dispatcher_output_test.rs"

[[test]]
name = "cleanup_test"
path = "tests/cleanup_test.rs"

[[test]]
name = "cli_output_format_integration_test"
path = "tests/cli_output_format_integration_test.rs"

[[test]]
name = "closure_purity_test"
path = "tests/closure_purity_test.rs"

[[test]]
name = "clustering_integration"
path = "tests/clustering_integration.rs"

[[test]]
name = "cognitive_complexity_tests"
path = "tests/cognitive_complexity_tests.rs"

[[test]]
name = "compare_integration_test"
path = "tests/compare_integration_test.rs"

[[test]]
name = "complexity_comparison_test"
path = "tests/complexity_comparison_test.rs"

[[test]]
name = "complexity_module_tests"
path = "tests/complexity_module_tests.rs"

[[test]]
name = "complexity_pattern_entropy_test"
path = "tests/complexity_pattern_entropy_test.rs"

[[test]]
name = "complexity_tests"
path = "tests/complexity_tests.rs"

[[test]]
name = "context_aware_integration_test"
path = "tests/context_aware_integration_test.rs"

[[test]]
name = "context_aware_test"
path = "tests/context_aware_test.rs"

[[test]]
name = "contextual_risk_integration_test"
path = "tests/contextual_risk_integration_test.rs"

[[test]]
name = "core_ast_tests"
path = "tests/core_ast_tests.rs"

[[test]]
name = "core_display_tests"
path = "tests/core_display_tests.rs"

[[test]]
name = "core_metrics_tests"
path = "tests/core_metrics_tests.rs"

[[test]]
name = "core_monadic_tests"
path = "tests/core_monadic_tests.rs"

[[test]]
name = "core_untested_functions_tests"
path = "tests/core_untested_functions_tests.rs"

[[test]]
name = "coverage_data_optional_test"
path = "tests/coverage_data_optional_test.rs"

[[test]]
name = "coverage_fixes_test"
path = "tests/coverage_fixes_test.rs"

[[test]]
name = "coverage_performance_regression_test"
path = "tests/coverage_performance_regression_test.rs"

[[test]]
name = "coverage_scoring_integration_test"
path = "tests/coverage_scoring_integration_test.rs"

[[test]]
name = "coverage_warning_message_test"
path = "tests/coverage_warning_message_test.rs"

[[test]]
name = "cyclomatic_complexity_tests"
path = "tests/cyclomatic_complexity_tests.rs"

[[test]]
name = "debt_grouping_tests"
path = "tests/debt_grouping_tests.rs"

[[test]]
name = "debt_tests"
path = "tests/debt_tests.rs"

[[test]]
name = "debtitem_deserialization_test"
path = "tests/debtitem_deserialization_test.rs"

[[test]]
name = "debug_trait_analyzer"
path = "tests/debug_trait_analyzer.rs"

[[test]]
name = "demo_library_api_test"
path = "tests/demo_library_api_test.rs"

[[test]]
name = "dependency_and_coupling_tests"
path = "tests/dependency_and_coupling_tests.rs"

[[test]]
name = "dependency_injection_test"
path = "tests/dependency_injection_test.rs"

[[test]]
name = "determinism_regression_test"
path = "tests/determinism_regression_test.rs"

[[test]]
name = "domain_diversity_output_test"
path = "tests/domain_diversity_output_test.rs"

[[test]]
name = "domain_pattern_detection_test"
path = "tests/domain_pattern_detection_test.rs"

[[test]]
name = "entropy_framework_test"
path = "tests/entropy_framework_test.rs"

[[test]]
name = "entropy_integration_tests"
path = "tests/entropy_integration_tests.rs"

[[test]]
name = "entropy_tests"
path = "tests/entropy_tests.rs"

[[test]]
name = "error_swallowing_pipeline_test"
path = "tests/error_swallowing_pipeline_test.rs"

[[test]]
name = "error_swallowing_test"
path = "tests/error_swallowing_test.rs"

[[test]]
name = "evidence_display_integration_test"
path = "tests/evidence_display_integration_test.rs"

[[test]]
name = "external_api_detection_tests"
path = "tests/external_api_detection_tests.rs"

[[test]]
name = "external_api_detector_integration_test"
path = "tests/external_api_detector_integration_test.rs"

[[test]]
name = "extraction_patterns_test"
path = "tests/extraction_patterns_test.rs"

[[test]]
name = "false_positive_reproduction_tests"
path = "tests/false_positive_reproduction_tests.rs"

[[test]]
name = "fast_unit_tests"
path = "tests/fast_unit_tests.rs"

[[test]]
name = "field_access_chain_test"
path = "tests/field_access_chain_test.rs"

[[test]]
name = "file_analysis_progress_test"
path = "tests/file_analysis_progress_test.rs"

[[test]]
name = "file_level_scoring_integration_test"
path = "tests/file_level_scoring_integration_test.rs"

[[test]]
name = "formatter_pattern_consistency_test"
path = "tests/formatter_pattern_consistency_test.rs"

[[test]]
name = "framework_patterns_integration"
path = "tests/framework_patterns_integration.rs"

[[test]]
name = "function_name_matching_integration_test"
path = "tests/function_name_matching_integration_test.rs"

[[test]]
name = "function_return_type_tracking"
path = "tests/function_return_type_tracking.rs"

[[test]]
name = "functional_composition_validation_test"
path = "tests/functional_composition_validation_test.rs"

[[test]]
name = "god_object_config_rs_test"
path = "tests/god_object_config_rs_test.rs"

[[test]]
name = "god_object_detection_test"
path = "tests/god_object_detection_test.rs"

[[test]]
name = "god_object_metrics_test"
path = "tests/god_object_metrics_test.rs"

[[test]]
name = "god_object_type_based_clustering_test"
path = "tests/god_object_type_based_clustering_test.rs"

[[test]]
name = "hidden_type_extraction_integration"
path = "tests/hidden_type_extraction_integration.rs"

[[test]]
name = "integrated_analysis"
path = "tests/integrated_analysis.rs"

[[test]]
name = "integration_false_positive_test"
path = "tests/integration_false_positive_test.rs"

[[test]]
name = "inter_procedural_purity_test"
path = "tests/inter_procedural_purity_test.rs"

[[test]]
name = "io_walker_tests"
path = "tests/io_walker_tests.rs"

[[test]]
name = "json_serialization_test"
path = "tests/json_serialization_test.rs"

[[test]]
name = "language_specific_dead_code_test"
path = "tests/language_specific_dead_code_test.rs"

[[test]]
name = "language_tests"
path = "tests/language_tests.rs"

[[test]]
name = "lcov_coverage_matching_bug_test"
path = "tests/lcov_coverage_matching_bug_test.rs"

[[test]]
name = "lcov_path_mismatch_test"
path = "tests/lcov_path_mismatch_test.rs"

[[test]]
name = "lcov_real_path_issue"
path = "tests/lcov_real_path_issue.rs"

[[test]]
name = "lcov_tests"
path = "tests/lcov_tests.rs"

[[test]]
name = "loc_consistency_test"
path = "tests/loc_consistency_test.rs"

[[test]]
name = "macro_parsing_test"
path = "tests/macro_parsing_test.rs"

[[test]]
name = "mapping_pattern_integration_test"
path = "tests/mapping_pattern_integration_test.rs"

[[test]]
name = "method_call_detection_test"
path = "tests/method_call_detection_test.rs"

[[test]]
name = "method_function_disambiguation_integration_test"
path = "tests/method_function_disambiguation_integration_test.rs"

[[test]]
name = "method_function_disambiguation_test"
path = "tests/method_function_disambiguation_test.rs"

[[test]]
name = "method_new_constructor_disambiguation_test"
path = "tests/method_new_constructor_disambiguation_test.rs"

[[test]]
name = "multi_debt_integration_test"
path = "tests/multi_debt_integration_test.rs"

[[test]]
name = "multi_signal_accuracy_test"
path = "tests/multi_signal_accuracy_test.rs"

[[test]]
name = "multi_signal_integration_test"
path = "tests/multi_signal_integration_test.rs"

[[test]]
name = "nesting_calculation_test"
path = "tests/nesting_calculation_test.rs"

[[test]]
name = "nesting_depth_comprehensive_test"
path = "tests/nesting_depth_comprehensive_test.rs"

[[test]]
name = "orchestration_adjustment_integration_test"
path = "tests/orchestration_adjustment_integration_test.rs"

[[test]]
name = "organization_test"
path = "tests/organization_test.rs"

[[test]]
name = "output_format_tests"
path = "tests/output_format_tests.rs"

[[test]]
name = "output_tests"
path = "tests/output_tests.rs"

[[test]]
name = "output_validation_test"
path = "tests/output_validation_test.rs"

[[test]]
name = "parallel_unified_analysis_test"
path = "tests/parallel_unified_analysis_test.rs"

[[test]]
name = "pattern_adjustments_test"
path = "tests/pattern_adjustments_test.rs"

[[test]]
name = "pattern_detection_integration"
path = "tests/pattern_detection_integration.rs"

[[test]]
name = "progress_display_integration_test"
path = "tests/progress_display_integration_test.rs"

[[test]]
name = "purity_detection_test"
path = "tests/purity_detection_test.rs"

[[test]]
name = "python_complexity_tests"
path = "tests/python_complexity_tests.rs"

[[test]]
name = "python_entropy_test"
path = "tests/python_entropy_test.rs"

[[test]]
name = "python_extraction_test"
path = "tests/python_extraction_test.rs"

[[test]]
name = "real_struct_literal_test"
path = "tests/real_struct_literal_test.rs"

[[test]]
name = "recommendation_consistency_test"
path = "tests/recommendation_consistency_test.rs"

[[test]]
name = "refactoring_test"
path = "tests/refactoring_test.rs"

[[test]]
name = "ripgrep_flags_boilerplate_test"
path = "tests/ripgrep_flags_boilerplate_test.rs"

[[test]]
name = "risk_analysis_tests"
path = "tests/risk_analysis_tests.rs"

[[test]]
name = "risk_context_tests"
path = "tests/risk_context_tests.rs"

[[test]]
name = "risk_insights_formatting_tests"
path = "tests/risk_insights_formatting_tests.rs"

[[test]]
name = "risk_tests"
path = "tests/risk_tests.rs"

[[test]]
name = "rust_false_positive_test"
path = "tests/rust_false_positive_test.rs"

[[test]]
name = "scoring_rebalanced_integration_test"
path = "tests/scoring_rebalanced_integration_test.rs"

[[test]]
name = "semantic_naming_integration_test"
path = "tests/semantic_naming_integration_test.rs"

[[test]]
name = "semantic_normalization_test"
path = "tests/semantic_normalization_test.rs"

[[test]]
name = "single_stage_filtering_test"
path = "tests/single_stage_filtering_test.rs"

[[test]]
name = "smell_tests"
path = "tests/smell_tests.rs"

[[test]]
name = "state_machine_pattern_detection_test"
path = "tests/state_machine_pattern_detection_test.rs"

[[test]]
name = "stress_test_large_projects"
path = "tests/stress_test_large_projects.rs"

[[test]]
name = "struct_init_integration_test"
path = "tests/struct_init_integration_test.rs"

[[test]]
name = "struct_literal_call_test"
path = "tests/struct_literal_call_test.rs"

[[test]]
name = "suppression_tests"
path = "tests/suppression_tests.rs"

[[test]]
name = "test_async_false_positive"
path = "tests/test_async_false_positive.rs"

[[test]]
name = "test_caller_filtering"
path = "tests/test_caller_filtering.rs"

[[test]]
name = "test_category_filtering"
path = "tests/test_category_filtering.rs"

[[test]]
name = "test_color_validation"
path = "tests/test_color_validation.rs"

[[test]]
name = "test_enhanced_complexity"
path = "tests/test_enhanced_complexity.rs"

[[test]]
name = "test_file_detection_integration_test"
path = "tests/test_file_detection_integration_test.rs"

[[test]]
name = "test_formatting"
path = "tests/test_formatting.rs"

[[test]]
name = "test_framework_pattern_exclusions"
path = "tests/test_framework_pattern_exclusions.rs"

[[test]]
name = "test_function_detection_integration"
path = "tests/test_function_detection_integration.rs"

[[test]]
name = "test_markdown_enhanced_output"
path = "tests/test_markdown_enhanced_output.rs"

[[test]]
name = "test_testing_patterns"
path = "tests/test_testing_patterns.rs"

[[test]]
name = "test_type_tracking"
path = "tests/test_type_tracking.rs"

[[test]]
name = "tier_aware_filtering_integration_test"
path = "tests/tier_aware_filtering_integration_test.rs"

[[test]]
name = "token_classification_tests"
path = "tests/token_classification_tests.rs"

[[test]]
name = "trait_method_coverage_test"
path = "tests/trait_method_coverage_test.rs"

[[test]]
name = "trait_tracking_test"
path = "tests/trait_tracking_test.rs"

[[test]]
name = "tui_integration_test"
path = "tests/tui_integration_test.rs"

[[test]]
name = "type_tracker_struct_literal_test"
path = "tests/type_tracker_struct_literal_test.rs"

[[test]]
name = "type_tracking_test"
path = "tests/type_tracking_test.rs"

[[test]]
name = "ui_tests"
path = "tests/ui_tests.rs"

[[test]]
name = "validate_improvement_integration_test"
path = "tests/validate_improvement_integration_test.rs"

[[test]]
name = "validate_parallel_test"
path = "tests/validate_parallel_test.rs"

[[test]]
name = "visibility_tracking_integration_test"
path = "tests/visibility_tracking_integration_test.rs"

[[test]]
name = "well_tested_simple_function_exclusion_test"
path = "tests/well_tested_simple_function_exclusion_test.rs"

[[test]]
name = "zed_editor_behavioral_decomposition_test"
path = "tests/zed_editor_behavioral_decomposition_test.rs"

[[bench]]
name = "aggregation_benchmark"
path = "benches/aggregation_benchmark.rs"

[[bench]]
name = "ast_parsing_optimization_bench"
path = "benches/ast_parsing_optimization_bench.rs"
harness = false

[[bench]]
name = "batch_analysis"
path = "benches/batch_analysis.rs"
harness = false

[[bench]]
name = "call_graph_bench"
path = "benches/call_graph_bench.rs"
harness = false

[[bench]]
name = "clustering_performance"
path = "benches/clustering_performance.rs"

[[bench]]
name = "constructor_detection_bench"
path = "benches/constructor_detection_bench.rs"
harness = false

[[bench]]
name = "contextual_risk_bench"
path = "benches/contextual_risk_bench.rs"

[[bench]]
name = "coverage_performance"
path = "benches/coverage_performance.rs"
harness = false

[[bench]]
name = "coverage_scoring"
path = "benches/coverage_scoring.rs"
harness = false

[[bench]]
name = "cross_file_resolution_bench"
path = "benches/cross_file_resolution_bench.rs"

[[bench]]
name = "evidence_formatter_bench"
path = "benches/evidence_formatter_bench.rs"

[[bench]]
name = "framework_patterns"
path = "benches/framework_patterns.rs"

[[bench]]
name = "god_object_bench"
path = "benches/god_object_bench.rs"

[[bench]]
name = "god_object_struct_ownership_bench"
path = "benches/god_object_struct_ownership_bench.rs"

[[bench]]
name = "lcov_parallel_bench"
path = "benches/lcov_parallel_bench.rs"
harness = false

[[bench]]
name = "multi_debt_benchmark"
path = "benches/multi_debt_benchmark.rs"

[[bench]]
name = "orchestration_adjustment_bench"
path = "benches/orchestration_adjustment_bench.rs"

[[bench]]
name = "parallel_performance"
path = "benches/parallel_performance.rs"
harness = false

[[bench]]
name = "progress_tracking_overhead"
path = "benches/progress_tracking_overhead.rs"

[[bench]]
name = "rebalanced_scoring_bench"
path = "benches/rebalanced_scoring_bench.rs"

[[bench]]
name = "score_based_sorting_bench"
path = "benches/score_based_sorting_bench.rs"
harness = false

[[bench]]
name = "semantic_naming_bench"
path = "benches/semantic_naming_bench.rs"

[[bench]]
name = "state_field_detection_bench"
path = "benches/state_field_detection_bench.rs"

[[bench]]
name = "tier_classification_bench"
path = "benches/tier_classification_bench.rs"
harness = false

[[bench]]
name = "unified_output_format_bench"
path = "benches/unified_output_format_bench.rs"
harness = false

[[bench]]
name = "validate_parallel_bench"
path = "benches/validate_parallel_bench.rs"
harness = false

[dependencies.anyhow]
version = "1.0.102"

[dependencies.arboard]
version = "3.5"

[dependencies.chrono]
version = "0.4.44"
features = ["serde"]

[dependencies.clap]
version = "4.6"
features = [
    "derive",
    "env",
]

[dependencies.colored]
version = "3.0"

[dependencies.comfy-table]
version = "7.1"

[dependencies.crossbeam]
version = "0.8"

[dependencies.crossterm]
version = "0.29"

[dependencies.dashmap]
version = "6.1"

[dependencies.dirs]
version = "6.0"

[dependencies.env_logger]
version = "0.11"

[dependencies.fuzzy-matcher]
version = "0.3"

[dependencies.git2]
version = "0.20"
features = ["vendored-openssl"]

[dependencies.glob]
version = "0.3"

[dependencies.html-escape]
version = "0.2.13"

[dependencies.ignore]
version = "0.4.25"

[dependencies.im]
version = "15.1"
features = ["serde"]

[dependencies.indicatif]
version = "0.18"
features = ["rayon"]

[dependencies.instability]
version = "0.3.7"

[dependencies.lazy_static]
version = "1.5.0"

[dependencies.lcov]
version = "0.8"

[dependencies.libc]
version = "0.2"

[dependencies.log]
version = "0.4"

[dependencies.num_cpus]
version = "1.16"

[dependencies.once_cell]
version = "1.21.4"

[dependencies.openssl-src]
version = "300"

[dependencies.openssl-sys]
version = "0.9.112"

[dependencies.parking_lot]
version = "0.12"

[dependencies.pathdiff]
version = "0.2"

[dependencies.petgraph]
version = "0.8.1"

[dependencies.postcard]
version = "1.1"
features = ["alloc"]
default-features = false

[dependencies.premortem]
version = "0.6.1"

[dependencies.proc-macro2]
version = "1.0"
features = ["span-locations"]

[dependencies.quote]
version = "1.0"

[dependencies.ratatui]
version = "0.30"

[dependencies.rayon]
version = "1.10"

[dependencies.regex]
version = "1.10"

[dependencies.rustc-demangle]
version = "0.1"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.sha2]
version = "0.10"

[dependencies.stillwater]
version = "1.0"
features = [
    "async",
    "serde",
]

[dependencies.syn]
version = "2.0"
features = [
    "full",
    "visit",
    "extra-traits",
]

[dependencies.thiserror]
version = "2.0"

[dependencies.time]
version = "0.3.37"

[dependencies.tokio]
version = "1.50"
features = [
    "rt",
    "rt-multi-thread",
]

[dependencies.toml]
version = "0.9"

[dependencies.tracing]
version = "0.1.40"

[dependencies.tracing-subscriber]
version = "0.3.23"
features = ["env-filter"]

[dependencies.tree-sitter]
version = "0.23"

[dependencies.tree-sitter-javascript]
version = "0.23"

[dependencies.tree-sitter-python]
version = "0.23"

[dependencies.tree-sitter-typescript]
version = "0.23"

[dependencies.tui-scrollview]
version = "0.6.3"

[dependencies.unicode-width]
version = "0.2"

[dependencies.walkdir]
version = "2.5"

[dependencies.which]
version = "8.0"

[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh64"]

[dev-dependencies.assert_cmd]
version = "2.2"

[dev-dependencies.criterion]
version = "0.8"

[dev-dependencies.indoc]
version = "2.0"

[dev-dependencies.pretty_assertions]
version = "1.4"

[dev-dependencies.proptest]
version = "1.11"

[dev-dependencies.tempfile]
version = "3.27"

[dev-dependencies.trybuild]
version = "1.0"

[profile.dev]
opt-level = 0
debug = 2
split-debuginfo = "unpacked"
incremental = true

[profile.dev.package."*"]
opt-level = 3

[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true
