All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Use new
Extreme.ListenerWithBackPressure
- Bump all dependencies including bumping
:extreme
to v1.0.5 which fixes a bug with live events sometimes getting dropped after subscribing to a stream
This release represents stability in the API. There is no functional change between this release and v0.4.2.
- Sending an InOrderSubscription process a
:subscribe
message no longer creates a duplicate subscription. Instead a warning is emitted.
- Changed the InOrderSubscription internals to buffer events from the
extreme subscription in a queue when there is no demand
- this unlocks the ability for this producer to emit multiple events at once
- Added
:subscribe_after
option which determines how long the producer will wait before checking whether it should subscribe or not
- Events are now produced in the shape of
{producer, event}
instead of simplyevent
- this allows a consumer to use the name of the producer to inform decisions about how to store the stream position
- Blanket configuration of the
:catch_up_chunk_size
can be set with the:kelvin
application-env var of:catch_up_chunk_size
, defaulting to 256
- Increased timeout in call to subscibe in InOrder subscriber
- Added a configuration parameter for the InOrder subscription which controls
the batch size of events read while catching up:
:catch_up_chunk_size
- Added noise to start-up-time checking of the auto-subscription option
- This works well for awaiting the bring-up of a client to an external service such as LaunchDarkly
- Initial implementation of the in-order subscription GenStage producer
- This project was generated by Gaas