Commit Graph

3 Commits

Author SHA1 Message Date
Derek McGowan
471297eed9 Add recvClose channel to stream
Prevent panic from closing recv channel, which may be written to after
close. Use a separate channel to signal recv has closed and check that
channel on read and write.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2023-05-08 12:26:34 -07:00
Vincent Batts
6eee73df5d
*.go: organize errors to one spot
And add a little documentation.

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-19 14:40:16 -04:00
Derek McGowan
d28bc92657 Introduce streaming to client and server
Implementation of the 1.2 protocol with support for streaming. Provides
the client and server interfaces for implementing services with
streaming.

Unary behavior is mostly unchanged and avoids extra stream tracking just
for unary calls. Streaming calls are tracked to route data to the
appropriate stream as it is received.

Stricter stream ID handling, disallowing unexpected re-use of stream
IDs.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2022-04-07 17:11:40 -07:00