[package]
name = "fallow-core"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
keywords.workspace = true
categories.workspace = true
description = "Analysis orchestration for fallow codebase intelligence (dead code, duplication, plugins, cross-reference)"
readme = "../../README.md"

[lib]
doctest = false

[dependencies]
fallow-config = { workspace = true }
fallow-extract = { workspace = true }
fallow-graph = { workspace = true }
fallow-types = { workspace = true }

# Parsing & analysis
oxc_allocator = { workspace = true }
oxc_ast = { workspace = true }
oxc_ast_visit = { workspace = true }
oxc_parser = { workspace = true }
oxc_span = { workspace = true }
oxc_syntax = { workspace = true }

# Parallelism
rayon = { workspace = true }

# File system
dunce = { workspace = true }
ignore = { workspace = true }
glob = { workspace = true }
globset = { workspace = true }
regex = { workspace = true }

# Serialization
bitcode = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }

# Hashing
xxhash-rust = { workspace = true }
rustc-hash = { workspace = true }

# Progress
indicatif = { workspace = true }

# Logging
tracing = { workspace = true }

[dev-dependencies]
criterion = { workspace = true }
proptest = { workspace = true }
dhat = { workspace = true }
tempfile = { workspace = true }
toml = { workspace = true }
tracing-subscriber = { workspace = true }

[lints]
workspace = true

[[bench]]
name = "analysis"
harness = false

[[bench]]
name = "large_analysis"
harness = false

[[bench]]
name = "allocations"
harness = false
