Skip to content

Releases: cloudamqp/amqp-client.js

Release 3.4.1

28 Nov 07:32
b19b3c6

Choose a tag to compare

Fixed

  • Improve 'republish in consume block' test reliability - add proper message acknowledgment and increase timeout for high-volume message processing

Changed

  • Make npm scripts cross-platform compatible (#179)
  • Update dependencies: glob 10.4.5→10.5.0, js-yaml 4.1.0→4.1.1 (#173)
  • Export AMQPGeneratorConsumer for documentation generation (#172)

Release 3.4.0

13 Nov 09:09
1886952

Choose a tag to compare

Added

  • Add AsyncGenerator support to subscribe() for improved DX (#169)

Release 3.3.2

12 Sep 16:44

Choose a tag to compare

Fixed

  • Improve connection loss handling for WebSocket connections (#152)
  • Fix parallel queue binding issues (#154)
  • Properly handle heartbeat timeouts (#95)
  • Fix TypeScript callback types to support async callbacks (#155)
  • Return publish frame buffer to pool after send (#142)

Changed

  • Logger configuration improvements - console is no longer used as default logger, explicit logger parameter support added (#149)
  • Internal code improvements and optimizations (#140)
  • Add missing exports to WebSocket client (#147)

v3.2.1

12 Sep 12:38

Choose a tag to compare

What's Changed

Full Changelog: v3.2.0...v3.2.1

v3.2.0

09 Mar 19:14

Choose a tag to compare

  • Buffer all publish frames into a single huge buffer and send together
  • Properly reject failed connection attempt
  • TypeScript 5.7 fixes
  • Web Worker compatibility

v3.1.1

25 Aug 09:00

Choose a tag to compare

Update verions advertised by client, 3.1.0 did not update this

v3.1.0

23 Aug 09:35

Choose a tag to compare

Added

- Support for clients to negotiate channel-max ([#86](https://github.com/cloudamqp/amqp-client.js/pull/86))
- Raise when WebSocket is not cleanly closed ([#80](https://github.com/cloudamqp/amqp-client.js/pull/80))
- Make logging configurable ([#79](https://github.com/cloudamqp/amqp-client.js/pull/79))
- Support for connection.update-secret ([#77](https://github.com/cloudamqp/amqp-client.js/pull/77))

Fixed

- Channel max 0 should be treated as "unlimited" not 0 ([#86](https://github.com/cloudamqp/amqp-client.js/pull/86))
- Close sockets not supporting amqp protocol ([#78](https://github.com/cloudamqp/amqp-client.js/pull/78))

Changed

- Throws and rejects with `Error` as per best practice ([#81](https://github.com/cloudamqp/amqp-client.js/pull/81))
- Clean ups ([#88](https://github.com/cloudamqp/amqp-client.js/pull/88), [#85](https://github.com/cloudamqp/amqp-client.js/pull/85))
- Package improvements for bundling and tree-shaking ([#75](https://github.com/cloudamqp/amqp-client.js/pull/75))

v3.0.0

24 Jul 08:58

Choose a tag to compare

Added

- New overload for `AMQPWebSocketClient` constructor to allow setting optional
  parameters through an init object

Fixed

- Call socket.destroy() when closing socket to fix intermitent condition where
  onerror is called when conn is closed by client
- Pass the correct array buffer to dataview when reading framesize
- Raise `AMQPError` when `channelMax` is reached
- Add `Channel#onerror` callback
- Correctly handle frame headers split across reads in the WebSocket client

Changed

- Breaking change: Removed support for end-of-life versions of Node.js.
  A minimum of Node.js 16 is now required.

v2.1.1

12 Dec 23:10

Choose a tag to compare

2.1.1

v2.1.0

04 Aug 11:46

Choose a tag to compare

Added

  • AMQPClient#onerror, will be called whenever ther connection is closed, override it to create reconnect logic.
  • Export types for queue, exchange and consume parameters

Fixed

  • Only skip TLS certificate validation if the insecure query parameter is included in the URL
  • Use a pool of buffers so that multiple microtasks can publish simultaneously
  • Don't set an IP as SNI hostname, only proper hostnames
  • Decode username/password in URL properly

Changed

  • Allow publishing of null and let AMQPMessage#body be null when a body is missing