RabbitMQ client for the stream protocol


Build Status codecov nuget Dependabot Dependabot

The RabbitMQ Stream .NET Client is a .NET library to communicate with the RabbitMQ Stream Plugin. It allows to create and delete streams, as well as to publish to and consume from these streams.

The client is distributed via NuGet.

Please refer to the documentation (PDF) to find out more.

Support

How to Use

Pre-requisites

The library requires .NET 6, .NET 7 or .NET 8.

Documentation

Build from source

Build:

make build

Test:

make test

To execute the tests you need a RabbitMQ 3.13.x running with the following plugins enabled:

  • rabbitmq_management
  • rabbitmq_stream
  • rabbitmq_stream_management
  • rabbitmq_amqp1_0

Publish the documentation to github pages:

Make sure you are in the main branch

make publish-github-pages

Release Process

  • Ensure builds are green: link
  • Tag the main branch using your GPG key:
    git tag -a -s -u GPG_KEY_ID -m 'rabbitmq-stream-dotnet-client v1.8.3' 'v1.8.3' && git push && git push --tags
    
  • Ensure the build for the tag passes: link
  • Create the new release on GitHub, which triggers a build and publish to NuGet: link
  • Check for the new version on NuGet: link
  • Best practice is to download the new package and inspect the contents using NuGetPackageExplorer
  • Announce the new release on the mailing list: link