[package]
edition = "2024"
rust-version = "1.90"
name = "fusion-common"
version = "0.1.0"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A data fusion platform with scheduler, ai agent studio and core libraries"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/fusion-data/fusion-data"
resolver = "2"
[features]
with-db = [
"dep:sqlx",
"dep:sea-query",
]
with-openapi = ["dep:utoipa"]
with-ulid = [
"dep:ulid",
"utoipa/ulid",
]
with-uuid = [
"dep:uuid",
"utoipa/uuid",
]
with-wasm = []
[lib]
name = "fusion_common"
path = "src/lib.rs"
[[example]]
name = "example-metas"
path = "examples/example-metas.rs"
[dependencies.ahash]
version = "0.8"
features = [
"runtime-rng",
"serde",
"getrandom",
]
[dependencies.base16ct]
version = "0.3"
features = ["alloc"]
[dependencies.base64ct]
version = "1.8"
features = [
"std",
"alloc",
]
[dependencies.chrono]
version = "0.4"
features = [
"std",
"clock",
"serde",
]
default-features = false
[dependencies.duration-str]
version = "0.17"
[dependencies.hmac]
version = "0.12"
[dependencies.libc]
version = "0.2"
[dependencies.log]
version = "0.4"
[dependencies.rand]
version = "0.9"
features = ["thread_rng"]
default-features = false
[dependencies.regex]
version = "1.12"
features = ["unicode-case"]
[dependencies.sea-query]
version = "0.32"
features = [
"attr",
"thread-safe",
]
optional = true
[dependencies.serde]
version = "1.0"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.sqlx]
version = "0.8"
features = [
"runtime-tokio",
"chrono",
"json",
]
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.ulid]
version = "1"
features = [
"serde",
"uuid",
]
optional = true
[dependencies.utoipa]
version = "5.4"
features = [
"axum_extras",
"chrono",
"decimal",
"rc_schema",
]
optional = true
[dependencies.uuid]
version = "1"
features = [
"v4",
"v7",
"fast-rng",
"serde",
]
optional = true
[dependencies.windows-sys]
version = "0.61"
features = [
"Win32_Security",
"Win32_System_Threading",
"Win32_UI_WindowsAndMessaging",
]
[dev-dependencies.dotenvy]
version = "0.15"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.3"
features = ["wasm_js"]
default-features = false
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.tsify]
version = "0.5"
features = ["js"]
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"
features = ["serde-serialize"]
[lints.rust]
unsafe_code = "allow"