[package]
edition = "2024"
rust-version = "1.88.0"
name = "lapin"
version = "4.0.0"
authors = [
"Geoffroy Couprie <geo.couprie@gmail.com>",
"Marc-Antoine Perennou <Marc-Antoine@Perennou.com>",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "AMQP client library"
documentation = "https://docs.rs/lapin"
readme = "README.md"
keywords = [
"amqp",
"rabbitmq",
"mio",
"futures",
]
categories = ["database"]
license = "MIT"
repository = "https://github.com/amqp-rs/lapin"
[badges.maintenance]
status = "actively-developed"
[features]
async-global-executor = [
"amq-protocol/async-global-executor",
"async-rs/async-global-executor",
"async-rs/async-io",
]
codegen = [
"codegen-internal",
"amq-protocol/codegen",
]
codegen-internal = [
"dep:amq-protocol-codegen",
"dep:serde_json",
]
default = [
"rustls",
"default-runtime",
]
default-runtime = ["tokio"]
hickory-dns = [
"amq-protocol/hickory-dns",
"async-rs/hickory-dns",
]
native-tls = ["amq-protocol/native-tls"]
openssl = ["amq-protocol/openssl"]
rustls = ["amq-protocol/rustls"]
rustls--aws_lc_rs = ["amq-protocol/rustls--aws_lc_rs"]
rustls--ring = ["amq-protocol/rustls--ring"]
rustls-native-certs = ["amq-protocol/rustls-native-certs"]
rustls-webpki-roots-certs = ["amq-protocol/rustls-webpki-roots-certs"]
smol = [
"amq-protocol/smol",
"async-rs/smol",
]
tokio = [
"amq-protocol/tokio",
"async-rs/tokio",
]
vendored-openssl = ["amq-protocol/vendored-openssl"]
[lib]
name = "lapin"
path = "src/lib.rs"
[[example]]
name = "client-certificate"
path = "examples/client-certificate.rs"
[[example]]
name = "connection"
path = "examples/connection.rs"
required-features = ["async-global-executor"]
[[example]]
name = "consumer"
path = "examples/consumer.rs"
[[example]]
name = "publisher_confirms"
path = "examples/publisher_confirms.rs"
[[example]]
name = "pubsub"
path = "examples/pubsub.rs"
[[example]]
name = "reconnect"
path = "examples/reconnect.rs"
required-features = ["async-global-executor"]
[[example]]
name = "smol"
path = "examples/smol.rs"
required-features = ["smol"]
[[example]]
name = "tokio"
path = "examples/tokio.rs"
required-features = ["tokio"]
[[test]]
name = "conn_refused"
path = "tests/conn_refused.rs"
[[test]]
name = "connection"
path = "tests/connection.rs"
[[test]]
name = "publisher_confirms"
path = "tests/publisher_confirms.rs"
[[test]]
name = "smol"
path = "tests/smol.rs"
required-features = ["smol"]
[[test]]
name = "tokio"
path = "tests/tokio.rs"
required-features = ["tokio"]
[dependencies.amq-protocol]
version = "^10.0.0"
default-features = false
[dependencies.async-rs]
version = "^0.8"
default-features = false
[dependencies.async-trait]
version = "^0.1.42"
[dependencies.backon]
version = "^1.6"
features = ["std"]
default-features = false
[dependencies.cfg-if]
version = "^1.0"
[dependencies.flume]
version = "^0.12"
features = ["async"]
default-features = false
[dependencies.futures-core]
version = "^0.3"
[dependencies.futures-io]
version = "^0.3"
[dependencies.tracing]
version = "^0.1"
default-features = false
[dev-dependencies.futures-lite]
version = "^2.0"
[dev-dependencies.serde_json]
version = "^1.0"
[dev-dependencies.smol]
version = "^2.0"
[dev-dependencies.tokio]
version = "^1.17"
features = [
"macros",
"rt-multi-thread",
]
[dev-dependencies.tracing-subscriber]
version = "^0.3.20"
features = ["fmt"]
[build-dependencies.amq-protocol-codegen]
version = "^10.0.0"
optional = true
[build-dependencies.serde_json]
version = "^1.0"
optional = true