Skip to content

Releases: eventflow/EventFlow

v0.60.3490

18 Jun 06:58
Compare
Choose a tag to compare
  • New: Implemented optimistic concurrency checks for MSSQL, SQLite and
    Elasticsearch read models
  • New: Added .NET standard support for EventStore
  • New: Delete read models by invoking context.MarkForDeletion() in an Apply method
  • Minor: Removed unnecessary transaction in EventStore persistance
  • Fixed: Read model SQL schema is no longer ignored for Table attribute

v0.59.3396

23 May 19:37
ae74439
Compare
Choose a tag to compare
  • Fix: Commands are now correctly published when no events are emitted from a saga
    after handling a domain event
  • Minor fix: Updated name of Primary Key for MSSQL Snapshot Store to be different
    from MSSQL Event Store, so both can be used in the same database without conflicts

v0.58.3377

13 May 17:40
0fe1a95
Compare
Choose a tag to compare
  • Minor fix: Corrected log in CommandBus regarding events emitted due to command

v0.57.3359

30 Apr 21:38
ebc0df2
Compare
Choose a tag to compare
  • Fixed: AggregateException/InvalidOperationException when reading and updating
    an aggregate from different threads at the same time using InMemoryEventPersistence
  • New: .NET standard 1.6 and 2.0 support for EventFlow.MsSql package

v0.56.3328

24 Apr 20:32
Compare
Choose a tag to compare
  • New: Allow enums to be used in SingleValueObject<T> and protect from
    undefined enum values

v0.55.3323

24 Apr 20:32
Compare
Choose a tag to compare
  • Fixed: Re-populating events to read models that span multiple aggregates
    now has events orderd by timestamp instead of sequence numbers, i.e., events
    from aggregates with higher sequences numbers isn't forced last
  • New: Trigger sagas without the need of any domain events by using
    ISagaStore.UpdateAsync(...)
  • New: .NET standard 2.0 (still supports 1.6) support added to these
    NuGet packages
    • EventFlow
    • EventFlow.Autofac
    • EventFlow.Elasticsearch
    • EventFlow.Hangfire
    • EventFlow.Sql

v0.54.3261

25 Feb 22:01
Compare
Choose a tag to compare
  • Critical fix: SagaAggregateStore was incorrectly putting an object reference
    into its memory cache causing an object already disposed exception when working with
    sagas
  • New: Added LibLog, enable by
    calling the IEventFlowOptions.UseLibLog(...) extension

v0.53.3204

13 Feb 18:50
v0.53.3204
Compare
Choose a tag to compare
  • New: Allow events to have multiple EventVersion attributes
  • Fixed: ReflectionHelper.CompileMethodInvocation now recognises
    private methods.

v0.52.3178

03 Dec 19:32
Compare
Choose a tag to compare
  • Fixed: .UseFilesEventStore now uses a thread safe singleton instance for
    file system persistence, making it suitable for use in multi-threaded unit
    tests. Please don't use the files event store in production scenarios
  • New: Support for unicode characters in type names. This simplifies using an
    ubiquitous language
    in non-english domains
  • Fixed: Include hyphen in prefix validation for identity values. This fixes a bug
    where invalid identities could be created (e.g. ThingyId.With("thingyINVALID-a41e..."))

v0.51.3155

25 Oct 15:42
Compare
Choose a tag to compare
  • New: Removed the new() requirement for read models
  • New: If ISagaLocator.LocateSagaAsync cannot identify the saga for a given
    event, it may now return Task.FromResult(null) in order to short-circuit
    the dispatching process. This might be useful in cases where some instances
    of an event belong to a saga process while others don't
  • Fixed: StringExtensions.ToSha256() can now be safely used from
    concurrent threads.