Release 16.0.0
-
Merge pull request #938 from MetaFight/array-cycles
ArrayNodeDeserializer can now deserialize circular references. -
Merge pull request #935 from MrLuje/fsharp-collection
feat: properly handle FSharp List deserialization -
Merge pull request #927 from lahma/optimize-scalar-load
Optimize YamlScalarNode.Load and YamlMappingNode.Load -
Merge pull request #941 from EdwardCooke/ec-nullability
Fix bugs and add features
Breaking change notes
-
The
ITypeConverter
object is now passed to many methods and is expected when some are called. You can get the typeconverter by callingBuildTypeConverter
on the serializerbuilder and deserializerbuilder. This typeconverter should be treated as a singleton and injected into the constructor of your class. -
The
IPropertyDescriptor
is now passed into a lot of methods. It can be safely disregarded if you don't need it. It contains information about the property containing the object being deserialized. -
The delegates
ObjectSerializer
andObjectDeserializer
are also being passed around. They can be disregarded if you don't need them. -
To revert to the old date/time formats for
JsonCompatable
remove theDateTime8601Converter
and add theDateTimeConverter
with thedoubleQuotes
constructor parameter set totrue
. Example:new SerializerBuilder() .WithoutTypeConverter<YamlDotNet.Serialization.Converters.DateTime8601Converter>() .WithTypeConverter(new YamlDotNet.Serialization.Converters.DateTimeConverter(doubleQuotes: true)) .Build();
-
on
Mark
,Cursor
,SimpleKey
the position property data types changed fromint
tolong