Zero 0.23

Synced Queries and React Native Support

Install

npm install @rocicorp/zero@0.23

Upgrading

For example upgrades, see ztunes or hello-zero-solid.

Please note the breaking changes below. They are minor this time.

To try synced queries, please refer to the docs, or the zslack / hello-zero-solid repos which have sample implementations. We will update the rest of the samples to synced queries and custom mutators in September.

Features

  • Synced Queries (previously known as "custom queries") (docs).
  • First-class React Native support (thanks Austin and Chase) (docs).
  • New "zslack" sample featuring React Native and Synced Queries (doc).
  • PlanetScale for Postgres is now fully supported (docs).
  • Suspense support for React (thanks Lewis) (docs).
  • Flag to disable CRUD mutators (docs).
  • New query metrics in inspector (docs).

Fixes

  • Large connection headers should not throw (PR).
  • Remove verbose stats from /statz that were crashing larger instances (PR).
  • Fix zero-sqlite3 in Docker container (PR).
  • GC inactive CVRs (PR).
  • Refuse or halt replication for unsupported replica identities (PR).
  • Disable DB-level statement_timeout for zero-cache connections (PR).
  • Handle resync after partial state drop (PR).
  • Fix logging color output on light terminals (PR).
  • Use TableSource with analyze-query to better match production (PR).
  • zero-cache now logs its version on startup (PR).
  • "Go to definition" works on custom mutators if you set enableLegacyMutators: false (bug).

zbugs

  • zbugs now supports image uploads! (PR).

Breaking Changes

  • ZeroProvider now required in SolidJS, just like in React (docs, PR).
  • The tx parameter in custom mutators now requires an explicit type (PR).
  • The CustomMutatorDefs type no longer accepts template parameters (PR)
  • The delegate() method on the Query class was removed. Use zero.run, zero.preload, or zero.materialize instead (PR).