NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
NuGet · #690 most downloaded on NuGet
Rebus is a lean service bus for .NET
Last release 7 days ago
29 Sep 2026
Release timing varies
gaps range from 2 weeks to 7 months
Nearly every release is documented
notes for 56 of the last 60 stable releases
15 versions withdrawn
withdrawn after publishing
127 years old
546 releases · first in 1900
Fixed bug in Rebus' protobuf serializer that caused it to be unable to serialize Rebus' control bus messages
Fixed RavenDB subscription and timeout storage
Added correlation sequence number as an auto-flowing header too - can be used to deduce causation
One column per quarter.
Brough back FakeBus - an implementation of IBus that records everything that happens to it as events which you may query during the assert-phase of yo
FakeBus - an implementation of IBus that records everything that happens to it as events which you may query during the assert-phase of your testsSagaFixture to ease saga testingFixed saga correlation bus introduced in 0.99.37
Fixed subtle unintented behavior so that messages inherited from an initiating type can initiate sagas too
Much improved error message when sending to non-existent queue with Azure Service Bus
Failed<TMessage> to be IFailed<TMessage> (and thus an interface) in order to make it covariantFixed bug that caused the Azure Service Bus transport to not be properly initialized when using the "Basic" tier - thanks [torangel]
Made small improvements to Rebus.Async (added timeout option + added ability to remove abandoned replied when their age exceeds a configurable thresho
Fixed bug where an exception thrown while correlating an incoming message with a saga would not be included as inner exception - thanks [mortenherman]
Fixed logging of the configured region with Amazon SQS transport - thanks [gertjvr]
Added unit of work guards and fixed bug that would result in exceptions when providing no rollback/cleanup action when using the async version
Removed hardcoded region settings in purge operation with SQS transport - thanks [gertjvr]
Fixed Rebus.MongoDb package (nuspec was lying about its MongoDB driver dependency)
* Added Wire serializer
Fixed bug in RavenDB saga persister - thanks [bjomi] and [jsvahn]
Fixed options configuration API to be more consistent and thus less prone to confusion - thanks [xenoputtss]
Fixed bug in in-mem saga storage that would accidentally enforce uniqueness of correlation properties across saga data types
Fixed it so that SQL Server transport does not start the background "expired messages cleanup" task when it is a one-way client
Added RavenDB saga persister - thanks [bjomi]
Small changes to Rebus' TransactionScope enlistment support
TransactionScope enlistment supportFixed bug in Amazon SQS transport that would silently ignore errors when sending messages - thanks [gertjvr]
Fixed Rebus' SimpleInjector container adapter registrations to be able to resolve IMessageContext as part of the container's verification process
IMessageContext as part of the container's verification processFixed bug that would fail saga data auditing when the message could not be correlated with a saga data instance
Added IBus API overloads for Subscribe and Unsubscribe that accept a Type as a parameter - thanks [gertjvr]
IBus API overloads for Subscribe and Unsubscribe that accept a Type as a parameter - thanks [gertjvr]ExpiredMessagesCleanup warning because of locked rows when handling message for a long time with the SQL Server transportrbs2-defer-recipient header to designate the queue to deliver the message to when it returns - allows for doing request/reply with a defer in the middle without losing the return address (which must be transferred manually, though, unless you bus.Advanced.TransportMessage.Defer)ResolveConflictAdded EnlistRebus option to Rebus.TransactionScopes, allowing for easily enlisting an ambient Rebus transaction in an ambient .NET transaction
EnlistRebus option to Rebus.TransactionScopes, allowing for easily enlisting an ambient Rebus transaction in an ambient .NET transactionGeneral handling of receive errors by logging as warning
Added DryIoc container adapter - thanks [dadhi]
Added LightInject container adapter - thanks [puzsol]
Added ability to immediately forward messages on certain exception types (optionally when those exceptions satisfy some predicate)
Fixed nuspec on StructureMap package, made SimpleInjector package dependency version criteria more tolerant, and updated the Unity dependency to v 4
Changed RabbitMQ routing to use two exchanges: one for direct addressing, and one for pub/sub messaging. This way, "clean" RabbitMQ topics can be subs
Fixed it so that delivery will not be retried indefinitely on commit exceptions
Limit length of header values used when using Azure Service Bus transport
Replaced Windsor's assembly-scanning with manual scan
Added no-inlining jit directive to the Windsor package's AutoRegisterHandlersFromThisAssembly method because it looks like handlers are sometimes not
AutoRegisterHandlersFromThisAssembly method because it looks like handlers are sometimes not picked up as they should* Fixed NLog nuget dependency
Added Serilog log event enricher + configuration extension for including Rebus' correlation ID in log events
${rebus-correlation-id} variableInject loggers. Will remove static logging things later.
Added ability to mark saga data as unchanged by calling MarkAsUnchanged() on the saga handler.
MarkAsUnchanged() on the saga handler.Added IMessageContext.AbortDispatch() which aborts dispatch of the current message to any handlers following the one currently being executed.
IMessageContext.AbortDispatch() which aborts dispatch of the current message to any handlers following the one currently being executed.Extended built-in handler activator with Register overloads that allow for registering handler factory functions that accept IMessageContext and (IBus
Register overloads that allow for registering handler factory functions that accept IMessageContext and (IBus, IMessageContext) as argumentsFixed MSMQ remote queue path formatting
Fixed bug that could result in double-resolving handler instances with Ninject, Castle Windsor, and Unity because of a lazy-evaluated IEnumerable
IEnumerableAdded simple 2nd level retries mechanism
Added "per Rebus message" lifestyle to Windsor container configuration extensions
Added one-way client mode for Amazon SQS transport
Added IsNew property to Saga base class allowing saga handlers to easily determine whether the instance is new
IsNew property to Saga base class allowing saga handlers to easily determine whether the instance is newMade disposal of resources more consistent (still not entirely consistent though, depends on importance)
Added transport message routing capability
Set message label on sent MSMQ messages (is shown in MSMQ tools like Rebus Snoop etc.)
Updated SimpleInjector dependency to 3.0.1
Change RabbitMQ transport to allow for using Rabbit's native pub/sub capabilities, thus removing the need for a subscription storage
Moved the explicit routing function to an advanced routing API
Re-introduced the previous Azure Service Bus implementation that relied only on queues to work - can be used with the Azure Service Bus Basic tier
Added one-way client mode + appropriate configuration extensions for all transports but Amazon SQS (it requires some more work)
Changed SqlTransport to use the cryptic DELETE OUTPUT style query yielding ~ 10 times performance improvement - thanks [MrMDavidson] for a very well-d
SqlTransport to use the cryptic DELETE OUTPUT style query yielding ~ 10 times performance improvement - thanks [MrMDavidson] for a very well-documented PR :)Fixed RabbitMQ transport bug that would create wrong queue bindings - please update to this version :)
Fixed RabbitMQ NuGet dependency to explicitly depend on 3.5.4 because silly NuGet will default to the lowest version and that does not play well with
Made SQL Server transport use a visible field in the database to implement message deferral (warning: schema change)
visible field in the database to implement message deferral (warning: schema change)Your coding agent can read these notes before it upgrades. Set up the MCP server →