You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Should generate case classes with fields which are Option[String] instead of String. There is a semantic difference between what skeuomorph produces and the Proto2 spec. This means that you can't send the "not-set" string/int/bool value with skeuomorph without explicitly passing null (which is awful). This is problematic when dealing with apis that expect a null value be distinguishable from the default value.
See #89 and #92 which fix this for non-primitive types.
The text was updated successfully, but these errors were encountered:
I'm sorry, we are still working on docs, but skeuomorph has been designed aiming proto3 compliance initially. In general, when using skeuomorph along with mu we are recommending proto3 for the gRPC communications.
Understandable, but worth noting that proto3 is not and never was intended to replace proto2, but is a simpler alternative for some use cases. Proto2 is not deprecated, has no deprecation roadmap, and is used widely with many Google related technologies and even within new projects.
Lots of people assume proto3 > proto2, but it is more nuanced than that and I believe it's worth considering proto2 as not a technology that can be replaced by proto3, but a different technology with stronger controls available.
Should generate case classes with fields which are
Option[String]
instead ofString
. There is a semantic difference between what skeuomorph produces and the Proto2 spec. This means that you can't send the "not-set" string/int/bool value with skeuomorph without explicitly passing null (which is awful). This is problematic when dealing with apis that expect a null value be distinguishable from the default value.See #89 and #92 which fix this for non-primitive types.
The text was updated successfully, but these errors were encountered: