dropslot 0.2.0

A high-performance publish-subscribe library with latest-only delivery semantics
Documentation
[[bench]]
harness = false
name = "bus"
path = "benches/bus.rs"

[[bench]]
harness = false
name = "error"
path = "benches/error.rs"

[[bench]]
harness = false
name = "lib"
path = "benches/lib.rs"

[[bench]]
harness = false
name = "sub"
path = "benches/sub.rs"

[[bench]]
harness = false
name = "topic"
path = "benches/topic.rs"

[dependencies.ahash]
version = "0.8"

[dependencies.bytes]
optional = true
version = "1.8"

[dependencies.dashmap]
version = "6.1"

[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"

[dependencies.tokio]
features = ["sync", "rt", "rt-multi-thread", "macros", "time"]
version = "1.46"

[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.6"

[dev-dependencies.fastrand]
version = "2.3.0"

[[example]]
name = "basic_usage"
path = "examples/basic_usage.rs"

[[example]]
name = "high_performance"
path = "examples/high_performance.rs"

[[example]]
name = "real_world"
path = "examples/real_world.rs"
required-features = ["serde"]

[features]
bytes = ["dep:bytes"]
default = ["bytes"]
serde = ["dep:serde"]

[lib]
crate-type = ["lib"]
name = "dropslot"
path = "src/lib.rs"

[package]
authors = ["DropSlot Contributors"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["asynchronous", "concurrency"]
description = "A high-performance publish-subscribe library with latest-only delivery semantics"
documentation = "https://docs.rs/dropslot"
edition = "2024"
exclude = ["target/*", ".git/*", "coverage/*"]
homepage = "https://github.com/ViezeVingertjes/dropslot"
keywords = ["pubsub", "async", "tokio", "messaging", "performance"]
license = "MIT OR Apache-2.0"
name = "dropslot"
readme = "README.md"
repository = "https://github.com/ViezeVingertjes/dropslot"
rust-version = "1.85"
version = "0.2.0"

[profile.bench]
codegen-units = 1
debug = 2
lto = "thin"

[profile.release]
codegen-units = 1
lto = "thin"
opt-level = 3
panic = "abort"

[[test]]
name = "bus"
path = "tests/bus.rs"

[[test]]
name = "error"
path = "tests/error.rs"

[[test]]
name = "lib"
path = "tests/lib.rs"

[[test]]
name = "sub"
path = "tests/sub.rs"

[[test]]
name = "topic"
path = "tests/topic.rs"