v0.9.0
Immutable
release. Only release title and notes can be modified.
Tracks vgi-rpc-python 0.20.0 (continuation-only stream resume).
implementation("farm.query:vgirpc:0.9.0") // core
implementation("farm.query:vgirpc-oauth:0.9.0") // optional: JWT / OAuth / PKCE
implementation("farm.query:vgirpc-s3:0.9.0") // optional: S3 external storage
implementation("farm.query:vgirpc-gcs:0.9.0") // optional: GCS external storageHighlights
- Continuation-only stream resume (HTTP):
HttpStreamHandlerresolves each stream method's concreteStreamStateclass at construction by introspecting the implementation's generic return types (the Java mirror of Python's_resolve_state_types). A continuation-onlyPOST /{method}/exchange— e.g. a stateless relay resuming from a held per-batch token via the Python 0.20.0resume_streamclient — now works on a worker that never served the stream's/init, as long as workers share a token key. - To be resumable cross-process, implementations must declare concrete stream returns (
RpcStream<Counter> produce_n(...)); wildcard returns (RpcStream<? extends ProducerState>) keep the previous in-process behaviour. - Interop verified against the Python 0.20.0 client (
next_with_token/seek_to_token/resume_stream) across two workers sharing a--token-key.
Requires --add-opens=java.base/java.nio=ALL-UNNAMED at runtime (Apache Arrow). See the README for a quick start.