Skip to content

Roslyn trimmer errors for json calls #287

@xPaw

Description

@xPaw

I am trying to publish an app that uses SharpGLTF with AOT and PublishTrimmed enabled, and the analyser is producing these errors.

Even if I remove any assignments to Extras, it is producing these errors, so I am not sure it is caused by my usage of sharpgltf.

ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonArray.Add<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonValue.Create<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed. Use the overload that takes a JsonTypeInfo, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.get: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonArray.Add<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.Schema2.ExtraProperties.Extras.set: Using member 'System.Text.Json.Nodes.JsonValue.Create<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed. Use the overload that takes a JsonTypeInfo, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonArray.Add<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonValue.Create<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed. Use the overload that takes a JsonTypeInfo, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode._Properties: Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonValue.Create<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed. Use the overload that takes a JsonTypeInfo, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ConvertFromValue<T>(T, Nullable<JsonNodeOptions>)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonArray.Add<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.
ILLink : Trim analysis error IL2026: SharpGLTF.IO.UnknownNode.DeserializeProperty(String, Utf8JsonReader&): Using member 'System.Text.Json.Nodes.JsonNode.ReplaceWith<T>(T)' which has 'RequiresUnreferencedCodeAttribute' can break functionality when trimming application code. Creating JsonValue instances with non-primitive types is not compatible with trimming. It can result in non-primitive types being serialized, which may have their members trimmed.

SharpGLTF.Toolkit 1.0.5

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions