Brainograph.Messaging.Wolverine
2.1.1
dotnet add package Brainograph.Messaging.Wolverine --version 2.1.1
NuGet\Install-Package Brainograph.Messaging.Wolverine -Version 2.1.1
<PackageReference Include="Brainograph.Messaging.Wolverine" Version="2.1.1" />
<PackageVersion Include="Brainograph.Messaging.Wolverine" Version="2.1.1" />
<PackageReference Include="Brainograph.Messaging.Wolverine" />
paket add Brainograph.Messaging.Wolverine --version 2.1.1
#r "nuget: Brainograph.Messaging.Wolverine, 2.1.1"
#:package Brainograph.Messaging.Wolverine@2.1.1
#addin nuget:?package=Brainograph.Messaging.Wolverine&version=2.1.1
#tool nuget:?package=Brainograph.Messaging.Wolverine&version=2.1.1
WolverineFx (multi-transport: PostgreSQL, RabbitMQ, or Azure Service Bus) provider for the Brainograph.Messaging seam. References only Brainograph.Messaging.Abstractions + WolverineFx (+ WolverineFx.Postgresql/WolverineFx.RabbitMQ/WolverineFx.AzureServiceBus for the transport-specific strategies).
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Azure.Messaging.ServiceBus (>= 7.20.1)
- Brainograph.Messaging.Abstractions (>= 2.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.5)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.5)
- Microsoft.Extensions.DependencyInjection (>= 10.0.5)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.5)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.5)
- Microsoft.Extensions.Logging (>= 10.0.5)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.5)
- Newtonsoft.Json (>= 13.0.4)
- RabbitMQ.Client (>= 7.1.2)
- WolverineFx (>= 6.21.0)
- WolverineFx.AzureServiceBus (>= 6.21.0)
- WolverineFx.Postgresql (>= 6.21.0)
- WolverineFx.RabbitMQ (>= 6.21.0)
- WolverineFx.RDBMS (>= 6.21.0)
- WolverineFx.RuntimeCompilation (>= 6.21.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|
2.1.1 — fixes a benign teardown race in the soft-boot producer hosted service (introduced with the soft-boot change in 2.0.1): under WebApplicationFactory disposal the host could Dispose() the hosted service — disposing its stopping CancellationTokenSource — before/without an orderly StopAsync, so StopAsync's `_stopping.CancelAsync()` threw ObjectDisposedException. StopAsync now guards only that CTS interaction so the stop path is idempotent and dispose-safe in any interleaving; real process shutdown was never affected, but downstream test factories no longer need a scoped catch. No API change. 2.1.0 — adds an OPT-IN durable outbox for the brokered transports (RabbitMq/ASB), the fix for the 2.0.x sender-side at-least-once gap: set `Messaging:Wolverine:DurableOutbox:Enabled=true` (+ `:ConnectionString`, typically the service's own app DB, and optional `:Schema`, default `messaging`). It adds a Postgres message store, and the producer's durable send path enlists a fresh MessageContext in a store transaction and publishes via BroadcastToTopicAsync (a ROUTED send — a bare EndpointFor(uri).SendAsync bypasses the outbox), so the outgoing envelope is PERSISTED to wolverine_outgoing_envelopes on commit and forwarded by the durability agent — a broker OUTAGE no longer loses the produce (proven by DurableOutboxBrokerOutageTests: produce during a stop_app outage lands in the store and is delivered exactly-once after start_app). Off by default → 2.0.x behaviour (broker-native durability, documented gap) is unchanged for anyone who does not set it. 2.0.0 — transport config-selectable via `Messaging:Wolverine:Transport`; RabbitMQ + ASB transports (native fan-out); same consume-side contract on all three. See MESSAGING-TRANSPORTS.md §4.4.