This release provides a couple of new features and uses Kotlin 1.9.22 as default.
Class discriminator output mode
Class discriminator provides information for serializing and deserializing polymorphic class hierarchies.
In case you want to encode more or less information for various third party APIs about types in the output, it is possible to control
addition of the class discriminator with the JsonBuilder.classDiscriminatorMode
property.
For example, ClassDiscriminatorMode.NONE
does not add class discriminator at all, in case the receiving party is not interested in Kotlin types.
You can learn more about this feature in the documentation and corresponding PR.
Other features
- Add kebab-case naming strategy (#2531) (thanks to Emil Kantis)
- Add value class support to the ProtoBufSchemaGenerator (#2542) (thanks to Felipe Rotilho)
Bugfixes and improvements
- Fix: Hocon polymorphic serialization in containers (#2151) (thanks to LichtHund)
- Actualize lenient mode documentation (#2568)
- Slightly improve error messages thrown from serializer() function (#2533)
- Do not try to coerce input values for properties (#2530)
- Make empty objects and arrays collapsed in pretty print mode (#2506)
- Update Gradle dokka configuration to make sure "source" button is visible in all API docs (#2518, #2524)