Skip to content
- Performance-focused refactorings and optimizations across message topology, runtime configuration, saga types, and transactional outbox.
- AWS SQS enhancement: DeduplicationId and MessageGroupId are now properly copied from incoming messages to outgoing messages.
- Azure Service Bus improvements: session saga fixes, message lock completion behavior, and changed SendTransportContext behavior to avoid
spurious SENT logs for CANCEL (scheduled messages).
- New net10.0 build target and NuGet/README updates.
- JSON serialization options can now be configured per receive endpoint (and per-bus), eliminating the global limitation when dealing with multiple bus instances.
- Added ability to configure JobOptions concurrency limit per instance (useful for heterogeneous nodes)
- Added AttemptId to job type state machine, and added additional logic to avoid failures due to duplicate message delivery/redelivery.
- New
IScopedBus and IScopedBus<TBus> interfaces were added to support message routes (and other new features in the future). When producing messages, IScopedBus can be
used instead of IBus in scoped contexts to ensure messages are properly routed through middleware.
- Added message routes to the bus, pushing for
EndpointConvention to be deprecated
- Transactional Outbox now supports routing slip activities
- Optimized Transactional Outbox to reduce receive loops when no messages are produced (reduces receive count from 3 to 1)
- Added concurrent message delivery for transactional outbox (opt-in only, may affect message ordering)
- Licensing support has been added to bus configuration with validation.
- Trim exception messages to avoid overflowing message size limits with extensive stack traces
- CooperativeSticky should work with Kafka
- TransactionalBus is deprecated — it is not well understood or tested; migrate away before the next major release where it may be removed.
- JSON serialization settings are now configured per bus/endpoint rather than globally.
If you relied on global JSON settings, update configuration to set
serialization at the bus or endpoint level. Should be backward-compatible, but new capabilities now exist.
- Fixed #6154: added NotifyFaulted to exception branch to ensure typed
Fault<T> is published instead of ReceiveFault
- Fixed the previously broken ASB session saga repository unit test
- Ensure message locks can complete when using Azure Service Bus
- Included all fixes from in the v8 codebase