# 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"
rust-version = "1.88"
name = "gobby-core"
version = "0.7.0"
authors = ["Josh Wilhelmi <hello@gobby.ai>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Shared foundation primitives for Gobby CLI tools"
homepage = "https://gobby.ai"
readme = false
keywords = [
    "gobby",
    "cli",
]
categories = ["development-tools"]
license = "Apache-2.0"
repository = "https://github.com/GobbyAI/gobby-cli"

[features]
ai = [
    "dep:reqwest",
    "dep:base64",
    "dep:bytes",
    "dep:httpdate",
    "dep:rand",
    "dep:ureq",
    "reqwest/multipart",
]
default = []
falkor = [
    "dep:falkordb",
    "dep:urlencoding",
]
full = [
    "postgres",
    "falkor",
    "qdrant",
    "indexing",
    "search",
    "graph-analytics",
    "ai",
]
graph-analytics = []
indexing = [
    "dep:ignore",
    "dep:sha2",
]
postgres = [
    "dep:postgres",
    "dep:postgres-types",
    "dep:postgres-openssl",
    "dep:base64",
    "dep:scrypt",
]
qdrant = [
    "dep:reqwest",
    "dep:urlencoding",
]
search = []

[lib]
name = "gobby_core"
path = "src/lib.rs"

[[test]]
name = "public_boundary"
path = "tests/public_boundary.rs"

[dependencies.anyhow]
version = "1"

[dependencies.base64]
version = "0.22"
optional = true

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

[dependencies.dirs]
version = "6"

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

[dependencies.fernet]
version = "0.2.2"

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

[dependencies.ignore]
version = "0.4"
optional = true

[dependencies.log]
version = "0.4"

[dependencies.openssl]
version = "0.10"
features = ["vendored"]

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

[dependencies.postgres-openssl]
version = "0.5"
optional = true

[dependencies.postgres-types]
version = "0.2"
optional = true

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

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

[dependencies.scrypt]
version = "0.11"
optional = true

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

[dependencies.serde_json]
version = "1"

[dependencies.serde_yaml]
version = "0.10.4"
package = "yaml_serde"

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

[dependencies.thiserror]
version = "2"

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

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

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

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