- mongodb: useUnifiedTopology
- introduce skip steps #89 thanks to Robin Fehr
- skipAfterCommit #88 thanks to Robin Fehr
- refactoring of findViewModel - only one loop #85 thanks to Robin Fehr
- fix edge case during replay whe using query
- update viewmodel
- isCommandRejected: do not go to revisionStore if evtPayload.reason.aggregateId is not defined
- update viewmodel
- add shouldHandleEvent option on the viewbuilder
- Increase DynamoDB performance #80 thanks to Peter Schramm
- Fix preExtendEvent callback errs param in dispatch func #79 thanks to shazichuanshuo
- add option to add custom structureLoader implementation
- update viewmodel
- update viewmodel
- update viewmodel
- replayHandler: make sure to not handle old events (duplicates) by checking the eventId
- replayHandler: make sure to not handle old events (duplicates)
- update viewmodel
- update viewmodel
- update viewmodel
- update viewmodel
- update viewmodel
- update viewmodel
- update viewmodel
- make use of optional bulkCommit for replay
- remove deprecated option max_attempts from redis options
- compatibility with new mongodb version (3.x)
- [optimization] skip to load vm if viewbuilder has not requested it via shouldHandle function
- update viewmodel
- update viewmodel
- fixing dynamodb DocumentClient initialization #60 thanks to Glockenbeat
- Support default exports #58 thanks to IRT-fbachmann
- update viewmodel
- update viewmodel
- update viewmodel
- Added non-breaking db implementation specific settings support to collection definition. #56 thanks to nanov and his company eCollect which enabled him to work also during working hours
- respect preEventExtenders in replayHandler
- introduced preEventExtenders
- optimize handling for commandRejected
- fix for new mongodb driver
- set proper this context
- update deps
- downgrade async to 1.5.2 because of RangeError: Maximum call stack size exceeded when rebuilding a lot of events
- filter falsable notifications
- update viewmodel
- edgecase in revisionGuard
- redis, mongodb: call disconnect on ping error
- Fix events getting lost at high concurrency
- Support mongo connection string
- fix replay race condition when deleting and creating multiple times
- updated viewmodel
- redis, mongodb: call disconnect on ping error
- fix replay race condition when deleting multiple times
- do abort/finish denormalization handling when calling this.retry() wile replaying
- revisionGuard: optional startRevisionNumber
- redis: added optional heartbeat
- updated viewmodel
- if event is not extended return the original event
- revisionGuard fix
- redis: fix for new redis lib
- mongodb: added optional heartbeat
- fix a replay inmemory issue
- update viewmodel
- optimize loader
- collection added loadViewModelIfExists function
- update viewmodel
- optimize handling of guarding the first events
- do not call onAfterCommit during replay
- optimize performance while replaying
- remove trycatch dependency due to memory leaks
- optimize performance while replaying
- fix replay behaviour
- give possibility to use mongodb with authSource
- warn log when async try catch
- update some deps
- fix replay handling when fetching by query
- update viewmodel dependency
- viewbuilder: introduce onAfterCommit function
- fix defaultPayload stuff for viewbuilder
- update viewmodel dependency
- introduce priority for viewBuilder
- do not use defaultPayload of collection for event extenders
- catch throwing errors when calling callback
- update viewmodel dependency
- expose warnings during initialization
- better catch for userland errors
- fix alreadyInQueue check
- update viewmodel dependency
- because of shouldHandle, return all possible viewBuilders (not just one)
- filter null notifications
- fix replay handling caused by introduction of shouldHandle
- introduce possibility to define a shouldHandle function
- when using revisionGuard, always save the last event
- when using revisionGuard, added possibility to fetch the last denormalized event
- little fix
- add retry mechanism for viewBuilder
- fix revisionGuard when handling duplicate events at the same time
- update viewmodel dependency
- correct actionOnCommit handling during replay
- update viewmodel dependency
- added mongodb driver 2.x support
- update viewmodel dependency
- add autoCreate option to view builder thanks to #9 thanks to andywer
- added mongodb driver 2.x support
- update viewmodel dependency
- optimize structureParser
- introduce noReplay flag on collection
- cloneDeep init values of executeForEach
- added executeForEach function for viewBuilders
- added payload functionality for eventExtenders
- update viewmodel dependency
- fix usage with own db implementation
- fix revisionGuard in replay
- added getInfo function
- fix deepClone issue in collection
- added clear function to be used for rebuilding the readmodel
- update viewmodel dependency
- update viewmodel dependency
- added possibility to denormalize multiple viewmodels in same collection with intelligent queries in an async way
- added possibility to denormalize multiple viewmodels in same collection with intelligent queries
- async viewBuilders
- update viewmodel dependency
- handle case of same aggregateId in different contexts or aggregates
- update viewmodel dependency
- little optimization for replay
- added possibility to denormalize multiple viewmodels in same collection
- fixed replay handling
- update viewmodel dependency
- handle crappy events with an error
- update viewmodel dependency
- clone event payload before passing to handle function
- refactored whole module
- added possibility to define aggregateId, aggregate and context
- generic message structure for events
- added a lot of tests
- stabilized everything
- optimized performance
- added notification feature
- IMPORTANT: changed API!!!
- do not use newer viewmodel version
- updated node-queue
- make use of viewmodel indexes
- emit missingEvent if commandRejected and revision not in sync
- handle versioned events
- little fix in replay streamed
- introduced optional revisionStart (default = 1)
- optimized guard for first event for a new denormalized aggregate id
- introduction of revisionGuard
- contextEventDenormalizer is now eventDenormalizer
- eventMissing notification (for atomic replay)
- eventDenormalizer.replay to replay (from scratch)
- eventDenormalizerBase is now viewBuilderBase
- viewBuilderBase new signature (see documentation or tests)
- use new concurrency feature of viewmodel
- added disableQueuing and ignoreRevision flag