Skip to content

v0.8.0

Latest
Compare
Choose a tag to compare
@CJPoll CJPoll released this 10 Nov 04:22
· 41 commits to master since this release

Final cut of 0.8.0.

Changes from RC1:

  1. Subscribex.publish raises a Subscribex.InvalidPayloadException when attempting to publish anything other than binary data.

Release notes from RC1:

This bumps the AMQP dependency to 0.3.0.

This was tested using elixir 1.3, 1.4, and 1.5, using Erlang 19.3 for 1.3/1.4, and Erlang 20 with 1.5. No issues were seen in any case. However, this is a release candidate, and breaking changes have occurred in this release since the last RC.

Breaking Changes from RC0:

The type signature of handle_error has changed from:
@callback handle_error(RuntimeError.t, payload) :: ignored
to
@callback handle_error(payload, channel, Subscribex.delivery_tag, RuntimeError.t) :: ignored
This reflects the parameter order in handle_payload/4.

When auto_ack is set to true, Subscribex will not automatically ack the message if an error is raised in handle_payload. Instead, handle_error/4 should be used to reject the message. Note that Rabbit's default behavior for reject is to re-enqueue the message. If this is undesirable, the requeue: false option should be specified in Subscribex.reject(channel, delivery_tag, requeue: false)

The license was changed from CopyLeft to MIT. The notice has been added to the bottom of the README.