Releases: ch-robinson/dotnet-avro
7.0.1
This patch release includes a couple of small improvements:
-
The
dotnet avro
CLI now accepts multiple--assembly
flags, making it possible to generate schemas for types in assemblies with other dependent assemblies (#95). -
Array schemas can now be deserialized to System.Collections.ObjectModel.Collection<T> (#97, h/t @KaleV-K).
7.0.0
This major release introduces a few breaking improvements:
-
Chr.Avro.Confluent now targets Confluent.SchemaRegistry 1.5.0 (#85). Starting with Confluent Platform 5.4.0, the Schema Registry supports additional schema types, and this change includes more informative exceptions should an application try to use a non-Avro schema.
-
The Chr.Avro.Confluent consumer/producer builder extension methods have been adjusted to accept serde builder interfaces instead of concrete types (#87).
-
The schema builder now returns the same instance when building schemas containing both a value type and its nullable counterpart (#92). This resolves possible name collision exceptions when writing schemas containing enums or structs.
6.0.0
This major release fixes a serialization bug:
-
Prior to 6.0.0, references to generated serialization functions were only keyed by type. This behavior could cause deserialization to fail when mapping different schemas to the same type (#81).
The fix resulted in a small API change: The
References
dictionaries on the serde builder case results are now keyed by(Schema, Type)
instead ofType
.
2.1.2
5.0.2
4.1.1
3.3.1
2.1.1
5.0.1
This patch release includes two bug fixes:
-
The decimal serdes now support all values from
decimal.MinValue
todecimal.MaxValue
(#77; h/t @shawnmanderson). Previously, overflow exceptions may have been thrown when attempting to serialize or deserialize extremely large values. -
The async Schema Registry serdes no longer cache failed build attempts (#78; h/t @woodlee).
5.0.0
This major release includes improvments to Chr.Avro.Confluent. Most applications should be able to upgrade from 4.x versions without making any major changes.
Breaking changes
-
Chr.Avro.Confluent serializers with automatic registration enabled will now always post a generated schema to the Schema Registry (#74). Previously, automatic registration only occurred for breaking changes (i.e., when a schema from the Registry could not be mapped to the type being serialized).
To better communicate this new behavior, we changed the API:
registerAutomatically
parameters now accept an enum (Never
orAlways
) instead of a boolean.
Bug fixes
- Prior to 5.0.0, the Schema Registry serializer/deserializer builders did not have matching interfaces (#73).