Open AlexeySoshin opened 5 years ago
Has to do with empty arrays:
"grpcCoroutines": []
doesn't generate the file, but "grpcCoroutines": [{}]
does, in JSON format.
Looking at it now, it makes sense. The generator being enabled relies on the existence of at least one configuration being present. The empty {}
serializes to one configuration. These two configurations are equivalent.
// asciipb
grpc_coroutines{}
grpc_coroutines{}
{
"grpcCoroutines":[
{},
{}
]
}
To your point though, the configuration for json and yaml is confusing. I think this could potentially be fixed by checking if the message is set in the filter utils, but this would need to be tested. In theory it should work since message fields still support hasX
checks in proto3. https://github.com/protocolbuffers/protobuf/issues/249
grpcCoroutines: []
is working in yaml version with proto3 with 0.5.0
Object named
<ServiceName>CoroutineGrpc
is generated only whenascipb
format is used. In bothjson
andyml
formats it's not present. Example project: https://github.com/alexeysoshin/KotlinGrpcKrotoMy guess is that it has something to do with upper-case and lower case names.