Files
archlens/Cargo.toml
Gabriel Kaszewski 75c0b5c5c9
All checks were successful
CI / Check / Test (push) Successful in 2m54s
Architecture Docs / Generate diagrams (push) Successful in 2m38s
perf: release profile — opt-level=z, lto, strip, panic=abort (7.8→4.2 MB)
2026-06-17 11:34:21 +02:00

77 lines
2.1 KiB
TOML

[workspace]
resolver = "2"
members = [
"crates/domain",
"crates/application",
"crates/presentation",
"crates/adapters/tree-sitter",
"crates/adapters/walkdir",
"crates/adapters/mermaid",
"crates/adapters/ascii",
"crates/adapters/file-writer",
"crates/adapters/stdout-writer",
"crates/adapters/toml-config",
"crates/adapters/cargo-workspace",
"crates/adapters/python-project",
"crates/adapters/d2",
"crates/adapters/html-viewer",
]
[workspace.dependencies]
# Internal crates
archlens-domain = { path = "crates/domain" }
archlens-application = { path = "crates/application" }
archlens-tree-sitter = { path = "crates/adapters/tree-sitter" }
archlens-walkdir = { path = "crates/adapters/walkdir" }
archlens-mermaid = { path = "crates/adapters/mermaid" }
archlens-ascii = { path = "crates/adapters/ascii" }
archlens-file-writer = { path = "crates/adapters/file-writer" }
archlens-stdout-writer = { path = "crates/adapters/stdout-writer" }
archlens-toml-config = { path = "crates/adapters/toml-config" }
archlens-cargo-workspace = { path = "crates/adapters/cargo-workspace" }
archlens-python-project = { path = "crates/adapters/python-project" }
archlens-d2 = { path = "crates/adapters/d2" }
archlens-html = { path = "crates/adapters/html-viewer" }
serde_json = "1"
# Error handling
thiserror = "2"
anyhow = "1"
# Parsing
tree-sitter = "0.24"
tree-sitter-rust = "0.23"
tree-sitter-python = "0.23"
tree-sitter-c-sharp = "0.23"
# File discovery
walkdir = "2"
ignore = "0.4"
# Config
toml = "0.8"
serde = { version = "1", features = ["derive"] }
# CLI
clap = { version = "4", features = ["derive"] }
# Observability
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Parallelism
rayon = "1"
# File watching
notify = { version = "7", features = ["serde"] }
# Testing
tempfile = "3"
[profile.release]
opt-level = "z" # optimise for size
lto = true # cross-crate dead-code elimination
codegen-units = 1 # single unit = better LTO
strip = true # strip symbols from final binary
panic = "abort" # drop unwinding machinery (~200 KB)