Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 07:38
1f4a31b

0.2.0 (2026-10-24)

Features

  • Add WriteFilter for controlling writes based on current data (11281b2)
  • Declare access permissions, roles and access parents within schema (56165df)

Bug Fixes

  • client: Keep a delete and re-create as separate writes (992e717)
  • client: Keep accepted edits when the server refuses another edit to the same row (fc1caf8)
  • client: Keep an unconfirmed edit queued when the client re-downloads a workspace (c2f7afe)
  • client: Make useGroupCount and useGroupRows respect the workspaceId option (c94c757)
  • client: Refuse map keys outside the key type's range in local queries (6d99d52)
  • client: Stop text fields that start with U+FEFF from becoming unreadable (496943b)
  • engine: Accept compiled messages after a schema is registered from a descriptor set (354065a)
  • engine: Answer out-of-range mutation ids with invalid_argument (cf1e439)
  • engine: Keep idempotency keys per caller so one user never receives another's recorded result (5f9bc9b)
  • engine: Let users reconnect to presence after a stranger takes their session id (f4168e6)
  • engine: Make server queries match local queries for out-of-range integer literals (c4f230b)
  • engine: Purge history rows on Postgres for any non-ASCII key prefix (afbee60)
  • engine: Re-check entity write rules under the write lock (09d5789)
  • engine: Refuse client ids longer than 128 bytes instead of failing the push on Postgres (09013b3)
  • engine: Reject writes whose indexed value is too long instead of dead-lettering them on Postgres (c364310)
  • engine: Remove rows from clients when they stop following a reference (1621ebc)
  • engine: Stop a node from overwriting a newer app schema (e870857)
  • engine: Stop an edited sync cursor from reading rows the read filter hides (f1be064)
  • engine: Stop an older presence update from replacing a newer one (fd8a4e2)
  • engine: Stop leased background work from running twice on one Postgres node (d43855d)
  • engine: Stop open sync streams from sending rows that a permission change hides (dfeb228)
  • engine: Stop other users from blocking a client's writes by reusing its client ID (af4c330)
  • engine: Stop pulls failing after a windowed subscription is removed (ba0e035)
  • engine: Use the default heartbeat for a value that is not positive (24c7eee)
  • Prevent dynamic registrations disagreeing after a server restart (a4f7268)
  • Return the matching rows for prefix searches on descending indexes (d6bb403)
  • Stop an edit to an empty-string key from replacing the whole map, set or list (4fb0588)
  • Stop index reads from rounding integer literals on double fields (056fecd)
  • Stop one malformed text edit from making a field unreadable for everyone (80eb325)
  • Stop one write from making a collaborative text field impossible to edit (4163afe)