[package]
name = "tsift-graph"
version = "0.1.63"
edition = "2024"
description = "Language-aware graph extraction — call sites, routes, community detection, and path finding for tsift"
license = "MIT"
repository = "https://github.com/btakita/tsift"
authors = ["Brian Takita <brian.takita@gmail.com>"]
readme = "README.md"
keywords = ["agent", "search", "rag", "cli", "context"]
categories = ["command-line-utilities", "development-tools"]
publish = true

[dependencies]
anyhow = "1"
blake3 = "1"
lazily = "0.2"
serde = { version = "1", features = ["derive"] }
tsift-core = { path = "../tsift-core", version = "0.1.63" }
tree-sitter = "0.26"

tree-sitter-rust = { version = "0.24", optional = true }
tree-sitter-python = { version = "0.25", optional = true }
tree-sitter-typescript = { version = "0.23", optional = true }
tree-sitter-javascript = { version = "0.25", optional = true }
tree-sitter-kotlin-ng = { version = "1", optional = true }
tree-sitter-zig = { version = "1", optional = true }
tree-sitter-bash = { version = "0.25", optional = true }
tree-sitter-md = { version = "0.5", optional = true }

[features]
default = ["lang-rust", "lang-python", "lang-typescript", "lang-javascript", "lang-kotlin", "lang-zig", "lang-bash", "lang-markdown"]
lang-rust = ["dep:tree-sitter-rust"]
lang-python = ["dep:tree-sitter-python"]
lang-typescript = ["dep:tree-sitter-typescript"]
lang-javascript = ["dep:tree-sitter-javascript"]
lang-kotlin = ["dep:tree-sitter-kotlin-ng"]
lang-zig = ["dep:tree-sitter-zig"]
lang-bash = ["dep:tree-sitter-bash"]
lang-markdown = ["dep:tree-sitter-md"]
all-languages = ["lang-rust", "lang-python", "lang-typescript", "lang-javascript", "lang-kotlin", "lang-zig", "lang-bash", "lang-markdown"]
