NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
NuGet · #2437 most downloaded on NuGet
Provides an Autofac container adapter for Rebus
Last release 3 years ago
no release in 18 months
Ships fairly regularly
a new release about every 4 months
Nearly every release is documented
notes for 56 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
358 releases · first in 2012
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
Made the type-based pub/sub API default and moved the raw string-based topic API into bus.Advanced.Topics
bus.Advanced.TopicsOne column per quarter.
Updated MongoDB driver dependency to 2.0.1 and rewrote MongoDB persistence to take advantage of async/await - thanks [kevbite]
async/await - thanks [kevbite]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)Changed SQL persistence to work with IDbConnectionProvider as originally intended - thanks [MrMDavidson]
IDbConnectionProvider as originally intended - thanks [MrMDavidson]Separated error tracking out behind IErrorTracker interface, allowing for e.g. keeping error counts in a database somewhere, thus allowing for multipl
IErrorTracker interface, allowing for e.g. keeping error counts in a database somewhere, thus allowing for multiple parallel workers to not exceed maximum delivery attempts[Header("some_headers", "some_value")]Added pub/sub support to legacy compatibility mode
AzureServiceBusTransport to work with topics when doing pub/sub which then avoids having to configure subscription storage when working with Azure Service BusAdded some more headers to audited messages
Added ability to use external timeout manager
Made MSMQ transport work better in legacy mode
Added experimental legacy compatility option (.Options(o => o.EnableLegacyCompatibility()))
.Options(o => o.EnableLegacyCompatibility()))Added RavenDB persistence for subscriptions and timeouts - thanks [mclausen]
Added ability to storage subscriptions in a JSON file
Added TransactionScope support via the Rebus.TransactionScope package (note: requires at least .NET 4.5.1 for TransactionScopeAsyncFlowOption.Enabled
TransactionScope support via the Rebus.TransactionScope package (note: requires at least .NET 4.5.1 for TransactionScopeAsyncFlowOption.Enabled to be there)Refactored most of Rebus! NOTE: (very) breaking change!! - 0.90.0 version series will function as ALPHA and BETA of what will become Rebus 2.0.0
ITransport abstrationbus.Send(yourMessage).Wait() if you cannot await bus.Send(yourMessage))Made Azure Service Bus transport stop the peek lock renewal timer when the transaction context goes into the commit/rollback/cleanup phase. Seems more
MessageLockLostExceptions if the message would happen to be successfully completed right before attempting to renew the peek lock.Fixed concurrent message send in file system transport - thanks [mgibas]
Updated Serilog dep - thanks [tiipe]
Updated MongoDB stuff to work with MongoDB 3/WiredTiger - thanks [caspertdk]
Support for idempotent sagas via the Rebus.IdempotentSagas packages - thanks [pruiz]
Rebus.IdempotentSagas packages - thanks [pruiz]Support async initiation of sagas via IAmInitiatedByAsync<> - thanks [AndreaCuneo]
IAmInitiatedByAsync<> - thanks [AndreaCuneo]Changed default encoding of outgoing messages to be UTF8 instead of UTF7 when using the built-in JSON serializer
NewtonsoftJsonMessageSerializer that is honest about its dependency on Newtonsoft JSON.NET and thus lets you customize the serialization settings - thanks [joshua5822]Changed IStoreTimeouts API to return a DueTimeoutsResult instead of an IEnumerable
IStoreTimeouts API to return a DueTimeoutsResult instead of an IEnumerable<DueTimeout>SqlServerTimeoutStorage grab row locks on found due timeouts, allowing for "competing timeout consumers"* Fixed DryIoc nuget package
Added support for DryIoC - thanks [DixonD-git]
Added extension that allows for composing a chain-of-responsiblity-like way of determining message ownership - thanks [DixonD-git]
Rebus.Extensions package - might not be the final way, but it should do for nowMade PoisonMessageInfo ctor public so that the IErrorTracker can actually be implemented outside of Rebus - thanks [bchavez]
PoisonMessageInfo ctor public so that the IErrorTracker can actually be implemented outside of Rebus - thanks [bchavez]* Improved Serilog integration
Auto-subscribing extension on IBus - thanks [seankearon]
IBus - thanks [seankearon]Change SQL Server subscription storage command to be truly idempotent - thanks [tobiaxor]
Fixed container adapter registration bug that would make it impossible to have IMessageContext injected into more than one handler in the pipeline. Al
IMessageContext injected into more than one handler in the pipeline. Also ensures that the container does not dispose the message context.Fixed merge bug that made published Rebus core assembly unusable!
Fixed bug that would not allow for configuring and starting a bus without an XML configuration section.
IHandleMessagesAsync introduced - allows for having async message handlers
IHandleMessagesAsync introduced - allows for having async message handlersUpdated RabbitMQ dependency - thanks [maxx1337]
Added auditing capability - endpoints can now send a copy of the transport message to an audit queue whenever they have been successfully handled or p
Allow for specifying the messages table name on the SQL Server transport - thanks [tiipe]
Made SQL Server subscription storage & saga persister API accept connection string names (just like the SQL transport config) - thanks [tiipe]
Fixed SQL Server schema creation issue where querying sys.tables would give an error if the database's current collation results in case sensitive tab
sys.tables would give an error if the database's current collation results in case sensitive table names - thanks [tiipe]Ensure declaration of exchange when using OneExchangePerType - thanks [maeserichar]
OneExchangePerType - thanks [maeserichar]Fixed bug that could result in not automatically binding the error queue topic to the error queue when using RabbitMQ
Fixed vulnerability that could lead to executing arbitrary SQL statements by injecting it in a correlation property on a saga message when using SQL S…
Fix problem when trying to send Multicast message to error queue - thanks [maeserichar]
Added container adapter for SimpleInjector - thanks [oguzhaneren]
Removed MSMQ error queue existence check when queue is remote (because it can't be done, and because it doesn't make sense for remote queues)
ICanUpdateMultipleSagaDatasAtomically - thanks [PeteProgrammer]Added additional routing options with RabbitMQ - endpoints can now be adressed on several forms: topic, @exchange, and topic@exchange - thanks [pruiz]
topic, @exchange, and topic@exchange - thanks [pruiz]Added ability for RabbitMQ transport to publish to different exchanges instead of different routing keys - thanks [pruiz]
Fixed it so that inner exceptions are included when a SqlException causes saga persister to not be able to insert.
SqlException causes saga persister to not be able to insert.Updated StructureMap dependency to 3.0 - thanks [fritsduus]
Added ability to configure JSON serializer to serialize enums with their string representations - thanks [maeserichar]
Updated MongoDB driver dependency to 1.9
Added file system-based transport. Please do not use this one for your really important messages.
Added several Subscribe/Unsubscribe overloads to IRebusRouting so you can bus.Advanced.Routing.Subscribe(someMessageType) if you want
Subscribe/Unsubscribe overloads to IRebusRouting so you can bus.Advanced.Routing.Subscribe(someMessageType) if you wantFixed leakage of SQL connections (and other potential issues) when using ambient transactions - thanks [mgayeski]
Added to RavenDB saga persister the ability to obtain the current session from the outside, thereby allowing you to make the saga work part of the sam
Made it configurable whether null-valued correlation properties should be included in the inde with SQL Server saga persister.
Your coding agent can read these notes before it upgrades. Set up the MCP server →