Skip to content

Releases: composablesys/collabs

v0.3.0

29 Jan 00:39
Compare
Choose a tag to compare
  • Improve container/app saving & loading, app interface refactor, and demo improvements (#210)

Breaking API changes:

  • App class removed; Runtime interface reduced in scope. Instead, their old functionality appears on CRDTApp and CRDTRuntime only.
  • CRDTApp, CRDTRuntime: different network contract: "Send" event and publicly-used receive function, instead of BroadcastNetwork.
  • Argument to Collab.load (and analogous methods) is now an Optional<Uint8Array> instead of Uint8Array | null. The idea is the same, but TypeScript is better at enforcing the empty/null case this way.
  • Container -> CRDTContainer, ContainerHost -> CRDTContainerHost, and these classes are completely rewritten. See container docs for new usage.
  • CRegister interface now has a soft requirement to only emit "Set" events when the value actually changes.

Alpha software - API subject to change.

v0.2.1

07 Jan 22:05
Compare
Choose a tag to compare
  • Bug fix: "Change" events in BatchingLayer not always emitted. (That broke the Minesweeper demo in v0.2.0, now working again.)

Alpha software - API subject to change.

v0.2.0

07 Jan 21:32
Compare
Choose a tag to compare
  • Increase modularity & generality (#184) - core abstraction is now a "collaborative data structure" (data structure that is replicated with replicas communicating through message passing), not just op-based CRDTs. In particular, the Crdt class is now named Collab.
  • Cleanup (#205) - misc tasks from my todo-list and TODOs in code comments.

This release has a number of breaking API changes - mostly renaming changes, but also some conceptual changes that affect power users. See minesweeper.ts for an example of the changes needed for an app using the library.

Alpha software - API subject to change.

v0.1.3

05 Jan 17:37
Compare
Choose a tag to compare

"Initial" release of @collabs/collabs, @collabs/container, @collabs/matrix-widget, @collabs/ws-server, @collabs/ws-client, and @collabs/container-testing-server. (Earlier versions were released on npm but not tagged here, and their versions were not properly sync; they should not be used.)

Alpha software - API subject to change.