All Versions
Latest Version
Avg Release Cycle
20 days
Latest Release

Changelog History

  • v0.3.0 Changes

    • Made EventStoreWriter more general, allowing any key and position types. We also provide a VersionedEventStoreWriter type alias that uses UUID and EventVersion.
    • โž• Added useful unsafeSqlStoreGlobalStreamEvents function.
    • Got rid of the word Aggregate throughout the codebase since that term is too overloaded from DDD. It was replaced either by CommandHandler or just stream.
  • v0.2.0 Changes

    July 31, 2017
    • ๐Ÿ’ฅ Breaking change: Split up EventStore into EventStoreWriter and EventStoreReader. There is now a ton of code sharing between reading from individual streams and reading from the global stream. This also simplified a lot of the event and projection types (now just variations on StreamEvent and StreamProjection).
    • GHC 8.2.1 compatibility
  • v0.1.3 Changes

    June 24, 2017
    • โž• Added ProjectionCache for caching Projection state in event streams.
    • โž• Added EventStoreQueryRange to the APIs of the event store and the globally ordered event store. This allows the user to specify optional start and stop points for the query.
    • โž• Added versions of the MonadState event stores that can include other state along with the EventMap. These are called embeddedStateEventStore and embeddedStateGloballyOrderedEventStore.
    • Made Projection and instance of Contravariant so it is easier to change the event type parameter.
    • โž• Added a GloballyOrderedProjection abstraction to make projecting from globally-ordered event streams simpler.
    • โž• Added useful projectionMapMaybe function.
    • โž• Added the runEventStoreUsing and runGloballyOrderedEventStoreUsing functions for running event stores in different monads than the original.
  • v0.1.2 Changes

    June 15, 2017
    • ๐Ÿ”จ Refactored ProcessManager so it acts more like a read model that emits commands and events. Got rid of ProcessManagerRouter
    • ๐Ÿ›  Fix race condition in postgres event store where sequence numbers won't be monotonically increasing when multiple writers are writing to the events table. Fixed with an explicit lock on the events table.
    • Restructured record types for events paired with version numbers and global sequence numbers.
    • Created an in-memory event store for MonadState in eventful-memory.
  • v0.1.1 Changes

    May 14, 2017
    • โœ… Small pedantic fixes for examples and test suites.
    • โž• Added links to the github repo in the cabal files.
  • v0.1.0 Changes

    May 14, 2017

    ๐ŸŽ‰ Initial Hackage release of eventful. It is already fairly full-featured along ๐Ÿ“š with some documentation and examples.