NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2934 most downloaded on crates.io
AMQP client library
Last release 19 days ago
18 Sep 2026
Ships unpredictably
gaps range from 8 days to 4 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
8 years old
201 releases · first in 2019
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
#### Bug Fixes * Error handling fixes
#### Bug Fixes * IoLoop error handling fixes
#### Bug Fixes * Fix a hang with rustls flush
Fix some edge cases issues with the internal buffer
#### Bug Fixes * Fix some issues with openssl * Flush socket for rustls
Work around a bug in mio where we sometimes wouldn't receive a readable notification for the socket
Fix overflow with high heartbeats
Connection::on_error and Consumer::set_delegate no longer require a Box
Connection::on_error and Consumer::set_delegate no longer require a BoxConnection::on_error now accept a FnMutNothing published for this version
Don't queue extraneous heartbeats if we cannot write to socket
Fix the way we schedule heartbeats to be sent
Properly put the Conneciton in Error state when we get closed with protocol error
Don't panic when CloseOnDrop tries to close an already closed Connection
Wait until a frame has been fully sent before notifying sender
Confirmation::Nack now carries an Option<Box<BasicReturnMessage>>Confirmation::Ack now carries an Option<Box<BasicReturnMessage>>Prevent a issue when hitting EWOULDBLOCK mid-frame with no other frame queued
Connection and Channel can be moved out of CloseOnDrop using into_inner()
Connection and Channel can be moved out of CloseOnDrop using into_inner()Confirmation can no longer hold an errorPublisherConfirm now returns a proper Result<Confirmation>CloseOnDrop<Connection>CloseOnDrop<Channel>PinkySwear is now hidden from the public APIAdd a new CloseOnDrop wrapper for automatically closing Connection or Channel when dropped.
Properly forward errors to publisher confirms awaiters
Track the frame-sending promise before the response one for syncrhonous methods
Properly report error in one internal place
Update pinky-swear to 2.1.0 to avoid any sync op on main thread
Update to pinky-swear 2.0.0 (shoudln't change much)
basic_publish now gives you a PinkySwear<Result<PublisherConfirm>>confirm_select, you can ignore itPublisherConfirm it will behave as before and you'll need to call wait_for_confirms PublisherConfirm to wait for this particular Confirmation (Ack/Nack(BasicReturnMEssage))Fix a bug when receiving basic-return before basic-nack
The Connect trait has been simplified
Connect trait has been simplifiedfutures feature doesn't exist anymore (always enabled)lapin-futures (0.1 futures compat) has been dropped#### Bug Fixes * Fix nom dependency
#### Bug Fixes * Fix hang on macos
Port to amq-protocol 5.0 and mio 0.7
Nothing published for this version
Nothing published for this version
Nothing published for this version
Prevent lapin-futures from eating memory when eagerly polled
Followup to 0.32.3 for consumers in lapin-futures
Fix waking up context when a future gets sent to another one
Fix race condition in Channel::close
Channel::closeFix Channel and Connection status in some cases
Properly handle critical error when reading from socket on first connection
Error::ConnectionRefused is replaced by the proper underlying ProtocolError or IOErrorDefaultExecutor::default() is now publicReceiving consumer or basic get deliveries on queue we didn't declare now works properly
Channel::basic_consume now takes an &str instead of a &Queue as its first parameterimpl From<_> for AMQPValueNew rustls-native-certs feature
ErrorHandler now takes the Error as a param
#### Bug Fixes * Fix PartialEq for Error
Ensure we properly write everything when we need to split contents
Switch the return types to pinky-swear (the API remains mostly the same)
pinky-swear (the API remains mostly the same)Fix some error handling in consumers
#### Features * Export ConsumerIterator
#### Features * Update dependencies
Fix some race conditions in the publisher confirms implementation
Channel::exchange_declare now takes an ExchangeKind parameter instead of an &str
Channel::exchange_declare now takes an ExchangeKind parameter instead of an &str#### Features * Update dependencies
Avoid Mutex around consumer delegate to enable proper multithreading
ConfirmationChannel::connection_[,un}blocked is now Connection::{,un}block
Channel::connection_[,un}blocked is now Connection::{,un}blockfailure as been replaced with std::error::Error usageConfirmation::as_error has been removedDeliveryResultIoLoop::run is now IoLoop::startupdate_secret for oauth2 authentication moduleIterator<Item = Delivery>Consumer::set_delegate now accepts a closure parameterlapin::ResultNothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →