is there a go based grpc cli that uses reflection like the C++ one?
i would rather have something statically linked than have to deal with dependency hell
I added reflection to my grpc server yet grpc_cli still complains about missing imports
I was under the impression reflection means no imports needed
does reflection not properly work with proto imports?
cause it surely doesn't seem to
I just get "[libprotobuf ERROR google/protobuf/descriptor.cc:3457] Invalid proto descriptor for file"
when trying to call a service
it works if I pass the proto paths but that is silly when I enabled reflection
ejona
lungaro: No, there isn't such a Go CLI. Go's Protobuf implementation doesn't support "generic message" where is serializes based on a descriptor, which is necessary.
lungaro
how does the grpc_cli make a descriptor dynamically?
ejona
lungaro: That's weird that you're having trouble when using reflection.
C++ and Java have a "generic message" API.
lungaro
i have .proto files with "import public "...." " in them and it fails on the imports
ejona
Oh. I... can believe that.
lungaro
well grpc_cli works if I properly pass --protofiles and --proto_path
ejona
I've seen some other things broken with import public.
:-/
lungaro
lame
ejona
Could you file a bug in grpc/grpc for us to take a look?
lungaro
the complexity of the DSL always breaks downstream tools
kinda bad experience
Sure
i wonder if go has a generic message api
it probably doesn't eh?
hmm, maybe python. The fact there is reflection is a big step forward
ejona
I think I've seen a Go one, but it isn't "official"
lungaro: Here is Java's DynamicMessage for reference: