rogchap/wombat

Support `google.protobuf.Value`

shhac opened this issue ยท 1 comments

shhac commented

I'm working with gRPC, field masks and google.protobuf.Value, and the fact that it is cyclic is making Wombat unusable ๐Ÿ˜ž

It is rare that people use a cyclic structure to depths of more than 4 or 5, so would it be possible to change the error on cyclic types to instead depth count and "snip" when it reaches some reasonable/configured depth (e.g. 7) rather than throwing away the whole graph?

import "google/protobuf/field_mask.proto";
import "google/protobuf/struct.proto";

service ExampleService {
  rpc Example(ExampleRequest) returns (ExampleResponse);
}

message ExampleRequest {
  google.protobuf.FieldMask field_mask = 1;
  google.protobuf.Value data = 2;
}

message ExampleResponse {
  bool success = 1;
}