Skip to content

0.8.1881

Choose a tag to compare

@TimoKramer TimoKramer released this 05 Sep 12:10
cac671a
listen and unlisten on the JVM thin client (#1070)

* listen and unlisten on the JVM thin client

The change stream was readable from JavaScript only. The JVM client now
opens the same route with a streaming request on a dedicated thread, so
a blocking read never sits on the async dispatch pool, parses the events
and hands the callback the same report shape the ClojureScript side
does, with db-after as a remote handle. Reconnect carries the last
commit id and backs off; 401, 403 and 404 stop the listener with an
error rather than retrying a permission that will not change. unlisten
interrupts the reader and closes the stream.

Claude-Session: https://claude.ai/code/session_01J9RUNkHFidHP8EVQVCSqf3

* Type-hint the listener's stream reader and backoff sleep

The reflection gate compiles src/ with *warn-on-reflection*; the
InputStreamReader constructor and Thread/sleep were unhinted.

Claude-Session: https://claude.ai/code/session_01J9RUNkHFidHP8EVQVCSqf3