Ctrl K
ComunidadGuías…

services/api-rs/Cargo.toml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
[package]
name    = "gctrl-api"
version = "0.1.0"
edition = "2021"

[[bin]]
name = "gctrl-api"
path = "src/main.rs"

[dependencies]
axum            = { version = "0.7", features = ["multipart"] }
axum-extra      = { version = "0.9", features = ["typed-header"] }
tokio           = { version = "1", features = ["full"] }
tower           = "0.4"
tower-http      = { version = "0.5", features = ["cors", "limit"] }
serde           = { version = "1", features = ["derive"] }
serde_json      = "1"
sqlx            = { version = "0.8", features = ["postgres", "uuid", "chrono", "runtime-tokio-rustls", "migrate"] }
uuid            = { version = "1", features = ["serde", "v4"] }
chrono          = { version = "0.4", features = ["serde"] }
jsonwebtoken    = "9"
bcrypt          = "0.15"
redis           = { version = "0.25", features = ["tokio-comp", "aio", "connection-manager"] }
neo4rs          = "0.7"
reqwest         = { version = "0.12", features = ["json", "rustls-tls", "stream"], default-features = false }
dotenvy         = "0.15"
tracing         = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Optional LLM-observability export to a self-hosted Arize Phoenix (OTLP/HTTP).
# Off unless PHOENIX_OTLP_URL is set — see services::telemetry. Version trio is
# mutually pinned (tracing-opentelemetry 0.28 → opentelemetry 0.27).
opentelemetry   = "0.27"
opentelemetry_sdk = { version = "0.27", features = ["rt-tokio"] }
opentelemetry-otlp = { version = "0.27", features = ["http-proto", "reqwest-client", "reqwest-rustls"], default-features = false }
tracing-opentelemetry = "0.28"
thiserror       = "1"
bytes           = "1"
base64          = "0.22"
futures         = "0.3"
async-stream    = "0.3"
sha2            = "0.10"
hmac            = "0.12"
hex             = "0.4"
url             = "2"
aes-gcm         = "0.10"
rand            = "0.8"
regex           = "1"
once_cell       = "1"

[dev-dependencies]
# `ServiceExt::oneshot` — lets the router-shape test in main.rs actually route a
# request through the router instead of only constructing it. Test-only: the
# release binary keeps the featureless `tower` above.
tower           = { version = "0.4", features = ["util"] }

[profile.release]
opt-level = 3
lto       = true
strip     = true