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
Currently, in v2, we set a class using AvroSchema and AvroLogicalType annotations to be able to customize the final schemas and add logical types, but this requires kotlin reflection to allow creating the instance of the given class. In v1, we unwrap the nullable SerialDescriptors to get back the AvroDescriptor to access the custom methods for generating the schemas.
A PR has been done to be able of unwrapping a nullable descriptor, that now allows us to retrieve the original descriptor, so we can get rid of reflection for logical types and custom schemas, and it allows us to create brand new methods and interfaces on a standard SerialDescriptor.
Currently, in v2, we set a class using
AvroSchema
andAvroLogicalType
annotations to be able to customize the final schemas and add logical types, but this requires kotlin reflection to allow creating the instance of the given class. In v1, we unwrap the nullableSerialDescriptor
s to get back theAvroDescriptor
to access the custom methods for generating the schemas.A PR has been done to be able of unwrapping a nullable descriptor, that now allows us to retrieve the original descriptor, so we can get rid of reflection for logical types and custom schemas, and it allows us to create brand new methods and interfaces on a standard
SerialDescriptor
.This has been done here: Kotlin/kotlinx.serialization@c7bcaf1
When kotlin-serialization is released, avro4k v2 will be allowed to be released
The text was updated successfully, but these errors were encountered: