Savvyio.EventDriven 4.0.0-preview.1

This is a prerelease version of Savvyio.EventDriven.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Savvyio.EventDriven --version 4.0.0-preview.1                
NuGet\Install-Package Savvyio.EventDriven -Version 4.0.0-preview.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Savvyio.EventDriven" Version="4.0.0-preview.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Savvyio.EventDriven --version 4.0.0-preview.1                
#r "nuget: Savvyio.EventDriven, 4.0.0-preview.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Savvyio.EventDriven as a Cake Addin
#addin nuget:?package=Savvyio.EventDriven&version=4.0.0-preview.1&prerelease

// Install Savvyio.EventDriven as a Cake Tool
#tool nuget:?package=Savvyio.EventDriven&version=4.0.0-preview.1&prerelease                

Savvyio.EventDriven

Provides the fundamental classes to work with the concepts of Integration Events that complements both CQRS (Command and Query Responsibility Segregation) and DDD (Domain Driven Design).

About

An open-source project (MIT license) that provides a SOLID and clean .NET class library for writing DDD, CQRS and Event Sourcing applications.

Savvy I/O Flow

It is, by heart, free, flexible and built to extend and boost your agile codebelt.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Savvyio.EventDriven:

Package Downloads
Savvyio.Extensions.Dispatchers

Extend the Savvy I/O core assemblies with Mediator support to provide a uniform way of working with DDD, CQRS and Event driven architecture.

Savvyio.App

Provides a complete and convenient set of API additions for building a DDD, CQRS and Event Sourcing enabled .NET application using Microsoft Dependency Injection, Microsoft Entity Framework Core, Dapper, AWS SNS/SQS and Azure Queue Storage/Azure Event Grid.

Savvyio.Extensions.SimpleQueueService

Extend the Savvy I/O core assemblies with support for Amazon Simple Queue Service (AWS SQS) paired with Amazon Simple Notification Service (AWS SNS).

Savvyio.EventDriven.Messaging

Provides ways to scale out Integration Events for a distributed architecture.

Savvyio.Extensions.QueueStorage

Extend the Savvy I/O core assemblies with support for Azure Queue Storage paired with Azure Event Grid.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.0-preview.2 43 10/6/2024
4.0.0-preview.1 43 9/6/2024
3.0.0 234 9/1/2024
3.0.0-preview.3 75 8/13/2024
3.0.0-preview.2 39 8/4/2024
3.0.0-preview.1 34 7/31/2024
2.2.0 203 4/10/2024
2.1.0 228 3/5/2024
2.1.0-preview.17 56 3/3/2024
2.1.0-preview.14 63 3/2/2024
2.1.0-preview.12 64 2/28/2024
2.1.0-preview 188 2/26/2024
2.0.0 202 2/11/2024
2.0.0-preview.16 61 2/5/2024
2.0.0-preview.13 107 1/7/2024
2.0.0-preview.6 87 1/3/2024
2.0.0-preview 162 1/2/2024
1.2.0-preview 248 11/23/2023
1.1.0 720 12/6/2022
1.0.0 662 11/9/2022
0.8.0-rc 260 6/1/2022
0.7.0-rc 309 5/11/2022

Version: 4.0.0
Availability: .NET 9 and .NET 8
 
# ALM
- REMOVED Support for TFM .NET 6 (LTS)
- CHANGED Dependencies to latest and greatest with respect to TFMs
 
Version: 3.0.0
Availability: .NET 8 and .NET 6
 
# Breaking Changes
- MOVED CloudEvent record from the Savvyio.EventDriven.Messaging.CloudEvents namespace to its own assembly (Savvyio.EventDriven.Messaging)
- MOVED CloudEventExtensions class from the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace to its own assembly (Savvyio.EventDriven.Messaging)
- MOVED SignedCloudEvent class from the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace to its own assembly (Savvyio.EventDriven.Messaging)
- MOVED MessageExtensions class from the Savvyio.EventDriven.Messaging.CloudEvents namespace to its own assembly (Savvyio.EventDriven.Messaging)
- MOVED InMemoryEventBus class from the Savvyio.EventDriven.Messaging namespace to its own assembly (Savvyio.EventDriven.Messaging)
- MOVED IntegrationEventExtensions class from the Savvyio.EventDriven.Messaging namespace to its own assembly (Savvyio.EventDriven.Messaging)
 
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
 
Version: 2.1.0
Availability: .NET 8, .NET 7 and .NET 6
 
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
 
# Breaking Changes
- RENAMED Sign{T} extension method on the CloudEventExtensions class in the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace to SignCloudEvent{T}
 
# New Features
- EXTENDED CloudEventExtensions class in the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace with new extension methods for the ISignedCloudEvent{T} interface: CheckCloudEventSignature{T}
 
# Improvements
- REMOVED MessageExtensions class in the Savvyio.EventDriven.Messaging.Cryptography namespace to favor the new generic equivalent in the Savvyio.Messaging.Cryptography namespace
 
Version: 2.0.0
Availability: .NET 8, .NET 7 and .NET 6
 
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
 
# New Features
- ADDED MessageExtensions class in the Savvyio.EventDriven.Messaging.Cryptography namespace that consist of extension methods for the IMessage{T} interface: Sign{T}
- ADDED CloudEventExtensions class in the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace that consist of extension methods for the ICloudEvent{T} interface: Sign{T}
- ADDED SignedCloudEvent{T} class in the Savvyio.EventDriven.Messaging.CloudEvents.Cryptography namespace that provides a default implementation of the ISignedCloudEvent{T} interface
- ADDED CloudEvent{T} class in the Savvyio.EventDriven.Messaging.CloudEvents namespace that provides a default implementation of the ICloudEvent{T} interface
- ADDED MessageExtensions class in the Savvyio.EventDriven.Messaging.CloudEvents namespace that consist of extension methods for the IMessage{T} interface: ToCloudEvent{T}
 
# Breaking Changes
- RENAMED EncloseToMessage{T} extension method on the IntegrationEventExtensions class in the Savvyio.EventDriven.Messaging namespace to ToMessage{T}
- RENAMED MemoryEventBus class in the Savvyio.EventDriven.Messaging namespace to InMemoryEventBus (consistency with Microsoft naming convention)
- CHANGED ToMessage{T} extension method on the IntegrationEventExtensions class in the Savvyio.EventDriven.Messaging namespace to include a string that describes the type of event
- MOVED IIntegrationEvent interface in the Savvyio.EventDriven namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IIntegrationEventDispatcher interface in the Savvyio.EventDriven namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IIntegrationEventHandler interface in the Savvyio.EventDriven namespace to the namespace equivalent in the Savvyio.Core assembly
 
Version: 1.1.0
Availability: .NET 7.0, .NET 6.0
 
# New Features
- ADDED IntegrationEventExtensions class in the Savvyio.EventDriven.Messaging namespace that consist of extension methods for the IIntegrationEvent interface: EncloseToMessage{T}
- ADDED MemoryEventBus class in the Savvyio.EventDriven.Messaging namespace that provides an in-memory implementation of the IPublishSubscribeChannel{TRequest} interface useful for unit testing and the likes thereof
 
# Improvements
- CHANGED IntegrationEvent record in the Savvyio.EventDriven namespace to not care for member type (retrospective: this is only relevant for TracedDomainEvents)
 
Version: 1.0.0
Availability: .NET 7.0, .NET 6.0
 
# New Features
- ADDED IIntegrationEvent interface in the Savvyio.EventDriven namespace that defines a marker interface that specifies something that happened when an Aggregate was successfully persisted and you want other subsystems (out-process/inter-application) to be made aware of
- ADDED IIntegrationEventDispatcher interface in the Savvyio.EventDriven namespace that defines an Integration Event dispatcher that uses Fire-and-Forget/In-Only MEP
- ADDED IIntegrationEventHandler interface in the Savvyio.EventDriven namespace that specifies a handler responsible for objects that implements the IIntegrationEvent interface
- ADDED IntegrationEvent record in the Savvyio.EventDriven namespace that provides a default implementation of of the IIntegrationEvent interface
- ADDED IntegrationEventDispatcher class in the Savvyio.EventDriven namespace that provides a default implementation of of the IIntegrationEventDispatcher interface
- ADDED IntegrationEventExtensions class in the Savvyio.EventDriven namespace that consist of extension methods for the IIntegrationEvent interface: GetEventId, GetTimestamp, GetMemberType
- ADDED IntegrationEventHandler class in the Savvyio.EventDriven namespace that provides a generic and consistent way of handling Integration Event objects that implements the IIntegrationEvent interface
- ADDED SavvyioOptionsExtensions class in the Savvyio.EventDriven namespace that consist of extension methods for the SavvyioOptions class: AddIntegrationEventHandler, AddIntegrationEventDispatcher