From a8d9844b01889bd5a4b871553c7dbfc6193646be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Domeradzki?= Date: Tue, 11 Nov 2025 19:50:44 +0100 Subject: [PATCH] JsonSerializerDefaults.Strict improvements --- ArchiSteamFarm/Helpers/Json/JsonUtilities.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ArchiSteamFarm/Helpers/Json/JsonUtilities.cs b/ArchiSteamFarm/Helpers/Json/JsonUtilities.cs index 3fb95b57c..47ffe7918 100644 --- a/ArchiSteamFarm/Helpers/Json/JsonUtilities.cs +++ b/ArchiSteamFarm/Helpers/Json/JsonUtilities.cs @@ -29,6 +29,7 @@ using System.Reflection; using System.Text.Encodings.Web; using System.Text.Json; using System.Text.Json.Nodes; +using System.Text.Json.Serialization; using System.Text.Json.Serialization.Metadata; using System.Threading; using System.Threading.Tasks; @@ -116,12 +117,15 @@ public static class JsonUtilities { [UnconditionalSuppressMessage("AssemblyLoadTrimming", "IL2026:RequiresUnreferencedCode", Justification = "We don't care about trimmed assemblies, as we need it to work only with the known (used) ones")] private static JsonSerializerOptions CreateDefaultJsonSerializerOptions(bool writeIndented = false) => - new() { + new(JsonSerializerDefaults.Strict) { AllowTrailingCommas = true, Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping, + IndentCharacter = '\t', + IndentSize = 1, PropertyNamingPolicy = null, ReadCommentHandling = JsonCommentHandling.Skip, TypeInfoResolver = new DefaultJsonTypeInfoResolver { Modifiers = { ApplyCustomModifiers } }, + UnmappedMemberHandling = JsonUnmappedMemberHandling.Skip, WriteIndented = writeIndented };