Skip to content

v2.18.0

Choose a tag to compare

@lawrence-forooghian lawrence-forooghian released this 23 Feb 18:36
0035db0

Full Changelog: 2.17.1...2.18.0

What's Changed

New features

LiveObjects operations are now applied on acknowledgement

When you call a LiveObjects mutation method (e.g. map.set()), the SDK now applies the effects of this operation to the local LiveObjects data as soon as it receives the server's acknowledgement of this operation. This is an improvement over earlier versions, in which the SDK did not apply such an operation until receiving the operation's echo.

Concretely, this means that in the following example, fetchedValue is now guaranteed to be myValue:

await map.set('myKey', 'myValue');
const fetchedValue = map.get('myKey').value();

Bug fixes

  • Fix bug where calling channel.off() could prevent attach() and detach() calls from completing #2167
  • Make sure that ErrorInfo.cause is always an ErrorInfo #2169