botlib/Cargo.toml

47 lines
1.4 KiB
TOML

[package]
name = "botlib"
version = "6.1.0"
edition = "2021"
description = "Shared library for General Bots - common types, utilities, and HTTP client"
license = "AGPL-3.0"
authors = ["Pragmatismo.com.br", "General Bots Community"]
repository = "https://github.com/GeneralBots/BotServer"
keywords = ["bot", "chatbot", "ai", "conversational", "library"]
categories = ["api-bindings", "web-programming"]
[features]
default = []
full = ["database", "http-client", "validation", "resilience", "i18n"]
database = ["dep:diesel"]
http-client = ["dep:reqwest"]
validation = ["dep:validator"]
resilience = []
i18n = []
[dependencies]
# Core
anyhow = { workspace = true }
thiserror = { workspace = true }
log = { workspace = true }
env_logger = { workspace = true }
chrono = { workspace = true, features = ["serde", "clock"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
uuid = { workspace = true, features = ["serde", "v4"] }
toml = { workspace = true }
tokio = { workspace = true, features = ["sync", "time"] }
# Optional: Database
diesel = { workspace = true, features = ["postgres", "uuid", "chrono", "serde_json", "r2d2"], optional = true }
# Optional: HTTP Client
reqwest = { workspace = true, features = ["json", "rustls-tls"], optional = true }
# Optional: Validation
validator = { workspace = true, optional = true }
[dev-dependencies]
tokio = { workspace = true, features = ["rt", "macros"] }
[lints]
workspace = true