gRPC API (community request)

Hello,

for a Julia pkg I work on, there is the requirement of a gRPC library. I found the grpc.jl and although the creator has a great reputation, it seems that his time to work on this project is limited, which leads to kind of an unmaintained state. Also the dependencies are unmaintained and even removed from the registry.

However, there already is the protobuf.jl package in the JuliaIO org. So, the question is, if the JuliaIO group or any other active maintainer would be interested to work out a grpcio.jl package that keeps up with the grpc and Julia advantages.

I asked the people of the official grpc library already, but they do not have the Julia staffing or expertise to support it. Still, they are offering to help facilitate the work, clarify requirements, do API reviews, set up interop tests, etc.

https://github.com/grpc/grpc/issues/24786

So, in case anybody would be interested to pick this up and get it going, it would be much appreciated and a valuable contribution I think.

Mark

14 Likes

Agreed, thanks to the author for gRPC.jl, but with no docs or tests it’s a very approachable package yet. I’m looking forward to more solid gRPC facilities in Julia!

2 Likes

The request doesn’t seem too popular here sadly.

This will be immensely useful for us to replace C++ codebase

There has been progress actually, LibCURL.jl in base provides the HTTP/2 headers and Tanmay created gRPCClient.jl on behalf of JuliaComputing. This works great now!

3 Likes

Thank you for the references @mks. The progress on the client is definitely a good thing, but most of our use cases require a Julia GRPC server infra;

Bump! Excited to see that client-side gRPC is now supported but it would be awesome to get a full server-side implementation as well. I’m happy to help contribute but don’t have the Julia expertise to spearhead the effort. Is anyone currently working on this?

We currently connect to a java gRPC server and soon to a Rust gRPC server. I’ve read that @tanmaykm also has or had the intention to do the gRPCServer.jl, but not sure if this has come to life.

Yes… I had started on one, based on the idea of building it on top of libnghttpd. But unfortunately haven’t been able to complete it, and I am not sure when I will be able to get back to it.

1 Like

I would be interested in helping implement this. How can I help?

What exactly do you want to help with? There is no gRPC Julia server and currently there is no effort anymore to build one afaics. @tanmaykm mentioned the libnghttpd, so if you feel adventurous and skilled enough, maybe give that a go.

Maybe we can jump on a call and can discuss details.

That request would be directed to @tanmaykm then. I’m not a programmer and our requirement was to have a client available, which was met already with gRPCClient.js.