[package]
edition = "2024"
rust-version = "1.85"
name = "ramqp"
version = "0.5.3"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A from-scratch, clean-room AMQP 1.0 client."
readme = "README.md"
keywords = [
"amqp",
"amqp1",
"messaging",
"tokio",
"async",
]
categories = [
"network-programming",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/ZerosAndOnesLLC/rAMQP"
[package.metadata.docs.rs]
all-features = true
[features]
default = []
native-tls = [
"dep:tokio-native-tls",
"dep:native-tls",
]
rustls = [
"dep:tokio-rustls",
"dep:rustls",
"dep:webpki-roots",
"dep:rustls-pemfile",
]
scram = [
"dep:hmac",
"dep:sha1",
"dep:sha2",
"dep:pbkdf2",
"dep:base64",
"dep:stringprep",
]
transaction = []
ws = [
"dep:tokio-tungstenite",
"dep:http",
]
[lib]
name = "ramqp"
path = "src/lib.rs"
[[example]]
name = "produce_consume"
path = "examples/produce_consume.rs"
[[example]]
name = "soak"
path = "examples/soak.rs"
[[example]]
name = "stress"
path = "examples/stress.rs"
[[example]]
name = "throughput"
path = "examples/throughput.rs"
[[test]]
name = "broker"
path = "tests/broker.rs"
[[test]]
name = "tls"
path = "tests/tls.rs"
[[test]]
name = "ws"
path = "tests/ws.rs"
[[bench]]
name = "codec"
path = "benches/codec.rs"
harness = false
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.bytes]
version = "1"
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.hmac]
version = "0.12"
optional = true
[dependencies.http]
version = "1"
optional = true
[dependencies.native-tls]
version = "0.2"
optional = true
[dependencies.ordered-float]
version = "5"
[dependencies.pbkdf2]
version = "0.12"
features = ["hmac"]
optional = true
default-features = false
[dependencies.pin-project-lite]
version = "0.2"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"tls12",
]
optional = true
default-features = false
[dependencies.rustls-pemfile]
version = "2"
optional = true
[dependencies.sha1]
version = "0.10"
optional = true
[dependencies.sha2]
version = "0.10"
optional = true
[dependencies.slab]
version = "0.4"
[dependencies.stringprep]
version = "0.1"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"sync",
"io-util",
"net",
"rt",
"macros",
"time",
]
[dependencies.tokio-native-tls]
version = "0.3"
optional = true
[dependencies.tokio-rustls]
version = "0.26"
features = [
"ring",
"tls12",
]
optional = true
default-features = false
[dependencies.tokio-tungstenite]
version = "0.24"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.uuid]
version = "1"
features = ["v4"]
[dependencies.webpki-roots]
version = "0.26"
optional = true
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.tokio]
version = "1"
features = [
"full",
"test-util",
]
[dev-dependencies.tokio-tungstenite]
version = "0.24"
[profile.bench]
debug = 2