[package]
edition = "2024"
name = "code0-flow"
version = "0.0.40"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Crate for managing the code0-flows inside of the Flow Queue & FlowStore"
homepage = "https://code0.tech"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/code0-tech/code0-flow"
[features]
all = [
"flow_definition",
"flow_config",
"flow_health",
"flow_service",
"flow_telemetry",
]
default = []
flow_config = [
"dep:dotenv",
"dep:log",
]
flow_definition = [
"dep:log",
"dep:serde",
"dep:serde_json",
"dep:tucana",
"dep:walkdir",
]
flow_health = [
"dep:async-nats",
"dep:futures-core",
"dep:tonic",
"dep:tonic-health",
]
flow_service = [
"flow_definition",
"dep:log",
"dep:tokio",
"dep:tonic",
"dep:tucana",
]
flow_telemetry = [
"dep:opentelemetry",
"dep:opentelemetry-appender-tracing",
"dep:opentelemetry-otlp",
"dep:opentelemetry_sdk",
"dep:serde",
"dep:tracing",
"dep:tracing-opentelemetry",
"dep:tracing-subscriber",
]
[lib]
name = "code0_flow"
path = "src/lib.rs"
doctest = true
[dependencies.async-nats]
version = "0.49.0"
optional = true
[dependencies.dotenv]
version = "0.15.0"
optional = true
[dependencies.futures-core]
version = "0.3.31"
optional = true
[dependencies.log]
version = "0.4.24"
optional = true
[dependencies.opentelemetry]
version = "0.32.0"
features = [
"logs",
"metrics",
"trace",
]
optional = true
[dependencies.opentelemetry-appender-tracing]
version = "0.32.0"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.32.0"
features = [
"grpc-tonic",
"logs",
"metrics",
"trace",
]
optional = true
[dependencies.opentelemetry_sdk]
version = "0.32.1"
features = [
"logs",
"metrics",
"rt-tokio",
"trace",
]
optional = true
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1.0.143"
optional = true
[dependencies.tokio]
version = "1.49.0"
optional = true
[dependencies.tonic]
version = "0.14.1"
optional = true
[dependencies.tonic-health]
version = "0.14.1"
optional = true
[dependencies.tracing]
version = "0.1.41"
features = ["log"]
optional = true
[dependencies.tracing-opentelemetry]
version = "0.33.0"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.20"
features = [
"env-filter",
"fmt",
]
optional = true
[dependencies.tucana]
version = "0.0.75"
features = ["aquila"]
optional = true
[dependencies.walkdir]
version = "2.5.0"
optional = true