[workspace] resolver = "2" members = [".", "macros"] [profile.release] lto = true opt-level = 3 codegen-units = 1 [package.metadata.docs.rs] all-features = true [package] name = "kameo" description = "Fault-tolerant Async Actors Built on Tokio" version = "0.13.0" edition = "2021" readme = "README.md" repository = "https://github.com/tqwewe/kameo" license = "MIT OR Apache-2.0" categories = ["asynchronous", "concurrency", "rust-patterns"] keywords = ["actor", "tokio"] [features] remote = ["dep:libp2p", "dep:libp2p-identity", "dep:linkme", "dep:rmp-serde", "dep:internment"] [dependencies] kameo_macros = { version = "0.13.0", path = "./macros" } dyn-clone = "1.0" futures = "0.3" itertools = "0.13.0" internment = { version = "0.8.5", features = ["serde"], optional = true } libp2p = { version = "0.54.1", features = ["cbor", "dns", "kad", "mdns", "macros", "quic", "request-response", "rsa", "serde", "tokio"], optional = true } libp2p-identity = { version = "0.2.9", features = ["rand", "rsa"], optional = true } linkme = { version= "0.3.28", optional = true } once_cell = "1.19" rmp-serde = { version = "1.3.0", optional = true } serde = { version = "1.0", features = ["derive"] } tokio = { version = "1.37", features = ["macros", "rt", "sync", "time", "tracing"] } tokio-stream = "0.1" tracing = "0.1" [dev-dependencies] criterion = { version = "0.5", features = ["async_tokio"] } tokio = { version = "1", features = [ "macros", "rt", "rt-multi-thread", "sync", "time", ] } tokio-stream = { version = "0.1.15", features = ["time"] } tokio-test = "0.4.4" tracing-subscriber = { version = "0.3", features = ["env-filter"] } [[bench]] name = "fibonacci" harness = false [[bench]] name = "overhead" harness = false [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] }