grpcxx icon indicating copy to clipboard operation
grpcxx copied to clipboard

Add a client stub implementation

Open tchernobog opened this issue 1 year ago • 4 comments

To achieve minimum viability as a Google gRPC substitute, grpcxx needs a client stub implementation to accompany its server-only implementation.

It should:

  • generate the stub code in the .grpcxx.pb.h header
  • have a base client implementation which uses coroutines

tchernobog avatar Nov 04 '24 08:11 tchernobog

Relates to https://github.com/uatuko/grpcxx/discussions/35 and https://github.com/uatuko/grpcxx/issues/38.

uatuko avatar Nov 05 '24 18:11 uatuko

Relates to #35 and #38.

For sure #35, not sure #38 is strongly linked.

An independent client implementation could always be used, I don't see it a hard dep for HTTP/3 support. Adding QUIC support to grpcxx shouldn't be extremely hard even right now, the main issue is the need to abstract code which uses TCP connections as QUIC is over UDP by default.

At that point, I would advise also supporting unix sockets for local IPC, since it makes sense to do the work only once.

tchernobog avatar Nov 05 '24 21:11 tchernobog

#38 is related in the sense there aren't any HTTP/3 gRPC clients at the moment (at least not that I'm aware of), so if we implement HTTP/3 there must be a client to use it with.

Not saying we need to implement an HTTP/3 client in this issue, just wanted to keep related issues linked for future reference.

uatuko avatar Nov 05 '24 21:11 uatuko

Yes, this would be very valuable in unit tests f.i.

robiwano avatar Nov 07 '25 08:11 robiwano