Releases: aaubry/YamlDotNet
Release 16.3.0
What's Changed
- Support struct aot by @yhd4711499 in #1020
- perf: Optimize number parse logics by @filzrev in #1007
- fix: serialization using IndentedTextWriter causes missing indentation by @ogretmenb in #1017
- Fix nullable field types due to compiler optimizations by @EdwardCooke in #1025
New Contributors
- @yhd4711499 made their first contribution in #1020
- @ogretmenb made their first contribution in #1017
Full Changelog: v16.2.1...v16.3.0
Release 16.2.1
What's Changed
- Disable fsharp on AOT/Trimming by @EdwardCooke in #1013
Full Changelog: v16.2.0...v16.2.1
Release 16.2.0
What's Changed
- Support YamlConverterAttribute in attribute overrides by @ChristopherMann in #1003
- Fix JSON serialization for UTF-32 characters. by @nahk-ivanov in #998
- fix: floating-point number serialization issue for non-normal values by @filzrev in #992
- perf: Optimize regular numbers parse logics by @filzrev in #990
New Contributors
- @ChristopherMann made their first contribution in #1003
- @nahk-ivanov made their first contribution in #998
- @filzrev made their first contribution in #992
Full Changelog: v16.1.3...v16.2.0
Release 16.1.3
What's Changed
- Use collection expressions by @lahma in #980
- Update testing libraries and migrate FluentAssertions syntax by @lahma in #979
- Removes sealed from a number of classes and respects empty strings in enummember by @EdwardCooke in #985
Full Changelog: v16.1.2...v16.1.3
Release 16.1.2
What's Changed
- Fix warnings when building in linux due to IDE0055 bugs by @EdwardCooke in #978
Full Changelog: v16.1.1...v16.1.2
Release 16.1.1
What's Changed
- Enable .NET analyzers by @lahma in #928
- Dont use enummember attribute when it's null or empty by @EdwardCooke in #967
- Eliminate allocs in TypeConverterCache lookup path by @MattKotsenas in #969
- Fix build warnings in linux by @EdwardCooke in #970
- Prevent forced quoting of strings with leading backslash by @jcbfaulks in #972
- Switch from .nuspec files to project properties by @MattKotsenas in #958
- Fix analyzer warnings on NET 9 SDK by @lahma in #971
- Convert to use Central Package Management by @lahma in #973
- Warnings as errors and compiler error cleanup by @EdwardCooke in #976
New Contributors
- @jcbfaulks made their first contribution in #972
Full Changelog: v16.1.0...v16.1.1
Release 16.1.0
What's Changed
- Use ContinuousDelivery for gitversion to fix the builds by @EdwardCooke in #961
- Make DefaultObjectFactory thread safe by @alxmitch in #920
- Set Langversion to 12.0 and use global Directory.Build.props by @lahma in #931
- Force a plain value by @oddbeck in #951
- Fix property handling when there are hidden properties by @julian-burger-ttd in #960
- Use Attribute.GetCustomAttributes to reduce allocations / improve performance by @MattKotsenas in #953
- Avoid closures in CachedTypeInspector by @MattKotsenas in #954
- Eliminate allocations from ReflectionUtility.GetImplementedInterfaces by @MattKotsenas in #955
- Cache lookups to IEnumerable by @MattKotsenas in #956
- Eliminate allocations from CharacterAnalyzer by @MattKotsenas in #957
- Made the typeconvertercache a concurrent dictionary by @EdwardCooke in #962
- Added private member yaml member attrribute regression test by @EdwardCooke in #963
- Fix single element with anchor inline mapping by @EdwardCooke in #964
- Support keys larger > 1024 characters by @EdwardCooke in #965
New Contributors
- @alxmitch made their first contribution in #920
- @oddbeck made their first contribution in #951
- @julian-burger-ttd made their first contribution in #960
- @MattKotsenas made their first contribution in #953
Full Changelog: v16.0.0...v16.1.0
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