amq-protocol-types 10.6.0

AMQP specifications - types
Documentation

API Docs Build status Downloads Dependency Status LICENSE

AMQP 0-9-1 protocol codec and TCP/TLS connection layer for Rust.

This workspace provides the low-level AMQP 0-9-1 building blocks used by lapin. It is split into focused sub-crates that can also be used independently.

Crates in this workspace

Crate docs.rs Purpose
amq-protocol docs Main entry point; re-exports all sub-crates
amq-protocol-types docs AMQP scalar and compound types, wire-format codec
amq-protocol-uri docs amqp:// / amqps:// URI parsing
amq-protocol-tcp docs TCP/TLS connection from an AMQPUri
amq-protocol-codegen docs Build-time code generation from the RabbitMQ spec

Most users should depend on amq-protocol directly — it re-exports everything and wires up the sub-crates. Depend on a sub-crate only when you need a strict subset of the functionality.

Feature flags

Async runtime (pick exactly one)

Flag Notes
tokio (default) Requires a running Tokio runtime
smol Uses the smol executor
async-global-executor Uses async-global-executor

TLS backend (pick at most one)

Flag Notes
rustls (default) TLS via rustls
native-tls TLS via the platform's native library
openssl TLS via OpenSSL

Rustls certificate store (when rustls is active)

Flag Notes
rustls-platform-verifier (default) Uses the platform trust store
rustls-native-certs Loads native root certificates
rustls-webpki-roots-certs Uses the webpki bundled root set

Rustls crypto provider (at least one required)

Flag Notes
rustls--aws_lc_rs (default) Uses aws-lc-rs
rustls--ring Uses ring (more portable, e.g. builds on Windows)

Miscellaneous

Flag Notes
codegen Force protocol code regeneration at build time
verbose-errors More detailed AMQP parser error messages
hickory-dns Hickory DNS resolver (avoids spurious network hangs)