[package] name = "dbx-core" version = "0.1.0" edition = "2021" license = "Apache-2.0" [features] default = ["duckdb-sidecar", "dynamodb", "mq-admin", "sqlite-sqlcipher", "system-fonts"] duckdb-sidecar = ["dbx-sql/duckdb-sidecar", "dbx-drivers/duckdb-sidecar"] dynamodb = ["dbx-drivers/dynamodb"] mq-admin = ["dep:rumqttc", "dbx-types/mq-admin", "dbx-drivers/mq-admin"] sqlite-sqlcipher = ["rusqlite/bundled-sqlcipher-vendored-openssl", "dbx-drivers/sqlite-sqlcipher"] sqlite-multiple-ciphers = ["dbx-drivers/sqlite-multiple-ciphers"] # Keeps bundled SQLite for consumers that enable no other sqlite source # (dbx-cli, dbx-mcp); do not combine with the cipher features. sqlite-bundled = ["rusqlite/bundled", "dbx-drivers/sqlite-bundled"] openapi = ["dbx-types/openapi", "dbx-sql/openapi"] # OS keyring storage for the secret-store key material (macOS/Windows keychain, # Linux dbus Secret Service with persistent fallback). Desktop only. os-keyring = ["dep:keyring", "keyring/linux-native-sync-persistent"] system-fonts = ["font-kit"] [dependencies] dbx-drivers = { path = "../dbx-drivers", default-features = false } dbx-sql = { path = "../dbx-sql", default-features = false } dbx-plugin-runtime = { path = "../dbx-plugin-runtime" } dbx-formats = { path = "../dbx-formats" } dbx-types = { path = "../dbx-types", default-features = false } dbx-ai-provider = { path = "../dbx-ai-provider" } dbx-platform = { path = "../dbx-platform", features = ["host-prompts", "downloads"] } serde = { version = "1.0", features = ["derive"] } serde_json = { version = "1.0", features = ["arbitrary_precision", "preserve_order"] } serde_yaml_ng = "0.10" regex = "1" rayon = "1" percent-encoding = "2" encoding_rs = "0.8" log = "0.4" tokio = { version = "1", features = ["full"] } tokio-util = { version = "0.7", features = ["compat"] } chrono = { version = "0.4", features = ["serde"] } chrono-tz = "0.10" fs2 = "0.4" uuid = { version = "1", features = ["v4", "serde"] } tokio-postgres = { version = "0.7", features = ["with-chrono-0_4", "with-uuid-1", "with-serde_json-1"] } deadpool-postgres = { version = "0.14", features = ["rt_tokio_1"] } webpki-roots = "0.26" rusqlite = { version = "0.32", default-features = false, features = ["load_extension", "backup", "functions", "column_decltype"] } mysql_async = { version = "0.37", default-features = false, features = ["default-rustls", "client_ed25519", "chrono", "rust_decimal"] } sqlparser = { version = "0.62.0", features = ["visitor"] } redis = { version = "0.32.2", features = ["tokio-comp", "tls-rustls", "tls-rustls-insecure", "tokio-rustls-comp", "sentinel", "cluster-async"] } rustls = { version = "0.23", features = ["aws-lc-rs"] } rustls-pemfile = "2.2" reqwest = { version = "0.12", default-features = false, features = ["cookies", "json", "stream", "rustls-tls", "socks"] } prometheus-parse = "=0.2.5" futures = "0.3" mongodb = { version = "3.2.5", features = ["socks5-proxy"] } rumqttc = { version = "0.24", features = ["websocket"], optional = true } portpicker = "0.1.1" csv = "1" calamine = { version = "0.30.1", features = ["dates"] } ssfmt = { version = "0.1.2", default-features = false } quick-xml = "0.37" base64 = "0.22" jsonwebtoken = "9" aes-gcm = "0.10" aes = "0.8" cbc = "0.1" argon2 = "0.5" # The Linux dbus Secret Service backend (linux-native-sync-persistent) pulls # libdbus-sys, whose pkg-config build script cannot cross-compile (musl static # browser, docker zigbuild). It stays opt-in so server/cross builds skip it and # fall back to the managed .dbx/secret.key file. keyring = { version = "3.6.3", default-features = false, optional = true, features = ["apple-native", "windows-native", "crypto-rust"] } sha2 = "0.10" async-trait = "0.1" bytes = "1" font-kit = { version = "0.14.3", optional = true } zip = { version = "4", default-features = false, features = ["deflate"] } flate2 = "1" crc = "3" sha1 = "0.10" tar = "0.4" sysinfo = { version = "0.32", features = ["system"] } minijinja = "2" notify = { version = "7", default-features = false, features = ["macos_kqueue"] } arc-swap = "1" tempfile = "3" [target.'cfg(windows)'.dependencies] windows-sys = { version = "0.61", features = ["Win32_Storage_FileSystem", "Win32_Foundation", "Win32_Security"] } [dev-dependencies] zstd = "0.13" dbx-drivers = { path = "../dbx-drivers", default-features = false, features = ["test-support"] } dbx-plugin-runtime = { path = "../dbx-plugin-runtime", features = ["test-support"] } dbx-platform = { path = "../dbx-platform", features = ["test-support"] } tokio = { version = "1", features = ["test-util"] } [target.'cfg(all(unix, not(target_os = "redox")))'.dependencies] nix = { version = "0.31.3", features = ["user"] }