Skip to content

chore: version packages - #209

Merged
tmm merged 1 commit into
mainfrom
changeset-release/main
Nov 14, 2026
Merged

tmm merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Nov 14, 2026 •

Copy link
Copy Markdown

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

zero-rust@0.2.0

Minor Changes

  • 5f6e6d7: Add typed named queries and mutators behind a new serde feature, shaped like the Swift client's defineQuery and defineMutator. define::define_query(name, |args, ctx| query) and define::define_mutator(name, |tx, args, ctx| ...) take serde argument types, and .with(args) makes a QueryRequest for materialize, run, and preload (built with the Zero's context) or a client::MutateRequest for the new Zero::mutate_request. json::Value implements serde, with json::to_value and json::from_value. materialize, run, and preload now take any query::ZeroQuery (an AnyQuery, a typed Query, or a QueryRequest), so existing calls keep working; the default build still has no third-party dependencies.
  • 16ee0b8: Add JS's inspector and query metrics. Zero::inspector() returns an Inspector that lists the clients in the local store and their queries (with each query's ZQL, row count, and timings), reads a client's stored data and rows, fetches zero-cache's version and the client's metrics merged with the server's, and asks zero-cache to analyze a query (analyze_query, analyze_server_ast, analyze_named_query). When zero-cache requires its admin password, an inspector call fails until authenticate(password) succeeds, and the accepted password is presented again after a reconnect. The client now records JS's query-materialization-client, query-materialization-end-to-end, and query-update-client metrics as tdigest::TDigests, and logs each query's end-to-end materialization, as a warning when it takes longer than the new ZeroOptions::slow_materialize_threshold_ms (5,000 by default).
  • 8f4916a: Add two of JS's options to ZeroOptions. get_traceparent (getTraceparent) puts a W3C traceparent on each query change, initConnection message, and push the client sends, so zero-cache and the API server can join the app's trace. batch_view_updates (batchViewUpdates) wraps each new view's creation and each change that updates the views, with their listener calls, so a UI can render them at once. Add Ttl::DEFAULT_PRELOAD, the TTL JS's preload uses when it isn't given one.

Patch Changes

  • c3cb36c: Take JSON nested up to 5,000 levels deep, more than zero-cache can write, instead of rejecting it past 1,500: a row with a JSON column nested that deep no longer makes the client disconnect after every reconnect. Cloning, comparing, and writing such a value no longer recurse past a hundred or so levels, so it fits in a 2 MB thread stack even in a debug build.

zero-swift@0.7.13

Patch Changes

  • 4629981: Add JS's inspector and query metrics. zero.inspector lists the client's and its group's queries on the server, with their client and server timings and ZQL, reads the clients the local store knows and their local data, reports the client's query metrics merged with the server's, shows zero-cache's version, and analyzes a query, a server AST, or a named query on the server. Where JS asks for zero-cache's admin password in a dialog, a request throws InspectorError.authenticationRequired: call zero.inspector.authenticate(password:) first, and the password it accepts is presented again after a reconnect. The client records JS's query metrics (query-materialization-client, query-materialization-end-to-end, query-update-client) in a TDigest that gives the same quantiles as JS's, and ZeroOptions.slowMaterializeThreshold (5 seconds by default) logs a warning for a query that takes longer to materialize, server and network included.
  • 9fa75ad: Take rows whose JSON is nested up to 5,000 levels deep, as the Rust client does, instead of 1,500. zero-cache writes up to about 4,100 levels, which JS accepts; a row nested deeper than about 1,495 levels made the client reject the poke, disconnect, and fail the same way after every reconnect. Values that deep are now also freed without recursion, so they don't overflow a 512 KB thread stack.
  • 8f4916a: Add two of JS's options to ZeroOptions. getTraceparent puts a W3C traceparent on each query change, initConnection message, and push the client sends, so zero-cache and the API server can join the app's trace. batchViewUpdates wraps each new view's creation and each change that updates the views, with their listener calls, so a UI can render them at once.

@github-actions
github-actions Bot force-pushed the changeset-release/main branch 5 times, most recently from fda79d3 to 2edc1c0 Compare November 14, 2026 15:17
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 2edc1c0 to 308efbb Compare November 14, 2026 15:41
@tmm
tmm merged commit 4c20b58 into main Nov 14, 2026
2 checks passed
@tmm
tmm deleted the changeset-release/main branch November 14, 2026 16:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant