[package]
name = "orbitive"
version = "0.6.11"
publish.workspace = true
edition.workspace = true
authors.workspace = true
description.workspace = true
license.workspace = true
repository.workspace = true
keywords = ["shared-memory", "ipc", "concurrency", "runtime", "fleet"]
categories = ["concurrency", "data-structures"]
documentation = "https://docs.rs/orbitive"
exclude.workspace = true
[package.metadata.docs.rs]
all-features = true
[features]
auth = ["dep:orbit-auth"]
cache = ["dep:orbit-cache", "arena"]
lock = ["dep:orbit-lock"]
events = ["dep:orbit-events"]
counter = ["dep:orbit-counter"]
quota = ["dep:orbit-quota"]
cell = ["dep:orbit-cell"]
arena = ["dep:orbit-arena"]
invoke = ["dep:orbit-invoke"]
invoke-tokio = ["invoke", "orbit-invoke?/tokio"]
link = ["dep:orbit-link"]
link-tokio = ["link", "orbit-link?/tokio"]
link-events = ["link-tokio", "events", "orbit-link?/events"]
metrics = ["dep:orbit-metrics"]
rustls = ["rustls_0_23"]
stream = ["dep:orbit-stream"]
stream-tokio = ["stream", "orbit-stream?/tokio"]
pool = ["dep:orbit-pool"]
pool-stream = ["pool", "stream", "orbit-pool?/pool-stream"]
client-pool = ["dep:orbit-client-pool"]
client-pool-fleet = ["client-pool", "pool-stream", "stream-tokio", "orbit-client-pool?/fleet"]
rustls_0_23 = ["dep:orbit-rustls", "orbit-rustls/rustls_0_23"]
rustls_0_24 = ["dep:orbit-rustls", "orbit-rustls/rustls_0_24"]
full = [
"auth",
"arena",
"cache",
"cell",
"events",
"counter",
"quota",
"invoke",
"link",
"metrics",
"lock",
"rustls",
"stream",
"stream-tokio",
"pool",
]
[dependencies]
orbit-auth = { workspace = true, optional = true }
orbit-core.workspace = true
orbit-arena = { workspace = true, optional = true }
orbit-cache = { workspace = true, optional = true }
orbit-lock = { workspace = true, optional = true }
orbit-events = { workspace = true, optional = true }
orbit-counter = { workspace = true, optional = true }
orbit-quota = { workspace = true, optional = true }
orbit-cell = { workspace = true, optional = true }
orbit-invoke = { workspace = true, optional = true }
orbit-link = { workspace = true, optional = true }
orbit-metrics = { workspace = true, optional = true }
orbit-pool = { workspace = true, optional = true }
orbit-client-pool = { workspace = true, optional = true }
orbit-rustls = { workspace = true, optional = true }
orbit-stream = { workspace = true, optional = true }
[workspace]
members = [
"auth",
"arena",
"cache",
"cli",
"counter",
"cell",
"quota",
"events",
"invoke",
"link",
"lock",
"rustls",
"core",
"metrics",
"stream",
"pool",
"client-pool",
]
resolver = "3"
[workspace.package]
publish = ["crates-io"]
edition = "2024"
authors = ["ilker Arabaci <iarabaci@claviron.dev>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/iadev09/orbitive"
description = "Bounded same-host coordination for Rust process fleets."
exclude = [
"ARCHITECTURE.md",
"*.local.md",
"FINDINGS.md",
"VISION.md",
"Dockerfile",
"Justfile",
]
[workspace.dependencies]
blake3 = { version = "1.8", features = ["zeroize"] }
orbit-auth = { version = "0.5.6", path = "auth", default-features = false }
orbit-core = { version = "0.5.11", path = "core", default-features = false }
orbit-cache = { version = "0.5.5", path = "cache", default-features = false }
orbit-lock = { version = "0.5.4", path = "lock", default-features = false }
orbit-events = { version = "0.5.5", path = "events", default-features = false }
orbit-counter = { version = "0.5.4", path = "counter", default-features = false }
orbit-quota = { version = "0.1.0", path = "quota", default-features = false }
orbit-cell = { version = "0.6.1", path = "cell", default-features = false }
orbit-arena = { version = "0.5.4", path = "arena", default-features = false }
orbit-invoke = { version = "0.5.4", path = "invoke", default-features = false }
orbit-link = { version = "0.6.6", path = "link", default-features = false }
orbit-metrics = { version = "0.5.4", path = "metrics", default-features = false }
orbit-pool = { version = "0.5.4", path = "pool", default-features = false }
orbit-client-pool = { version = "0.5.5", path = "client-pool", default-features = false }
orbit-stream = { version = "0.6.2", path = "stream", default-features = false }
orbit-rustls = { version = "0.5.7", path = "rustls", default-features = false }
bytes = "1.12.1"
base64 = "0.23.1"
chacha20poly1305 = { version = "0.11.0", default-features = false, features = ["alloc"] }
getrandom = "0.4.3"
hkdf = "0.13"
hmac = "0.13"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.11.1"
zeroize = "1"
async-trait = "0.1"
criterion = "0.8.2"
dashmap = "6.1"
libc = "0.2"
portable-atomic = { version = "1.15", default-features = false, features = ["fallback", "require-cas"] }
lru = "0.19.0"
netid64 = "0.1.1"
nix = { version = "0.31", features = ["process", "signal", "user", "fs"] }
rustls_0_23 = { package = "rustls", version = "0.23", default-features = false, features = ["std"] }
rustls_0_24 = { package = "rustls", version = "=0.24.0-dev.1", default-features = false }
thiserror = "2.0"
tokio = { version = "1", default-features = false, features = ["sync", "time"] }
tokio-util = { version = "0.7", default-features = false, features = ["rt"] }
tracing = "0.1.44"
[profile.release]
codegen-units = 1
debug = 0
incremental = false
lto = "thin"
opt-level = 3
panic = "unwind"