Changed: Improve internal gRPC connection management for better error propagation.
Fixes #223
Major rewrite of how gRPC connections are managed internally. This new design allows exceptions like InterruptedException to be propagated even when they occur in the connection manager thread.
The public client method shutdown changed. It used to be void but now it's CompletableFuture<Void>. Technically, it shouldn't break user code unless they have enabled very pedantic compiler options.
However I deprecated the Endpoint type as using InetSocketAddress across the board was simpler and removed unnecessary allocations when converting Endpoint to InetSocketAddress.
Technically those breaking changes, while minor, warrant upping the major release number.
Changed: Improve internal gRPC connection management for better error propagation.
Fixes #223
Major rewrite of how gRPC connections are managed internally. This new design allows exceptions like
InterruptedException
to be propagated even when they occur in the connection manager thread.The public client method
shutdown
changed. It used to bevoid
but now it'sCompletableFuture<Void>
. Technically, it shouldn't break user code unless they have enabled very pedantic compiler options.However I deprecated the
Endpoint
type as usingInetSocketAddress
across the board was simpler and removed unnecessary allocations when convertingEndpoint
toInetSocketAddress
.Technically those breaking changes, while minor, warrant upping the major release number.