Repository navigation
Release v3.10.0
Event source and stream definitions for the Elixir client, matching Chronicle 19.30.0. Definitions are optional; appends that don't use one behave exactly as before.
Added
use Chronicle.EventSources.EventSourcewithstream/2declares a named event source, its streams and default concurrency dimensions. Definitions are discovered with event types (or passed as:event_sources) and registered at startup; duplicate source or stream names are rejected. (part of #100):event_sourceand:event_streamoptions onappend/3,append_many/3, units of work andappend_many_for_event_sources/2, plus per-entryevent_source/event_streamonEventForEventSourceIdfor mixed-source transactions. Unknown sources, undeclared streams and contradicting explicit routing return clear errors before anything is sent. (part of #100)- Appends through a definition use its concurrency dimensions as the scope unless an explicit
:concurrency_scopeis given. (part of #100) - Reactor and reducer contexts expose
:event_source,nilfor events not appended through a registered source. (part of #100) - Documentation: https://github.com/Cratis/Chronicle.Elixir/blob/main/Documentation/event-sources.md (part of #100)
Changed
- Requires
cratis_chronicle_contracts~> 19.30.