durable-workflow 0.1.10

First-party Rust SDK for Durable Workflow workers and clients
Documentation
[package]
name = "durable-workflow"
version = "0.1.10"
edition = "2021"
description = "First-party Rust SDK for Durable Workflow workers and clients"
license = "MIT"
repository = "https://github.com/durable-workflow/sdk-rust"
homepage = "https://durable-workflow.com"
documentation = "https://rust.durable-workflow.com/"
readme = "README.md"
rust-version = "1.86"
keywords = ["durable", "workflow", "temporal", "worker", "sdk"]
categories = ["api-bindings", "asynchronous"]
include = ["/src/**", "/examples/**", "/Cargo.toml", "/README.md", "/LICENSE"]

[package.metadata.durable-workflow]
supported-server-versions = ">=0.2,<0.3"
worker-protocol-version = "1.2"
control-plane-version = "2"
query-tasks = true
query-task-minimum-worker-protocol-version = "1.8"
replayed-instance-state-queries = true
query-state-model = "deterministic-workflow-replay"
snapshot-inspection-queries = true
child-workflows = true
child-workflow-command = "start_child_workflow"
child-workflow-failure-reasons = ["child_workflow", "cancelled", "terminated"]
activity-options = true
activity-retry-policy = true
activity-timeouts = ["start_to_close", "schedule_to_start", "schedule_to_close", "heartbeat"]
activity-failure-reasons = ["activity", "cancelled", "timeout"]
workflow-lifecycle-commands = ["cancel", "terminate"]
workflow-lifecycle-run-targeting = "current-run-guard"
workflow-terminal-outcomes = ["failed", "cancelled", "terminated", "timed_out"]
workflow-start-timeouts = ["execution_timeout_seconds", "run_timeout_seconds"]
payload-codecs = ["avro", "json"]
durable-timers = true
timer-command = "start_timer"
timer-replay-validation = "command-order+sequence+timer-id+delay"

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

[dependencies]
apache-avro = { version = "0.21", default-features = false }
base64 = "0.22"
# Keep apache-avro's dependency resolution compatible with the Rust 1.86 MSRV.
bon = { version = "=3.8.1", default-features = false }
futures-util = "0.3"
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "1"
tokio = { version = "1", features = ["macros", "rt-multi-thread", "signal", "time"] }

[dev-dependencies]
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }