Changes

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

1.2.0

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

1.1.0

release-date:2012-11-08 10:36 P.M UTC
  • No longer supports Pyhton 2.5
  • Fixed receiving of float table values.
  • Now Supports Python 3 and Python 2.6+ in the same source code.
  • Python 3 related fixes.

1.0.2

release-date:2012-11-06 05:00 P.M UTC
  • Now supports float values in headers/tables.

1.0.1

release-date:2012-11-05 01:00 P.M UTC
  • Connection errors does no longer include AttributeError.

  • Fixed problem with using the SSL transport in a non-blocking context.

    Fix contributed by Mher Movsisyan.

1.0.0

release-date:2012-11-05 01:00 P.M UTC
  • Channels are now restored on channel error, so that the connection does not have to closed.

Version 0.9.4

  • Adds support for exchange_bind and exchange_unbind.

    Contributed by Rumyana Neykova

  • Fixed bugs in funtests and demo scripts.

    Contributed by Rumyana Neykova

Version 0.9.3

  • Fixed bug that could cause the consumer to crash when reading large message payloads asynchronously.
  • Serialization error messages now include the invalid value.

Version 0.9.2

  • Consumer cancel notification support was broken (Issue #1)

    Fix contributed by Andrew Grangaard

Version 0.9.1

  • Supports draining events from multiple channels (Connection.drain_events)

  • Support for timeouts

  • Support for heartbeats
    • Connection.heartbeat_tick(rate=2) must called at regular intervals (half of the heartbeat value if rate is 2).
    • Or some other scheme by using Connection.send_heartbeat.
  • Supports RabbitMQ extensions:
    • Consumer Cancel Notifications
      • by default a cancel results in ChannelError being raised
      • but not if a on_cancel callback is passed to basic_consume.
    • Publisher confirms
      • Channel.confirm_select() enables publisher confirms.
      • Channel.events['basic_ack'].append(my_callback) adds a callback to be called when a message is confirmed. This callback is then called with the signature (delivery_tag, multiple).
  • Support for basic_return

  • Uses AMQP 0-9-1 instead of 0-8.
    • Channel.access_request and ticket arguments to methods removed.
    • Supports the arguments argument to basic_consume.
    • internal argument to exchange_declare removed.
    • auto_delete argument to exchange_declare deprecated
    • insist argument to Connection removed.
    • Channel.alerts has been removed.
    • Support for Channel.basic_recover_async.
    • Channel.basic_recover deprecated.
  • Exceptions renamed to have idiomatic names:
    • AMQPException -> AMQPError
    • AMQPConnectionException -> ConnectionError``
    • AMQPChannelException -> ChannelError``
    • Connection.known_hosts removed.
    • Connection no longer supports redirects.
    • exchange argument to queue_bind can now be empty to use the “default exchange”.
  • 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

Previous topic

amqp.serialization

This Page