[package]
edition = "2024"
rust-version = "1.89"
name = "thread-services"
version = "0.1.0"
build = false
include = [
"CHANGELOG.md",
"CONTRIBUTING.md",
"CONTRIBUTORS_LICENSE_AGREEMENT.md",
"LICENSE.md",
"README.md",
"VENDORED.md",
"examples/**",
"sbom.spdx",
"src/**",
"tests/**",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Service layer interfaces for Thread"
readme = "README.md"
keywords = [
"code-analysis",
"parsing",
"repository-tools",
"static-analysis",
"tree-sitter",
]
categories = [
"artificial-intelligence",
"command-line-utilities",
"development-tools",
"parser-implementations",
"text-processing",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/knitli/thread"
[features]
ast-grep-backend = [
"dep:thread-ast-engine",
"dep:thread-language",
"matching",
"parsing",
]
default = [
"in-memory-only",
"mimalloc",
]
enhanced-foundation = [
"performance",
"tower-services",
]
extensions = ["plugins"]
in-memory-only = []
intelligence-implementations = ["intelligence-traits"]
intelligence-traits = []
matching = [
"thread-ast-engine/matching",
"thread-ast-engine/parsing",
]
mimalloc = ["dep:mimalloc"]
parsing = ["thread-ast-engine/parsing"]
performance = [
"dep:futures",
"dep:pin-project",
]
plugins = []
serialization = ["dep:serde"]
storage-implementations = ["storage-traits"]
storage-traits = ["dep:serde"]
tower-services = [
"dep:tower",
"dep:tower-service",
]
worker = [
"thread-ast-engine?/worker",
"thread-language?/worker",
"thread-utilities/worker",
]
[lib]
name = "thread_services"
path = "src/lib.rs"
[dependencies.async-trait]
version = "0.1.88"
[dependencies.cfg-if]
version = "1.0.4"
[dependencies.futures]
version = "0.3.31"
optional = true
[dependencies.ignore]
version = "0.4.25"
[dependencies.mimalloc]
version = "0.1.48"
features = ["v3"]
optional = true
[dependencies.pin-project]
version = "1.1.10"
optional = true
[dependencies.recoco-utils]
version = "0.2.1"
features = ["fingerprint"]
default-features = false
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
optional = true
[dependencies.thiserror]
version = "2.0.17"
[dependencies.thread-ast-engine]
version = "0.1.0"
features = [
"matching",
"parsing",
]
optional = true
default-features = false
[dependencies.thread-language]
version = "0.1.0"
optional = true
default-features = false
[dependencies.thread-utilities]
version = "0.1.3"
features = ["hashers"]
default-features = false
[dependencies.tower]
version = "0.5.2"
features = ["util"]
optional = true
[dependencies.tower-service]
version = "0.3.3"
optional = true