[package]
name = "ironflow-worker"
version = "2.2.1"
edition = "2024"
rust-version = "1.94"
authors = ["Thomas Tartrau"]
license = "MIT"
description = "HTTP-based background worker for ironflow — polls the API and executes workflows"
repository = "https://gitlab.com/ThomasTartrau/ironflow"
keywords = ["workflow", "worker", "queue", "background"]
categories = ["asynchronous"]

[dependencies]
ironflow-core = { version = "2.2.0", path = "../ironflow-core" }
ironflow-store = { version = "2.4.0", path = "../ironflow-store", default-features = false }
ironflow-engine = { version = "2.5.1", path = "../ironflow-engine" }

reqwest = { version = "0.12", features = ["json"] }
tokio = { version = "1", features = ["time", "sync", "macros"] }
tracing = "0.1"
thiserror = "2"
uuid = { version = "1", features = ["v7", "serde"] }
chrono = { version = "0.4", features = ["serde"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
metrics = { version = "0.24", optional = true }

[features]
default = []
prometheus = ["metrics", "ironflow-engine/prometheus"]
heartbeat = []

[dev-dependencies]
tokio = { version = "1", features = ["full"] }
axum = "0.7"
rust_decimal = "1"
