OK, thanks. Is there a recommended way of upgrading a float field to a double field? There is no discussion of this path right now in the protobuf docs.
James On Thursday, November 16, 2017 at 11:16:58 AM UTC-8, liujisi wrote: > > The spec doesn't allow such conversion. If some language implementation > supports the conversion, it is considered a bug by not following spec. > > Protobuf is designed to interop across different languages/platforms. > Implicit conversion in "some libraries" allows creating non portable > payload which leads to issues/surprises when you change the > language/implementation in part of your pipeline, or communicate to a > different party. > > That being said, you can propose to add the conversion to the spec to > promote float->double promotion. That would require to change all the > language implementations and we need to evaluate the cost and benefit. > > On Wednesday, November 15, 2017 at 10:18:15 PM UTC-8, James Philbin wrote: >> >> But the type stored on the wire is known - so it seems like it could be >> supported (simply static_cast<double>(float_val)). By 'some libraries': >> does the C++ ParseFromString method do this or not? >> >> Thanks! >> James >> >> On Wed, Nov 15, 2017 at 3:57 PM Marc Gravell <[email protected] >> <javascript:>> wrote: >> >>> Not really, no. They take different amounts of space on the wire, and >>> have a different declared wire type (header). Some libraries may choose to >>> be gracious and apply the conversion silently, but other libraries could >>> just say "unexpected wire type" and stop processing. >>> >>> You could perhaps do it as a `oneof`, and have the client check both? >>> >>> On 15 Nov 2017 11:51 p.m., "James Philbin" <[email protected] >>> <javascript:>> wrote: >>> >>>> Hi, >>>> >>>> Is it safe to upgrade float fields to doubles for serialized protos? If >>>> not, why not? >>>> >>>> Thanks, >>>> James >>>> >>>> -- >>>> >>> You received this message because you are subscribed to the Google >>>> Groups "Protocol Buffers" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected] <javascript:>. >>> >>> >>>> To post to this group, send email to [email protected] >>>> <javascript:>. >>>> Visit this group at https://groups.google.com/group/protobuf. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.
