YamlDotNet icon indicating copy to clipboard operation
YamlDotNet copied to clipboard

IncludeNonPublicProperties() broken in 16.0.0

Open dsdante opened this issue 1 year ago • 1 comments
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

dsdante avatar Aug 12 '24 09:08 dsdante

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).

jamesbt365 avatar Aug 01 '24 20:08 jamesbt365