From a1b4564067021c51831aeb44430c5efa2b9136d7 Mon Sep 17 00:00:00 2001 From: Scott Offen <3513626+scottoffen@users.noreply.github.com> Date: Wed, 3 Dec 2025 19:05:40 -0700 Subject: [PATCH] Lower version of System.Text.Json for .NET Standard 2.0 to 4.7.2 --- README.md | 6 +----- docs/docs/index.md | 6 +----- src/FluentHttpClient/FluentHttpClient.csproj | 9 +++++++-- src/FluentHttpClient/FluentJsonSerializer.cs | 2 ++ src/FluentHttpClient/README.md | 6 +----- src/version.json | 2 +- 6 files changed, 13 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 44670c1..8f38f8b 100644 --- a/README.md +++ b/README.md @@ -28,11 +28,7 @@ FluentHttpClient is optimized for .NET 10 and the newest .NET releases, while al Projects targeting **.NETStandard 2.0** or **.NETStandard 2.1** do not include `System.Text.Json` in the framework. FluentHttpClient uses `System.Text.Json` internally for its JSON extensions, but the package is not referenced transitively. -If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference with a minimum version of 6.0.10 (a higher version is always recommended): - -```xml - -``` +If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference, with a minimum version of 4.6.0 or 6.0.10, respectively. A higher version is always recommended. Apps targeting modern TFMs (such as .NET 5 and later) already include `System.Text.Json` and do not require this step. diff --git a/docs/docs/index.md b/docs/docs/index.md index 64d0f51..0c905a3 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -26,11 +26,7 @@ FluentHttpClient is optimized for .NET 10 and the newest .NET releases, while al Projects targeting **.NETStandard 2.0** or **.NETStandard 2.1** do not include `System.Text.Json` in the framework. FluentHttpClient uses `System.Text.Json` internally for its JSON extensions, but the package is not referenced transitively. -If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference with a minimum version of 6.0.10 (a higher version is always recommended): - -```xml - -``` +If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference, with a minimum version of 4.6.0 or 6.0.10, respectively. A higher version is always recommended. Apps targeting modern TFMs (such as .NET 5 and later) already include `System.Text.Json` and do not require this step. diff --git a/src/FluentHttpClient/FluentHttpClient.csproj b/src/FluentHttpClient/FluentHttpClient.csproj index 90b0ad8..a7783eb 100644 --- a/src/FluentHttpClient/FluentHttpClient.csproj +++ b/src/FluentHttpClient/FluentHttpClient.csproj @@ -35,8 +35,13 @@ true - - + + + + + + + diff --git a/src/FluentHttpClient/FluentJsonSerializer.cs b/src/FluentHttpClient/FluentJsonSerializer.cs index 0fdc7cb..963d14e 100644 --- a/src/FluentHttpClient/FluentJsonSerializer.cs +++ b/src/FluentHttpClient/FluentJsonSerializer.cs @@ -15,7 +15,9 @@ internal static class FluentJsonSerializer public static readonly JsonSerializerOptions DefaultJsonSerializerOptions = new JsonSerializerOptions { PropertyNameCaseInsensitive = true, +#if NETSTANDARD2_1_OR_GREATER NumberHandling = JsonNumberHandling.AllowReadingFromString, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull +#endif }; } diff --git a/src/FluentHttpClient/README.md b/src/FluentHttpClient/README.md index 8841d6a..96fc18f 100644 --- a/src/FluentHttpClient/README.md +++ b/src/FluentHttpClient/README.md @@ -21,11 +21,7 @@ FluentHttpClient is optimized for .NET 10 and the newest .NET releases, while al Projects targeting **.NETStandard 2.0** or **.NETStandard 2.1** do not include `System.Text.Json` in the framework. FluentHttpClient uses `System.Text.Json` internally for its JSON extensions, but the package is not referenced transitively. -If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference with a minimum version of 6.0.10 (a higher version is always recommended): - -```xml - -``` +If you are building against **netstandard2.0** or **netstandard2.1**, or any TFM that does **not** ship `System.Text.Json`, you will need to add an explicit package reference, with a minimum version of 4.6.0 or 6.0.10, respectively. A higher version is always recommended. Apps targeting modern TFMs (such as .NET 5 and later) already include `System.Text.Json` and do not require this step. diff --git a/src/version.json b/src/version.json index 1b84f5c..22e4c40 100644 --- a/src/version.json +++ b/src/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json", - "version": "5.0.0", + "version": "5.0.1", "publicReleaseRefSpec": [ "^refs/heads/main$", "^refs/heads/v\\d+(?:\\.\\d+)?$"