ringfire 0.5.2

Zero-copy lock-free inter-process communication (IPC) ring buffer and shared memory bus in Rust, with ring mirroring across hosts
Documentation
[package]
name = "ringfire"
authors = ["alex09x <alex@prod.codes>"]
version = "0.5.2"
edition = "2024"
rust-version = "1.88"
description = "Zero-copy lock-free inter-process communication (IPC) ring buffer and shared memory bus in Rust, with ring mirroring across hosts"
license = "MIT OR Apache-2.0"
repository = "https://github.com/alex09x/ringfire"
readme = "README.md"
keywords = ["ipc", "shared-memory", "lock-free", "ring-buffer", "hft"]
categories = ["concurrency", "asynchronous"]

[lib]
crate-type = ["lib", "cdylib", "staticlib"]

[[bin]]
name = "ringfire"
path = "src/bin/ringfire.rs"

[dependencies]
memmap2 = "0.9"
libc = "0.2"
tokio = { version = "1", features = ["sync", "rt", "time", "macros"], optional = true }
futures-core = { version = "0.3", optional = true }

[features]
default = ["tokio"]
tokio = ["dep:tokio", "dep:futures-core"]

[dev-dependencies]
serde_json = "1"
criterion = { version = "0.5" }
tokio = { version = "1", features = ["full"] }

[[bench]]
name = "throughput"
harness = false

[[bench]]
name = "latency"
harness = false

[[bench]]
name = "blackboard"
harness = false

[[bench]]
name = "arena_vs_fixed"
harness = false

[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1

[[bench]]
name = "ipc_compare"
harness = false