No changes yet.
Contributed by utilum.
Minimum amq-protocol
version is now 2.2.0
.
Unprocessed frames received on a connection are now correctly cleared when an exception occurs.
Contributed by Michael Lutsiuk.
GitHub issue: #218
Minimum amq-protocol
version is now 2.1.0
.
Minimum amq-protocol
version is now 2.0.1
.
Contributed by Neil Hooey.
GH issue: #222.
Ensures frameset is cleared after an unhandled exception. This avoids confusing exceptions such as
undefined method `method_class' for #<AMQ::Protocol::BodyFrame:0x0000001e8a60b0>
Contributed by Michael Lutsiuk.
GH issue: #218
Contributed by Rian McGuire.
Server-named queues are now correctly recovered again.
Contributed by Jack C Hong.
connection.blocked notifications are now correctly supported by the library:
EventMachine.run do
connection = AMQP.connect(:host => '127.0.0.1')
connection.on_blocked do |conn, conn_blocked|
puts "Connection blocked, reason: #{conn_blocked.reason}"
end
connection.on_unblocked do |conn, _|
puts "Connection unblocked"
end
end
amqp gem now supports Exchange-to-Exchange Bindings, a RabbitMQ extension.
AMQP::Exchange#bind
and AMQP::Exchange#unbind
work very much like AMQP::Queue#bind
and
AMQP::Queue#unbind
, with the argument exchange being the source one.
Contributed by Stefan Kaes.
amqp gem now supports declaration of internal exchanges (used via exchange-to-exchange bindings, cannot be published to by clients).
To declare an exchange as internal, add :internal => true
to
declaration options.
Contributed by Stefan Kaes.
Set connection status to closed on connection failure, which means connection retries succeed.
Contributed by Marius Hanne.
amqp gem now supports Authentication Failure Notification. Public API for authentication failure handling hasn't changed.
This extension is available in RabbitMQ 3.2+.
basic.qos
setting will now be recovered first thing after
channel recovery, to the most recent value passed via :prefetch
channel
constructor option or AMQP::Channel#prefetch
.
Minimum amq-protocol
version is now 1.9.2
.
Automatic connection recovery now correctly recovers bindings again.
Contributed by Devin Christensen.
amqp gem now allows for 65535 channels per connection and not Ruby process.
Contributed by Neo (http://neo.com) developers.
This eliminates a race condition in some codebases that use very short lived channels.
ConnectionClosedError
from amq-client
is now defined again.
AMQP::Exchange#handle_declare_ok
no longer raises an exception
about undefined methods #anonymous?
and #exchange
.
Minimum amq-protocol
version is now 1.8.0
which includes
a bug fix for messages exactly 128 Kb in size.
amq-client
has been incorporated into amqp gem. AMQ::Client
and related
modules are no longer available.
AMQP::Channel#confirm_select
is now delayed until after the channel
is opened, making it possible to use it with the pseudo-synchronous
code style.
amqp gem has been targeting RabbitMQ exclusively for a while now.
RabbitMQ extensions are now loaded by default and will be even more tightly integrated in the future.
AMQP::Channel.default
and method_missing-based operations on the default
channel has been removed. They've been deprecated since 0.6.
AMQP::RPC
-related code has been removed. It has been deprecated
since 0.7.
Long time deprecated AMQP::Channel.on_error
is removed.
Most of public API bits deprecated in 0.8.0 are COMPLETELY REMOVED.