-
Notifications
You must be signed in to change notification settings - Fork 2
/
Release.txt
84 lines (65 loc) · 3.49 KB
/
Release.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
2.0.4
* Injected ITracer interface to FirestoreEventStore and CommandHandler for tracing and stat collection
* Removed creator parameter from Aggregate.addEvent, the actor id and command name are now passed internally by the event store when committing events
* Replaced Bus with CommandHandler extending IBus
* Created CommandMapper to map commands to Aggregate types
* IEventStore.commitEvents now returning committed events instead of Aggregate and accepting actor and command name
* Simpler IBus only responsible for event handling
* Removed actor and aggregate from IEventHandler events signature. Committed events that are published to handlers contain actor id, aggregate id, and command name
2.1.0
* Replaced CommandHandler with Bus now implementing command side and Kafka style pub/sub messaging where consumers are subscribed to a stream and
stream readers keep pushing events from log and record the latest consumed versions
* Removed pump from event handlers and bus
* Added name and stream to event handlers so they can be subscribed to the bus and wait for events to be pushed
* Added loadEvents, getStreamData, and commitCursors methods to event store to support pub/sub storage of consumer positions (cursors)
* Modified ITracer to accept a lazy function that will be called only by concrete tracers
* Implemented PushWindow and StreamReader to support pushing events to subscribed consumers
2.1.1
* Added poll function to bus allowing pull mode (when multiple buses are interested in listening)
* Encapsulated some of the private stuff in the bus
2.1.2
* Passing tenant id to event handlers
2.1.3
* Fixed event pushing queue in bus
* Simplified tracers
* Simplified stream reader
2.1.4
* Moved promise queue logic from bus to stream reader so every reader has an independent queue
2.1.5
* Fixed concurrency issues with promise queue, firestore store using transactions to commit new events
2.1.6
* Implemented in-memory aggregate cache in bus to avoid unnecessary loading
* Fixed promise queue to enqueue next promise after exception
2.1.7
* Added _t (aggregate type) property to events to allow same aggregate id on multiple types in same stream
3.0.0
* Separated event streams from store (IEventStream, FirestoreEventStream)
* Simplified stream subscription in bus. Commands wont push events anymore, so a polling mechanism or event listener must be
implemented (Firestore onCreate trigger) to push new events to handlers
3.0.1
* Simplified stream with only one poll method.
* Removed all stream reader related functionality from bus.
3.0.2
* Moved ref in stream to local variable and passing tracer
3.0.3
* Fixed cursors and version when undefined
3.0.4
* Fixed stream polling with lease strategy
3.0.5
* Clearer error handling in Err
* Added Event class to translate internal coded fields to property getters
* Removed maxEvents from Aggregate (not needed since streams)
* Removed padding of aggregate versions inside events
* Changed code for stream version from _version_ to _s in events
3.0.6
* Integrated event stream polling functionality back into bus
* Event store with stream polling support
* Command context used when executing commands, passed as argument to store methods, and returned when command completes ok
3.0.7
* Changed event name in factory method
3.0.8
* Snapshots flag removed. Saving aggregate snapshots only when path is provided, otherwise load from events
3.1.0
* Replaced bus with CommandHandler and StreamReader. Bus should be provided by the infrastructure
3.1.1
* Added support for event versions