Skip to content

Releases: rabbitmq-community/rstream

v0.28.0

04 Dec 13:35
f858d85
Compare
Choose a tag to compare

Note

This version contains only the configuration for the PIP deployment.
Please refer to https://github.com/rabbitmq-community/rstream/releases/tag/0.20.7 as last version

What's Changed

Full Changelog: 0.20.7...0.28.0

v0.20.7

27 Nov 08:11
0a45787
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.20.6...0.20.7

v0.20.6

16 Oct 12:20
e0bde68
Compare
Choose a tag to compare

What's Changed

  • Fixed a bug when subscriber frames not clears after unsubscribe by @nesb1 in #211
  • Fixed a bug when used consumer_update_listener callback from another subscription by @nesb1 in #210

Full Changelog: 0.20.5...0.20.6

v0.20.5

02 Oct 07:10
85c5b96
Compare
Choose a tag to compare

What's Changed

  • Fixed a bug in the single active consumer scenario: See #206 for more information by @nesb1
  • Better management of heartbeat scenario: See #208 from more information by @DanielePalaia

Full Changelog: 0.20.4...0.20.5

v0.20.4

18 Sep 08:45
2d9c820
Compare
Choose a tag to compare

What's Changed

Fixed a bug when, after unsubscribing, the next subscriber with the same subscriber name used a first subscriber callback and ignore second subscriber callback: #204 by @nesb1

Full Changelog: 0.20.3...0.20.4

v0.20.3

03 Sep 13:35
0999ee1
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.20.2...0.20.3

v0.20.2

28 Aug 08:26
337f3ee
Compare
Choose a tag to compare

What's Changed

  • Bug fix when resubscribing the same subscriber_name in a Consumer: See #198

v0.20.1

11 Jun 13:23
619006f
Compare
Choose a tag to compare

Adding typing_extensions dependency in tool.poetry.dependencies to avoid importing it

v0.20.0

28 May 13:25
3e24496
Compare
Choose a tag to compare

What's Changed

  • Migrating away from uamqp library: Till now, we were using the uamqp library as amqp 1.0 codec for the streaming protocol:
    https://github.com/Azure/azure-uamqp-python.

    This library (which is partially using cython) is not correctly compiling on ARM architectures (see
    #183)
    Furthermore, it will be supported only til 2025 (Azure/azure-uamqp-python#374)

    We put some effort to integrating a new amqp 1.0 codec based on the work done here:

    https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/servicebus/azure-servicebus/azure/servicebus/_pyamqp

    Which is a pure Python codec.

    You can see the integration here:

    #194

    The new codec creates a breaking change: The body field in the Producers is just a binary.

    While before code like this was correct:

      amqp_message = AMQPMessage(
        body="hello: {}".format(i),
    )
    

    We now need to specify the body as binary (body is now indeed a list of bytes)

      amqp_message = AMQPMessage(
        body=bytes("hello: {}".format(i), "utf-8"),
    )
    
    

    Also, some imports may now be different. If you used MessageProperties before, for example:

 import uamqp
 
 message_properties = uamqp.message.MessageProperties("MessageId"+str(i), None, bytes("guest",'utf-8'), None, "CorrelationId"+str(i), "text/plain", "utf-8", None, None, None, None, 9999, "MyReplyToGroupId", None)

You now need to use the class exported on rstream like:

from rstream import Properties
message_properties = Properties(message_id="MessageId"+str(i), user_id=None, to=bytes("guest",'utf-8'), subject=None, correlation_id="CorrelationId"+str(i), content_type="text/plain", content_encoding="utf-8", absolute_expiry_time=None, creation_time=None, reply_to_group_id="MyReplyToGroupId")

There are also some benefits to this migration as performance seems overall better at around 10/15%

v0.19.1

02 May 09:35
58c4ef3
Compare
Choose a tag to compare

What's Changed

  • avoiding an asyncio.CancelledError in _publish_buffered_messages during the close() of producers that sometimes was happning. See #190