[package]
name = "synor-compute"
version.workspace = true
edition.workspace = true
description = "Heterogeneous multi-processor compute platform for Synor blockchain"
license.workspace = true

[dependencies]
# Internal crates
synor-types = { path = "../synor-types" }
synor-crypto = { path = "../synor-crypto" }
synor-storage = { path = "../synor-storage" }

# Serialization
serde.workspace = true
serde_json.workspace = true
borsh.workspace = true
bincode = "1.3"

# Async runtime
tokio = { workspace = true, features = ["sync", "rt-multi-thread", "time", "macros"] }
async-trait = "0.1"
futures = "0.3"

# Concurrency
parking_lot.workspace = true
crossbeam-deque = "0.8"
crossbeam-channel = "0.5"
dashmap = "5.5"

# Utilities
thiserror.workspace = true
tracing.workspace = true
hex.workspace = true

# Hashing
blake3.workspace = true

# Data structures
indexmap = "2.2"
priority-queue = "2.0"

# Time
chrono = { version = "0.4", features = ["serde"] }

# Random
rand = "0.8"

[dev-dependencies]
tempfile.workspace = true
tokio-test = "0.4"
