Releases: Logitar/EventSourcing
Releases · Logitar/EventSourcing
v7.0.2
v7.0.1
v7.0.0
There are so many changes in this version that I may have missed some.
Added
- Documented upgrade to .NET 8, .NET 9 and rewriting of the framework.
- A lot of interfaces, such as
IAggregate
andIEvent
, allowing to use your own implementation of those concepts. - The
IEventStore
interface and itsEventStore
implementations. - Integration of EventStoreDB/Kurrent.
- Loading an aggregate from a snapshot.
Changed
- Migrated to .NET9.
- Upgraded NuGet packages.
- Refactored domain exceptions.
- Rewrote the framework while focusing on event streams as well as aggregates. Previous versions database entities are not compatible with v7+.
- Aggregate
Apply
methods must be renamed toHandle
, in accordance to C# event terminology. - The
AggregateId
is now theStreamId
. - The
IAggregateRepository
andAggregateRepository
have been renamed toIRepository
andRepository
. - The
DomainEvent
is back to a record. - Refactored exceptions.
- The
EventSerializer
can now be overloaded to register custom converters. - Aggregate
LoadFromChanges
method is back to an instance method (not static anymore). - The
IRepository
now allows loading deleted, undeleted and any aggregates (includedDeleted
is nowisDeleted
, a nullable boolean). - Rewrote unit and integration tests according to the framework changes.
Fixed
- A bug when deserializing empty
ActorId
,AggregateId/StreamId
andEventId
.
Removed
- Integration of in-memory, MongoDB, and relational event stores without EntityFrameworkCore.
- Actor identifier default value
SYSTEM
.
v6.0.1
v6.0.0
Added
- Database migration tools.
Changed
DomainEvent
is now a class, and uses anEventId
struct.- Using
ErrorMessageBuilder
in exceptions. - Recreated scripts and migrations.
- Refactored the
LoadFromChanges<T>
method to remove Reflection. - Core package now targets .NET Standard 2.1.
ToString
methods now include ID prefix.
Fixed
- README files and migration commands.
- Docker Compose file.
v5.2.0
v5.1.1
v5.1.0
v5.0.0
v4.1.0
Added
- Implemented Event Sourcing with multiple data stores.
- Added AggregateRoot metadata.
- Created a struct for actor identifiers.
- Implemented an EventSourcing MongoDB store.
- Added Raise and Handle methods on AggregateRoot.
Changed
- Reorganized the solution directory structure.
- Upgraded NuGet packages and fixed EventSourcing project dependencies.
- Replaced DeleteAction by a nullable boolean.
- Refactored AggregateRoot and DomainEvent.
- Injecting IEventSerializer as a dependency.
- Protected setters on aggregate metadata.
- Marked old TypeExtensions as obsolete.
- Refactored AggregateRoot.