Releases: primait/amqpx
7.0.0
Changed
-
When you pass an
x-queue-type
toAmqpx.Helper.declare/2
now it will be used also for the dead letter queueThis is a breaking change: if you are already using
Helper.declare
with anx-queue-type
that is not the default type this will try to change the dead letter queue type.In this case you can either remove the dead letter queue and recreate it with the correct type, or you can migrate to a new dead letter queue with a different name and remove the old one when it's fully drained:
queue_spec = %{ queue: "test_1", opts: [ durable: true, arguments: [ {"x-queue-type", :longstr, "quorum"}, {"x-dead-letter-exchange", :longstr, "test_dle"}, {"x-dead-letter-routing-key", :longstr, "test_rk"} ] ], exchanges: [ %{name: "test_exchange", type: :topic, routing_keys: ["test_rk"], opts: [durable: true]}, ] } # As an example we'll take the following `Amqpx.Helper.declare` # that creates a queue called `test_1` and a corresponding `test_1_errored` :ok = Amqpx.Helper.declare(chan, queue_spec) # Amqpx.Helper.setup_queue/2 takes the exact same queue_spec # as declare/2 but it doesn't declare the dead letter queue :ok = Amqpx.Helper.setup_queue(chan, queue_spec) # Now we can create a new dead letter queue with type "quorum" # by using a different name, we just need to make sure # its routing key will match the `x-dead-letter-routing-key` argument :ok = Amqpx.Helper.setup_dead_lettering(chan, %{ routing_key: "test_rk", queue: "test_1_dlq", exchange: "test_dle", queue_opts: [durable: true, arguments: [{"x-queue-type", :longstr, "quorum"}]] }) # At this point dead-lettered messages should be delivered to both # `test_1_errored` and `test_1_dlq`, in this way we can migrate everything # to the new one and as soon as it empties we can remove the old one
-
The
original_routing_keys
option accepted byAmqpx.Helper.setup_dead_lettering/2
must be a[String.t()]
, if you are passing a[[String.t()]]
to this function you have to pipe troughList.flatten
now
Added
Amqpx.Helper.setup_dead_lettering/2
now accepts aqueue_opts
key which will be used as third argument forAmqpx.Queue.declare/3
Commits
- [DEVEX-2399]: Make errored queues configurable (#213) by Emiliano
6.1.3
Fixed
- Elixir applications are no more forced to start
Amqpx.SignalHandler
manually
Updated
-
rabbit libraries to
amqp_client
andrabbit_common
to 4.0 -
Increased minimum supported elixir version to 1.16, otp 26
This is due to elixir rabbit not supporting the older versions of the libraries
Commits
6.1.2
6.1.1
6.1.0
Added
- (#208) Introduces the possibility
of configuring a signal handler which can be used for graceful termination.
When the SIGTERM arrive, we cancel all the consumer to stop taking new
messages.
Changed
- Minimum supported Elixir version is now 1.14
Commits
- format (#209) by Cristiano Piemontese
- [COART-181]: Check Gracefully termination in all our applications (#208) by Emilio Junior Francischetti
- Bump ex_doc from 0.34.2 to 0.35.1 (#207) by dependabot[bot]
- Bump dialyxir from 1.4.3 to 1.4.5 (#206) by dependabot[bot]
- Bump credo from 1.7.8 to 1.7.10 (#205) by dependabot[bot]
- Update CODEOWNERS (#204) by Cristiano Piemontese
6.0.4
Added
- (#199)
host
param will be resolved to a list ofip
s, if it's a
hostname, and the connection will be established to the first available one.
Commits
- Prepare 0.6.4 release (#202) by Simone Cottini
- [PLATFORM-2274]: Investigate possible DNS caching issues on our rabbitmq libraries (#199) by Simone Cottini
- Bump credo from 1.7.7 to 1.7.8 (#200) by dependabot[bot]
- Bump ex_doc from 0.34.1 to 0.34.2 (#198) by dependabot[bot]
- Bump ex_doc from 0.34.0 to 0.34.1 (#197) by dependabot[bot]
- Bump credo from 1.7.6 to 1.7.7 (#196) by dependabot[bot]
- Bump ex_doc from 0.33.0 to 0.34.0 (#195) by dependabot[bot]
6.0.3
Fixed
- (#190) Suppress noisy error logs at GenServer shutdown.
- (#191) GenServer now trap exit and gracefully shutdown instead of force
the process to exit.
Commits
- v6.0.3 (#194) by Simone Cottini
- Remove (useless) flaky test (#192) by Matteo Busi
- Fix connection manager (#191) by Matteo Busi
- Add amqp_gen_consumer behaviour implementation (#190) by Matteo Busi
- Bump ex_doc from 0.32.2 to 0.33.0 (#193) by dependabot[bot]
- Bump ex_doc from 0.32.1 to 0.32.2 (#188) by dependabot[bot]
- Bump credo from 1.7.5 to 1.7.6 (#189) by dependabot[bot]
- Bump amqp_client from 3.12.13 to 3.12.14 (#187) by dependabot[bot]
- Bump ex_doc from 0.31.2 to 0.32.1 (#186) by dependabot[bot]
- Bump ex_doc from 0.31.1 to 0.31.2 (#185) by dependabot[bot]
- Bump credo from 1.7.4 to 1.7.5 (#184) by dependabot[bot]
- Bump amqp_client from 3.12.12 to 3.12.13 (#183) by dependabot[bot]
- Bump credo from 1.7.3 to 1.7.4 (#182) by dependabot[bot]
- Bump ex_doc from 0.31.0 to 0.31.1 (#181) by dependabot[bot]
- Bump amqp_client from 3.12.11 to 3.12.12 (#179) by dependabot[bot]
- Bump credo from 1.7.2 to 1.7.3 (#180) by dependabot[bot]
- 6.0.2-rc.0 (#178) by Simone Cottini
- [PLATFORM-1369]: Migrate amqpx to GHA (#173) by Simone Cottini
- Bump dialyxir from 1.4.2 to 1.4.3 (#177) by dependabot[bot]
- Bump ex_doc from 0.30.9 to 0.31.0 (#174) by dependabot[bot]
- Bump amqp_client from 3.12.10 to 3.12.11 (#175) by dependabot[bot]
- Bump credo from 1.7.1 to 1.7.2 (#176) by dependabot[bot]
- Bump amqp_client from 3.12.9 to 3.12.10 (#172) by dependabot[bot]
- Bump amqp_client from 3.12.8 to 3.12.9 (#171) by dependabot[bot]
- Bump amqp_client from 3.12.7 to 3.12.8 (#170) by dependabot[bot]
- Bump dialyxir from 1.4.1 to 1.4.2 (#167) by dependabot[bot]
- Bump ex_doc from 0.30.7 to 0.30.9 (#168) by dependabot[bot]
- Bump amqp_client from 3.12.6 to 3.12.7 (#169) by dependabot[bot]
- Bump ex_doc from 0.30.6 to 0.30.7 (#166) by dependabot[bot]
- Bump credo from 1.7.0 to 1.7.1 (#165) by dependabot[bot]
- Bump amqp_client from 3.12.4 to 3.12.6 (#164) by dependabot[bot]
- Bump dialyxir from 1.4.0 to 1.4.1 (#163) by dependabot[bot]
- Update dependabot.yml (#162) by Cristiano Piemontese
- Bump dialyxir from 1.3.0 to 1.4.0 (#159) by dependabot[bot]
- Bump ex_doc from 0.30.5 to 0.30.6 (#160) by dependabot[bot]
- Bump amqp_client from 3.12.3 to 3.12.4 (#161) by dependabot[bot]
- Bump amqp_client from 3.12.2 to 3.12.3 (#158) by dependabot[bot]
- Bump ex_doc from 0.30.4 to 0.30.5 (#157) by dependabot[bot]
- Bump ex_doc from 0.30.3 to 0.30.4 (#156) by dependabot[bot]
- Bump ex_doc from 0.30.1 to 0.30.3 (#153) by dependabot[bot]
- Bump amqp_client from 3.12.1 to 3.12.2 (#154) by dependabot[bot]
- Bump ex_doc from 0.29.4 to 0.30.1 (#152) by dependabot[bot]
- Bump amqp_client from 3.12.0 to 3.12.1 (#151) by dependabot[bot]
- Bump mock from 0.3.7 to 0.3.8 (#150) by dependabot[bot]
- Bump amqp_client from 3.11.13 to 3.12.0 (#149) by dependabot[bot]
- Bump dialyxir from 1.2.0 to 1.3.0 (#148) by dependabot[bot]
- Bump amqp_client from 3.11.12 to 3.11.13 (#147) by dependabot[bot]
- [PLATFORM-1032]: Add changelog (#144) by Cristiano Piemontese
- Bump amqp_client from 3.9.11 to 3.11.12 (#146) by dependabot[bot]
- Bump ex_doc from 0.28.4 to 0.29.4 (#145) by dependabot[bot]
- Bump dialyxir from 1.1.0 to 1.2.0 (#116) by dependabot[bot]
- Bump credo from 1.6.5 to 1.7.0 (#143) by dependabot[bot]
6.0.2-rc.0
- 6.0.2-rc.0 (#178) by Simone Cottini
- [PLATFORM-1369]: Migrate amqpx to GHA (#173) by Simone Cottini
- Bump dialyxir from 1.4.2 to 1.4.3 (#177) by dependabot[bot]
- Bump ex_doc from 0.30.9 to 0.31.0 (#174) by dependabot[bot]
- Bump amqp_client from 3.12.10 to 3.12.11 (#175) by dependabot[bot]
- Bump credo from 1.7.1 to 1.7.2 (#176) by dependabot[bot]
- Bump amqp_client from 3.12.9 to 3.12.10 (#172) by dependabot[bot]
- Bump amqp_client from 3.12.8 to 3.12.9 (#171) by dependabot[bot]
- Bump amqp_client from 3.12.7 to 3.12.8 (#170) by dependabot[bot]
- Bump dialyxir from 1.4.1 to 1.4.2 (#167) by dependabot[bot]
- Bump ex_doc from 0.30.7 to 0.30.9 (#168) by dependabot[bot]
- Bump amqp_client from 3.12.6 to 3.12.7 (#169) by dependabot[bot]
- Bump ex_doc from 0.30.6 to 0.30.7 (#166) by dependabot[bot]
- Bump credo from 1.7.0 to 1.7.1 (#165) by dependabot[bot]
- Bump amqp_client from 3.12.4 to 3.12.6 (#164) by dependabot[bot]
- Bump dialyxir from 1.4.0 to 1.4.1 (#163) by dependabot[bot]
- Update dependabot.yml (#162) by Cristiano Piemontese
- Bump dialyxir from 1.3.0 to 1.4.0 (#159) by dependabot[bot]
- Bump ex_doc from 0.30.5 to 0.30.6 (#160) by dependabot[bot]
- Bump amqp_client from 3.12.3 to 3.12.4 (#161) by dependabot[bot]
- Bump amqp_client from 3.12.2 to 3.12.3 (#158) by dependabot[bot]
- Bump ex_doc from 0.30.4 to 0.30.5 (#157) by dependabot[bot]
- Bump ex_doc from 0.30.3 to 0.30.4 (#156) by dependabot[bot]
- Bump ex_doc from 0.30.1 to 0.30.3 (#153) by dependabot[bot]
- Bump amqp_client from 3.12.1 to 3.12.2 (#154) by dependabot[bot]
- Bump ex_doc from 0.29.4 to 0.30.1 (#152) by dependabot[bot]
- Bump amqp_client from 3.12.0 to 3.12.1 (#151) by dependabot[bot]
- Bump mock from 0.3.7 to 0.3.8 (#150) by dependabot[bot]
- Bump amqp_client from 3.11.13 to 3.12.0 (#149) by dependabot[bot]
- Bump dialyxir from 1.2.0 to 1.3.0 (#148) by dependabot[bot]
- Bump amqp_client from 3.11.12 to 3.11.13 (#147) by dependabot[bot]
- [PLATFORM-1032]: Add changelog (#144) by Cristiano Piemontese
- Bump amqp_client from 3.9.11 to 3.11.12 (#146) by dependabot[bot]
- Bump ex_doc from 0.28.4 to 0.29.4 (#145) by dependabot[bot]
- Bump dialyxir from 1.1.0 to 1.2.0 (#116) by dependabot[bot]
- Bump credo from 1.6.5 to 1.7.0 (#143) by dependabot[bot]