Right now, to make changes to the Option serialization (put null in json), or to use snake_case, one has to override corresponding methods in the AttributeTagged. I propose two ways to improve the DX in this process:
Add traits to be used as add-ons (with cake pattern) in order to configure the serializers, for example traits such as SnakeCaseNaming or NoneValueAsNull:
Right now, to make changes to the Option serialization (put
null
in json), or to use snake_case, one has to override corresponding methods in theAttributeTagged
. I propose two ways to improve the DX in this process:SnakeCaseNaming
orNoneValueAsNull
:AttributeTagged
to be more descriptive of its purpose and easier to remember. Maybe evenCustomizableUpickleApi
orCustomNamingUpickleApi
.