py-amqp is fork of amqplib used by Kombu containing additional features and improvements. The previous amqplib changelog is here: http://code.google.com/p/py-amqplib/source/browse/CHANGES
release-date: | 2013-11-11 3:30 P.M UTC |
---|
SSLTransport: Now keeps read buffer if an exception is raised (Issue #26).
Fix contributed by Tommie Gannert.
release-date: | 2013-10-29 2:00 P.M UTC |
---|
release-date: | 2013-10-24 04:00 P.M UTC |
---|
release-date: | 2013-09-04 02:39 P.M UTC |
---|
Now sets Message.channel on delivery (Issue #12)
amqplib used to make the channel object available as Message.delivery_info['channel'], but this was removed in py-amqp. librabbitmq sets Message.channel, which is a more reasonable solution in our opinion as that keeps the delivery info intact.
New option to wait for publish confirmations (Issue #3)
There is now a new Connection confirm_publish that will force any basic_publish call to wait for confirmation.
Enabling publisher confirms like this degrades performance considerably, but can be suitable for some applications and now it’s possible by configuration.
queue_declare now returns named tuple of type basic_declare_ok_t.
Supporting fields: queue, message_count, and consumer_count.
Contents of Channel.returned_messages is now named tuples.
Supporting fields: reply_code, reply_text, exchange, routing_key, and message.
Sockets now set to close on exec using the FD_CLOEXEC flag.
Currently only supported on platforms supporting this flag, which does not include Windows.
Contributed by Tommie Gannert.
release-date: | 2013-08-16 05:30 P.M UTC |
---|
release-date: | 2012-11-12 04:00 P.M UTC |
---|
New exception hierarchy:
- AMQPError
- ConnectionError
- RecoverableConnectionError
- ConsumerCancelled
- ConnectionForced
- ResourceError
- IrrecoverableConnectionError
- ChannelNotOpen
- FrameError
- FrameSyntaxError
- InvalidCommand
- InvalidPath
- NotAllowed
- UnexpectedFrame
- AMQPNotImplementedError
- InternalError
- ChannelError
- RecoverableChannelError
- ContentTooLarge
- NoConsumers
- ResourceLocked
- IrrecoverableChannelError
- AccessRefused
- NotFound
- PreconditionFailed
release-date: | 2012-11-08 10:36 P.M UTC |
---|
release-date: | 2013-07-31 16:00 P.M BST |
---|
Fixed problems with the SSL transport (Issue #15).
Fix contributed by Adrien Guinet.
Small optimizations
release-date: | 2013-03-21 03:30 P.M UTC |
---|
release-date: | 2013-03-08 10:40 A.M UTC |
---|
release-date: | 2013-02-08 01:00 P.M UTC |
---|
Workaround for bug on some Python 2.5 installations where (2**32) is 0.
Can now serialize the ARRAY type.
Contributed by Adam Wentz.
Fixed tuple format bug in exception (Issue #4).
release-date: | 2012-11-29 01:14 P.M UTC |
---|
release-date: | 2012-11-21 04:00 P.M UTC |
---|
Channel.basic_cancel is now ignored if the channel was already closed.
Channel.events is now a dict of sets:
>>> channel.events['basic_return'].add(on_basic_return)
>>> channel.events['basic_return'].discard(on_basic_return)
release-date: | 2012-11-12 04:00 P.M UTC |
---|
release-date: | 2012-11-05 01:00 P.M UTC |
---|
Connection errors no longer includes AttributeError.
Fixed problem with using the SSL transport in a non-blocking context.
Fix contributed by Mher Movsisyan.
release-date: | 2012-11-05 01:00 P.M UTC |
---|
Adds support for exchange_bind and exchange_unbind.
Contributed by Rumyana Neykova
Fixed bugs in funtests and demo scripts.
Contributed by Rumyana Neykova
Consumer cancel notification support was broken (Issue #1)
Fix contributed by Andrew Grangaard
Supports draining events from multiple channels (Connection.drain_events)
Support for timeouts
Support for basic_return
Adds Connection.is_alive that tries to detect whether the connection can still be used.
Adds Connection.connection_errors and .channel_errors, a list of recoverable errors.
Exposes the underlying socket as Connection.sock.
Adds Channel.no_ack_consumers to keep track of consumer tags that set the no_ack flag.
Slightly better at error recovery