From 3c88aa97902a00c9c10f63bfdcb928f581f6b673 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Oct 2025 21:16:39 +0000 Subject: [PATCH 1/5] chore(deps): bump actions/upload-artifact from 4 to 5 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci-cd.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 4135aabc2..9d55602b3 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -76,7 +76,7 @@ jobs: working-directory: ./performance/benchmark - name: Publish benchmark results - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: if-no-files-found: error name: benchmark-results From 8e2d2be9e375f6233bb229703588f6a13ca24766 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 30 Oct 2025 21:04:25 +0000 Subject: [PATCH 2/5] Bump BenchmarkDotNet and BenchmarkDotNet.Diagnostics.Windows Bumps BenchmarkDotNet from 0.15.4 to 0.15.5 Bumps BenchmarkDotNet.Diagnostics.Windows from 0.15.4 to 0.15.5 --- updated-dependencies: - dependency-name: BenchmarkDotNet dependency-version: 0.15.5 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: BenchmarkDotNet.Diagnostics.Windows dependency-version: 0.15.5 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- performance/benchmark/PerformanceTests.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/performance/benchmark/PerformanceTests.csproj b/performance/benchmark/PerformanceTests.csproj index 78e1a5cd4..952e144dc 100644 --- a/performance/benchmark/PerformanceTests.csproj +++ b/performance/benchmark/PerformanceTests.csproj @@ -14,8 +14,8 @@ CA1822 - - + + From 5419ecb04ba16d9aea269f2e1959ec2daeda481b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 21:05:05 +0000 Subject: [PATCH 3/5] Bump BenchmarkDotNet and BenchmarkDotNet.Diagnostics.Windows Bumps BenchmarkDotNet from 0.15.5 to 0.15.6 Bumps BenchmarkDotNet.Diagnostics.Windows from 0.15.5 to 0.15.6 --- updated-dependencies: - dependency-name: BenchmarkDotNet dependency-version: 0.15.6 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: BenchmarkDotNet.Diagnostics.Windows dependency-version: 0.15.6 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- performance/benchmark/PerformanceTests.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/performance/benchmark/PerformanceTests.csproj b/performance/benchmark/PerformanceTests.csproj index 952e144dc..b3c779c35 100644 --- a/performance/benchmark/PerformanceTests.csproj +++ b/performance/benchmark/PerformanceTests.csproj @@ -14,8 +14,8 @@ CA1822 - - + + From 15618e1f6a79874ae61dc31e3bcd5e1f3177d7ff Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Thu, 6 Nov 2025 14:39:01 -0500 Subject: [PATCH 4/5] fix: a bug where null sentinel value would appear in YAML documents Signed-off-by: Vincent Biret --- src/Microsoft.OpenApi.YamlReader/YamlConverter.cs | 4 ++++ .../YamlConverterTests.cs | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.OpenApi.YamlReader/YamlConverter.cs b/src/Microsoft.OpenApi.YamlReader/YamlConverter.cs index 5acf0c007..710f20c6b 100644 --- a/src/Microsoft.OpenApi.YamlReader/YamlConverter.cs +++ b/src/Microsoft.OpenApi.YamlReader/YamlConverter.cs @@ -63,6 +63,10 @@ public static YamlNode ToYamlNode(this JsonNode json) { JsonObject obj => obj.ToYamlMapping(), JsonArray arr => arr.ToYamlSequence(), + JsonValue nullVal when JsonNullSentinel.IsJsonNullSentinel(nullVal) => new YamlScalarNode("null") + { + Style = ScalarStyle.Plain + }, JsonValue val => val.ToYamlScalar(), _ => throw new NotSupportedException("This isn't a supported JsonNode") }; diff --git a/test/Microsoft.OpenApi.Readers.Tests/YamlConverterTests.cs b/test/Microsoft.OpenApi.Readers.Tests/YamlConverterTests.cs index 70073bfaa..b2f0e0f5d 100644 --- a/test/Microsoft.OpenApi.Readers.Tests/YamlConverterTests.cs +++ b/test/Microsoft.OpenApi.Readers.Tests/YamlConverterTests.cs @@ -2,6 +2,7 @@ using Microsoft.OpenApi.YamlReader; using SharpYaml; using SharpYaml.Serialization; +using System; using System.IO; using System.Text.Json.Nodes; using Xunit; @@ -302,10 +303,18 @@ from openai import OpenAI var jsonNode = ConvertYamlStringToJsonNode(yamlInput); var convertedBack = jsonNode.ToYamlNode(); var convertedBackOutput = ConvertYamlNodeToString(convertedBack); - + // Then Assert.Equal(yamlInput.MakeLineBreaksEnvironmentNeutral(), convertedBackOutput.MakeLineBreaksEnvironmentNeutral()); } + [Fact] + public void ItDoesNotSerializeTheSentinelValue() + { + var yamlValue = JsonNullSentinel.JsonNull.ToYamlNode(); + + var scalarNode = Assert.IsType(yamlValue); + Assert.Equal("null", scalarNode.Value, StringComparer.OrdinalIgnoreCase); + } private static JsonNode ConvertYamlStringToJsonNode(string yamlInput) { From e47949e8bdc8ae1e7a881d3d0a00137eed38e85c Mon Sep 17 00:00:00 2001 From: "release-please-token-provider[bot]" <225477224+release-please-token-provider[bot]@users.noreply.github.com> Date: Thu, 6 Nov 2025 20:02:43 +0000 Subject: [PATCH 5/5] chore(main): release 2.3.9 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ Directory.Build.props | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 4d2b02b5e..3aedaf18b 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "2.3.8" + ".": "2.3.9" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index b8d1854c1..f97968659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [2.3.9](https://github.com/microsoft/OpenAPI.NET/compare/v2.3.8...v2.3.9) (2025-11-06) + + +### Bug Fixes + +* a bug where null sentinel value would appear in YAML documents ([0e864c7](https://github.com/microsoft/OpenAPI.NET/commit/0e864c73791b8610a95f06da9fbb44bfa1cf75a9)) +* a bug where null sentinel value would appear in YAML documents ([15618e1](https://github.com/microsoft/OpenAPI.NET/commit/15618e1f6a79874ae61dc31e3bcd5e1f3177d7ff)) + ## [2.3.8](https://github.com/microsoft/OpenAPI.NET/compare/v2.3.7...v2.3.8) (2025-10-27) diff --git a/Directory.Build.props b/Directory.Build.props index ea4943006..8ef14df8e 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -12,7 +12,7 @@ https://github.com/Microsoft/OpenAPI.NET © Microsoft Corporation. All rights reserved. OpenAPI .NET - 2.3.8 + 2.3.9