Changelog History
Page 1
-
v1.3.2 Changes
✨ Enhancements
- ➕ Add postgrex
socket_options
option (#242).
🐛 Bug fixes
- 🛠 Fix bug with subscriptions trigger in older Postgres versions (#241).
⬆️ Upgrading
🚀 This release includes a database migration to be run. Please read the Upgrading an EventStore guide for details on how to migrate an existing database.
- ➕ Add postgrex
-
v1.3.1 Changes
🐛 Bug fixes
- 👌 Support running event store migrations when using a schema (#239).
-
v1.2.2 Changes
- Read stream and stream events backward (#234).
-
v1.2.0 Changes
✨ Enhancements
- ✂ Delete event stream (#203).
- Introduce
mix event_store.migrations
task to list migration status (#207). - ✂ Remove distributed registry (#210).
- Hibernate subscription process after inactivity (#214).
- 🔧 Runtime event store configuration (#217).
- Shared database connection pools (#216).
- Shared database connection for notifications (#225).
- Transient subscriptions (#215)
- 👌 Improve resilience when database connection is unavailable (#226).
⬆️ Upgrading
🚀 This release requires a database migration to be run. Please read the Upgrading an EventStore guide for details on how to migrate an existing database.
💥 Breaking changes
Usage of
EventStore.Tasks.Init
task to initialise an event store database has been changed as follows:Previous usage:
:ok = EventStore.Tasks.Init.exec(MyApp.EventStore, config, opts)
Usage now:
:ok = EventStore.Tasks.Init.exec(config) :ok = EventStore.Tasks.Init.exec(config, opts)
🐛 Bug fixes
- 👌 Support appending events to a stream with
:any_version
concurrently (#209).
-
v1.1.0 Changes
May 13, 2020✨ Enhancements
- 👌 Support Postgres schemas (#182).
- Dynamic event store (#184).
- ➕ Add
timeout
option to config (#189). - 🔒 Namespace advisory lock to prevent clash with other applications (#166).
- 🔒 Use database lock to prevent migrations from running concurrently (#204).
💥 Breaking changes
The following EventStore API functions have been changed where previously (in v1.0 and earlier) the last argument was an optional timeout (a non-negative integer or
:infinity
). This has been changed to be an optional Keyword list, which may include a timeout (e.g.[timeout: 5_000]
). Thestream_forward
andstream_all_forward
functions now also require the optionalread_batch_size
argument to be provided as part of the options Keyword list.👀 These changes were required to support dynamic event stores where an event store name can be included in the options to each function. If you did not provide a timeout to any of these functions then you will not need to make any changes to your code. See the example usages below for details.
EventStore.append_to_stream
EventStore.link_to_stream
EventStore.read_stream_forward
EventStore.read_all_streams_forward
EventStore.stream_forward
EventStore.stream_all_forward
Previous usage:
EventStore.append_to_stream(stream_uuid, expected_version, events, timeout) EventStore.link_to_stream(stream_uuid, expected_version, events_or_event_ids, timeout) EventStore.read_stream_forward(stream_uuid, start_version, count, timeout) EventStore.read_all_streams_forward(start_version, count, timeout) EventStore.stream_forward(stream_uuid, start_version, read_batch_size, timeout) EventStore.stream_all_forward(start_version, read_batch_size, timeout)
Usage now:
EventStore.append_to_stream(stream_uuid, expected_version, events, timeout: timeout) EventStore.link_to_stream(stream_uuid, expected_version, events_or_event_ids, timeout: timeout) EventStore.read_stream_forward(stream_uuid, start_version, count, timeout: timeout) EventStore.read_all_streams_forward(start_version, count, timeout: timeout) EventStore.stream_forward(stream_uuid, start_version, read_batch_size: read_batch_size, timeout: timeout) EventStore.stream_all_forward(start_version, read_batch_size: read_batch_size, timeout: timeout)
⬆️ Upgrading
🚀 This release requires a database migration to be run. Please read the Upgrading an EventStore guide for details on how to migrate an existing database.
-
v1.0.3 Changes
May 06, 2020🐛 Bug fixes
- 👉 Use event's stream version when appending events to a stream (#202).