trusty-common 0.4.15

Shared utilities and provider-agnostic streaming chat (ChatProvider, OllamaProvider, OpenRouter, tool-use) for trusty-* projects
Documentation
# 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 = "2024"
name = "trusty-common"
version = "0.4.15"
authors = ["Bob Matsuoka <bob@matsuoka.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Shared utilities and provider-agnostic streaming chat (ChatProvider, OllamaProvider, OpenRouter, tool-use) for trusty-* projects"
homepage = "https://github.com/bobmatnyc/trusty-tools"
readme = "README.md"
keywords = [
    "mcp",
    "utilities",
    "cli",
    "openrouter",
]
categories = ["command-line-utilities"]
license = "Elastic-2.0"
repository = "https://github.com/bobmatnyc/trusty-tools"
resolver = "2"

[features]
axum-server = [
    "dep:axum",
    "dep:tower-http",
]
default = []
embedder = [
    "dep:fastembed",
    "dep:lru",
    "dep:parking_lot",
    "dep:ort",
]
embedder-bundled-ort = [
    "embedder",
    "fastembed/ort-download-binaries-native-tls",
]
embedder-coreml = ["embedder"]
embedder-cuda = [
    "embedder",
    "fastembed/cuda",
    "fastembed/ort-load-dynamic",
    "ort/cuda",
    "ort/load-dynamic",
]
embedder-load-dynamic = [
    "embedder",
    "fastembed/ort-load-dynamic",
    "ort/load-dynamic",
]
embedder-test-support = ["embedder"]
mcp = []
memory-core = [
    "dep:usearch",
    "dep:rusqlite",
    "dep:r2d2",
    "dep:r2d2_sqlite",
    "dep:git2",
    "dep:dashmap",
    "dep:futures",
    "dep:chrono",
    "dep:regex",
    "dep:parking_lot",
    "dep:thiserror",
    "dep:uuid",
    "embedder",
    "embedder-bundled-ort",
]
memory-core-kuzu = [
    "memory-core",
    "dep:kuzu",
]
monitor-tui = [
    "dep:ratatui",
    "dep:crossterm",
    "dep:chrono",
]
rpc = ["dep:uuid"]
symgraph = [
    "dep:thiserror",
    "dep:sha2",
]
symgraph-parser = [
    "symgraph",
    "dep:uuid",
    "dep:indexmap",
    "dep:similar",
    "dep:walkdir",
    "dep:petgraph",
    "dep:tree-sitter",
    "dep:tree-sitter-rust",
    "dep:tree-sitter-python",
    "dep:tree-sitter-javascript",
    "dep:tree-sitter-go",
    "dep:tree-sitter-java",
    "dep:tree-sitter-typescript",
    "dep:tree-sitter-c",
    "dep:tree-sitter-cpp",
    "dep:syn",
    "dep:prettyplease",
    "dep:proc-macro2",
    "dep:quote",
    "dep:genco",
]
symgraph-server = [
    "symgraph-parser",
    "axum-server",
]

[lib]
name = "trusty_common"
crate-type = ["rlib"]
path = "src/lib.rs"

[dependencies.anyhow]
version = "1"

[dependencies.async-trait]
version = "0.1"

[dependencies.axum]
version = "0.8"
features = ["macros"]
optional = true

[dependencies.chrono]
version = "0.4"
features = ["serde"]
optional = true

[dependencies.colored]
version = "2"

[dependencies.crossterm]
version = "0.28"
optional = true

[dependencies.dashmap]
version = "6"
optional = true

[dependencies.dirs]
version = "5"

[dependencies.fastembed]
version = "5"
features = ["hf-hub-native-tls"]
optional = true
default-features = false

[dependencies.futures]
version = "0.3"
optional = true

[dependencies.futures-util]
version = "0.3"

[dependencies.genco]
version = "0.19"
optional = true

[dependencies.git2]
version = "0.20"
features = [
    "vendored-libgit2",
    "vendored-openssl",
]
optional = true

[dependencies.indexmap]
version = "2"
features = ["serde"]
optional = true

[dependencies.kuzu]
version = "0.9"
optional = true

[dependencies.lru]
version = "0.12"
optional = true

[dependencies.ort]
version = "=2.0.0-rc.12"
features = [
    "std",
    "api-24",
]
optional = true
default-features = false

[dependencies.parking_lot]
version = "0.12"
optional = true

[dependencies.petgraph]
version = "0.8"
features = ["serde-1"]
optional = true

[dependencies.prettyplease]
version = "0.2"
optional = true

[dependencies.proc-macro2]
version = "1.0"
optional = true

[dependencies.quote]
version = "1.0"
optional = true

[dependencies.r2d2]
version = "0.8"
optional = true

[dependencies.r2d2_sqlite]
version = "0.33"
optional = true

[dependencies.ratatui]
version = "0.29"
optional = true

[dependencies.regex]
version = "1"
optional = true

[dependencies.reqwest]
version = "0.12"
features = [
    "json",
    "stream",
    "rustls-tls",
]
default-features = false

[dependencies.rusqlite]
version = "0.39"
features = ["bundled"]
optional = true

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

[dependencies.serde_json]
version = "1"

[dependencies.sha2]
version = "0.10"
optional = true

[dependencies.similar]
version = "2"
features = ["text"]
optional = true

[dependencies.syn]
version = "2.0"
features = ["full"]
optional = true

[dependencies.sysinfo]
version = "0.33"
features = ["system"]
default-features = false

[dependencies.thiserror]
version = "1"
optional = true

[dependencies.tokio]
version = "1"
features = [
    "full",
    "net",
    "io-util",
    "io-std",
    "macros",
    "rt",
    "sync",
    "process",
]

[dependencies.tower-http]
version = "0.6"
features = [
    "cors",
    "trace",
    "compression-gzip",
]
optional = true

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "registry",
]

[dependencies.tree-sitter]
version = "0.26"
optional = true

[dependencies.tree-sitter-c]
version = "0.23"
optional = true

[dependencies.tree-sitter-cpp]
version = "0.23"
optional = true

[dependencies.tree-sitter-go]
version = "0.25"
optional = true

[dependencies.tree-sitter-java]
version = "0.23"
optional = true

[dependencies.tree-sitter-javascript]
version = "0.25"
optional = true

[dependencies.tree-sitter-python]
version = "0.25"
optional = true

[dependencies.tree-sitter-rust]
version = "0.24"
optional = true

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

[dependencies.usearch]
version = "2.25"
optional = true

[dependencies.uuid]
version = "1"
features = [
    "v4",
    "serde",
]
optional = true

[dependencies.walkdir]
version = "2"
optional = true

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

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

[target.'cfg(target_os = "macos")'.dependencies.libc]
version = "0.2"

[target.'cfg(target_os = "macos")'.dependencies.ort]
version = "=2.0.0-rc.12"
features = [
    "coreml",
    "std",
    "api-24",
]
optional = true
default-features = false