[package]
name = "ractor"
version = "0.15.13"
authors = ["Sean Lawlor", "Evan Au", "Dillon George"]
description = "A actor framework for Rust"
documentation = "https://docs.rs/ractor"
license = "MIT"
edition = "2021"
keywords = ["actor", "ractor"]
repository = "https://github.com/slawlor/ractor"
readme = "../README.md"
homepage = "https://github.com/slawlor/ractor"
categories = ["asynchronous"]
rust-version = "1.64"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = [
'cfg(tokio_unstable)',
'cfg(rust_analyzer)',
] }
[features]
cluster = []
monitors = []
message_span_propogation = []
output-port-v2 = []
tokio_runtime = ["tokio/time", "tokio/rt", "tokio/macros", "tokio/tracing"]
blanket_serde = ["serde", "pot", "cluster"]
async-trait = ["dep:async-trait"]
default = ["tokio_runtime", "message_span_propogation"]
[dependencies]
bon = "2.2"
dashmap = "6"
futures = "0.3"
once_cell = "1"
strum = { version = "0.28", features = ["derive"] }
async-std = { version = "1", features = ["attributes", "unstable"], optional = true }
async-trait = { version = "0.1", optional = true }
tokio = { version = "1", features = ["sync"] }
tracing = { version = "0.1", features = ["attributes"] }
serde = { version = "1", optional = true }
pot = { version = "3.0", optional = true }
[target.'cfg(all(target_arch = "wasm32",target_os = "unknown"))'.dependencies]
js-sys = "0.3.77"
tokio_with_wasm = { version = "0.8.2", features = [
"macros",
"sync",
"rt",
"time",
] }
wasm-bindgen = "0.2.100"
wasm-bindgen-futures = "0.4.50"
web-time = "1.1.0"
[dev-dependencies]
backtrace = "0.3"
function_name = "0.3"
paste = "1"
serial_test = "3.0.0"
rand = "0.8"
tracing-glog = "0.4"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
ractor_example_entry_proc = { path = "../ractor_example_entry_proc" }
[target.'cfg(not(all(target_arch = "wasm32", target_os = "unknown")))'.dev-dependencies]
tokio = { version = "1.30", features = [
"rt",
"time",
"sync",
"macros",
"rt-multi-thread",
"tracing",
] }
criterion = "0.8"
tracing-test = "0.2"
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dev-dependencies]
tokio = { version = "1.30", features = ["rt", "time", "sync", "macros"] }
wasm-bindgen-test = "0.3.50"
getrandom = { version = "0.2", features = ["js"] }
criterion = { version = "0.8", default-features = false }
[[bench]]
name = "actor"
harness = false
required-features = []
[[bench]]
name = "async_traits"
harness = false
required-features = []
[[bench]]
name = "simple_advanced_benchmarks"
harness = false
required-features = []
[[bench]]
name = "factory"
harness = false
required-features = []