[workspace] members = [ ".", "crates/bindings/python", "crates/bindings/wasm-runtime", "crates/process", "crates/provisioning", "crates/transport", "crates/distribution", "crates/iroh-driver", "crates/datastream", "crates/data-plane", "crates/dashboard", "crates/mvp-system", "xtask", "tools/vastai", ] exclude = ["crates/bindings/wasm-crypto", "examples", "apps"] [package] name = "swactor" version = "0.1.0" edition = "2024" autobenches = false [profile.bench] debug = true strip = false [lib] crate-type = ["rlib"] [features] default = ["getrandom", "std"] std = [] # OTP patterns: supervisors, registries, timers, routers getrandom = ["dep:getrandom"] serde = ["dep:serde"] tracing = ["dep:tracing"] no_random = [] # compile without access to a source of randomness transport = [ ] # transport-agnostic messaging (no mandatory deps; codec is user-provided) wasm = ["no_random", "dep:web-time"] # browser/wasm32 target support [dependencies] getrandom = { version = "0.2", optional = true } serde = { version = "1", features = ["derive"], optional = true } tracing = { version = "0.1", optional = true } web-time = { version = "0.2", optional = true } crossbeam-queue = "0.3.12" crossbeam-utils = "0.8.21" parking_lot = "0.12" [dev-dependencies] criterion = { version = "0.5", features = ["html_reports"] } proptest = "1" proptest-state-machine = "0.3"