Releases: rabbitmq/rabbitmq-stream-dotnet-client
v1.4.0
The client is distributed via NuGet.
Enhancements
- Expose initial credits configuration by @Gsantomaggio in #265
Full Changelog: v1.3.0...v1.4.0
v1.3.0
The client is distributed via NuGet.
The main change is:
-
Run the Consumer
MessageHandler
in a Task in #250The
MessageHandler
is executed in a separateTask
in this way, the socket thread is free to receive the other command during
consumption.The message handler is now totally async:
await _config.MessageHandler(this, new MessageContext(message.MessageOffset,
TimeSpan.FromMilliseconds(chunk.Timestamp)), message).ConfigureAwait(false);
- We reduced the log noise in case of consumer disconnection. You can still enable the debug log configuration to see all the logs.
Enhancements
- Small super stream improvements by @Gsantomaggio in #236
- Fix spelling typo in client provided name by @ngbrown in #239
- Documentation website by @Gsantomaggio in #235
- Make github pages by @Gsantomaggio in #241
- Implement stream stats by @Gsantomaggio in #242
- Use UtcDateTime by @lukebakken in #243
- Miscellaneous code updates by @lukebakken in #244
- Use various modern dotnet build files by @lukebakken in #253
- Misc updates by @lukebakken in #256
- Run the Consumer MessageHandler in a Task by @Gsantomaggio in #250
- Convert functions result form long to ulong by @e-zoboli in #258
- Iterate _lastOffsetConsumed in a more simple way by @Pliner in #260
- Switch to Random.Shared by @Pliner in #259
New Contributors
- @ngbrown made their first contribution in #239
- @e-zoboli made their first contribution in #258
- @Pliner made their first contribution in #260
Full Changelog: v1.2.0...v1.3.0
v1.3.0-beta-1
The client is distributed via NuGet.
The main change is:
- Run the Consumer MessageHandler in a Task in #250
The socket thread is now free to receive the other command during consumption.
The message handler is now totally async:
await _config.MessageHandler(this, new MessageContext(message.MessageOffset,
TimeSpan.FromMilliseconds(chunk.Timestamp)), message).ConfigureAwait(false);
- We reduced the log noise in case of consumer disconnection. You can still enable the debug log configuration to see all the logs.
Enhancements
- Small super stream improvements by @Gsantomaggio in #236
- Fix spelling typo in client provided name by @ngbrown in #239
- Documentation website by @Gsantomaggio in #235
- Make GitHub pages by @Gsantomaggio in #241
- Implement stream stats by @Gsantomaggio in #242
- Use UtcDateTime by @lukebakken in #243
- Miscellaneous code updates by @lukebakken in #244
- Use various modern dotnet build files by @lukebakken in #253
- Misc updates by @lukebakken in #256
- Run the Consumer MessageHandler in a Task by @Gsantomaggio in #250
New Contributors
Full Changelog: v1.2.0...v1.3.0-beta.1
v1.2.0
The client is distributed via NuGet.
Bug Fix
- Handle System.InvalidOperationException in case of big buffer in #220
- Handle multi-types in the stream in #229
- Small Fix read boolean in #233
Enhancements
- Implement Deduplicating Producer in #234
- Improve the reconnect in #230
- Minor doc/code style cleanup by @ricardSiliuk in #223
- ConfigureAwait(false) for close stream/consumer/producer, query offset and create producer by @iuribrindeiro in #231
Deprecation
The field Reference
is deprecated in ProducerConfig
.
var producer = await Producer.Create(
new ProducerConfig(system, stream)
{
Reference = "hello", /// <<-- Deprecated
The Reference
is needed for deduplication. In this version there is a specific class for that: see #234
Full Changelog: v1.1.1...v1.2.0
V1.1.1
The client is distributed via NuGet.
Enhancements
- Minor doc/codestyle cleanup by @ricardSiliuk in #223
- Decode the address type by @Gsantomaggio in #219
Full Changelog: v1.1.0...v1.1.1
v1.1.0
The client is distributed via NuGet.
Enhancements
- Add net7.0 target in #215 and #216
- Fix the read in the AMQP parser in #217. The parser can now tolerate non-UTF8 data.
Full Changelog: v1.0.2...v1.1.0
v1.0.2
The client is distributed via NuGet.
What's Changed
- AMQP 1.0 Parser Calculate correct maps size add Symbol by @Gsantomaggio in #211
Note
- The client does not write the Properties correctly before this fix.
What is the side effect?
If an AMQP client reads the data written with this client (<= 1.0.1
) that contains Properties
or ApplicationProperites
will have this problem rabbitmq/rabbitmq-server#6837
What do I need to do?
- Nothing:
If you use only this client, it will continue to work.
If you don'tProperties
/ApplicationProperties
Full Changelog: v1.0.1...v1.0.2
v1.0.1
The client is distributed via NuGet.
Enhancements
- Add consumer name property by @Gsantomaggio in #203
- Add cancellation token during subscription by @Gsantomaggio in #206
Full Changelog: v1.0.0...v1.0.1
v1.0.0
The client is distributed via NuGet.
Breaking changes
- Adding
ILogger
abstraction and replacingLogEventSource
with it by @ricardSiliuk in #190 (See the documentation) - Rename the
SuperStreamConsumer
toRawSuperStreamConsumer
by @Gsantomaggio in #192
Enhancements
- Add SuperStream consumer info by @Gsantomaggio in #187
- Make the AddressResolver more generic by @Gsantomaggio in #189
- Add documentation for logging by @Gsantomaggio in #193
- Complete Super Stream Single Active consumer example by @Gsantomaggio in #197
- Change the error messages by @Gsantomaggio in #198
- Reduce the class's visibility by @Gsantomaggio in #199
- Sync-up editorconfig with RabbitMQ .NET client by @lukebakken in #194
- Add TaskCompletionSource to wait the test instead by @Gsantomaggio in #201
Full Changelog: v1.0.0-rc.8...v1.0.0
v1.0.0-rc.8
The client is distributed via NuGet.
Enhancements
- Add
GetAwaiter().GetResult();
on MessageHandler in #184 . It avoids thread pool exhaustion. Thanks to @ricsiLT for testing it. - Expose MessagesBufferSize in #183
Full Changelog: v1.0.0-rc.7...v1.0.0-rc.8