YamlDotNet
YamlDotNet copied to clipboard
IncludeNonPublicProperties() broken in 16.0.0
trafficstars
After updating from 15.3.0 to 16.0.0 the deserializer no longer sees private/internal/etc properties even when built with DeserializerBuilder.IncludeNonPublicProperties().
// Program.cs
using YamlDotNet.Serialization;
using StreamReader file = new("test.yaml");
var result = new DeserializerBuilder()
.IncludeNonPublicProperties()
.Build()
.Deserialize<Test>(file);
Console.WriteLine(result.PublicValue);
class Test
{
[YamlMember(Alias = "key")]
private string YamlValue { get; set; } = null!;
public string PublicValue => YamlValue;
}
# test.yaml
key: value
Seems like this is another tablet using the same identifiers as the 10moons 1060N. This is not promising at all and this could be very tricky to support, you can see how broken the current 10moons tablet we support is (see #2074)
Would need to look back when this tablet originally supported it and see what filtering we can do see if we can avoid the misdetection (if the hardware is even internally different).