Skip to content

Commit dae98d6

Browse files
committed
Merge branch 'main' into pr/2706
2 parents 14b73bf + c7f9885 commit dae98d6

27 files changed

+2169
-168
lines changed

.github/workflows/release-please-gha.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,30 @@ jobs:
2727
steps:
2828
- uses: actions/checkout@v6
2929

30+
- name: Validate PublicAPI.Unshipped.txt files are empty
31+
shell: pwsh
32+
run: |
33+
$unshippedFiles = Get-ChildItem 'src/ ' -Recurse -Filter *.Unshipped.txt | Select -ExpandProperty FullName
34+
35+
$hasUnshippedAPIs = $false
36+
37+
foreach ($file in $unshippedFiles) {
38+
$content = Get-Content -Path $file -Raw
39+
# Remove the #nullable enable line and any whitespace
40+
$trimmedContent = $content -replace '^\s*#nullable enable\s*$', '' -replace '^\s+', ''
41+
42+
if ($trimmedContent -ne '') {
43+
Write-Error "❌ $file contains unshipped APIs. Please promote them to PublicAPI.Shipped.txt before releasing.`nContent:`n$content"
44+
$hasUnshippedAPIs = $true
45+
}
46+
}
47+
48+
if ($hasUnshippedAPIs) {
49+
exit 1
50+
}
51+
52+
Write-Output "✅ All PublicAPI.Unshipped.txt files are clean"
53+
3054
- name: Generate GitHub App token
3155
id: app-token
3256
uses: actions/create-github-app-token@v2

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "3.3.0"
2+
".": "3.3.1"
33
}

CHANGELOG.md

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,17 @@
11
# Changelog
22

3+
## [3.3.1](https://github.com/microsoft/OpenAPI.NET/compare/v3.3.0...v3.3.1) (2026-01-22)
4+
5+
6+
### Features
7+
8+
* **models:** add shared Content interface ([#2695](https://github.com/microsoft/OpenAPI.NET/issues/2695)) ([338566f](https://github.com/microsoft/OpenAPI.NET/commit/338566fafce04ee1329f4ead61fe1e87e01144ad))
9+
10+
11+
### Bug Fixes
12+
13+
* broken binary compatibility due to interface changes in previous version ([d96bba7](https://github.com/microsoft/OpenAPI.NET/commit/d96bba72c383cd5db2b7032530aee3b4d944ebc6))
14+
315
## [3.3.0](https://github.com/microsoft/OpenAPI.NET/compare/v3.2.0...v3.3.0) (2026-01-21)
416

517

@@ -87,29 +99,6 @@
8799

88100
* adds support for OpenAPI 3.2.0 ([765a8dd](https://github.com/microsoft/OpenAPI.NET/commit/765a8dd4d6efd1a31b6a76d282ccffa5877a845a))
89101

90-
## [2.6.0](https://github.com/microsoft/OpenAPI.NET/compare/v2.5.0...v2.6.0) (2026-01-21)
91-
92-
### Features
93-
94-
* **models:** add shared Content interface ([80e4bbf](https://github.com/microsoft/OpenAPI.NET/commit/80e4bbfa4ab31d3af69fe29751714d001c1f9566))
95-
* **models:** add shared Content interface ([#2695](https://github.com/microsoft/OpenAPI.NET/issues/2695)) ([338566f](https://github.com/microsoft/OpenAPI.NET/commit/338566fafce04ee1329f4ead61fe1e87e01144ad))
96-
* **models:** add shared Content interface ([#2695](https://github.com/microsoft/OpenAPI.NET/issues/2695)) ([80e4bbf](https://github.com/microsoft/OpenAPI.NET/commit/80e4bbfa4ab31d3af69fe29751714d001c1f9566))
97-
* **models:** support mutualTLS security scheme ([f9cf5b8](https://github.com/microsoft/OpenAPI.NET/commit/f9cf5b807d71c49e5bd7e2bec97f12d3b50ca180))
98-
99-
## [2.5.0](https://github.com/microsoft/OpenAPI.NET/compare/v2.4.3...v2.5.0) (2026-01-19)
100-
101-
## Features
102-
103-
* hidi validate command now logs warnings ([1d3d085](https://github.com/microsoft/OpenAPI.NET/commit/1d3d085e0278d9341d7bd10065eba584cb25773c))
104-
* hidi validate command now logs warnings ([18ed5ac](https://github.com/microsoft/OpenAPI.NET/commit/18ed5acce9661639e1698f19c194e520eb5c93c1))
105-
106-
107-
### Bug Fixes
108-
109-
* discriminator property validation fails any/allOf cases when it shouldn't ([ff6e411](https://github.com/microsoft/OpenAPI.NET/commit/ff6e4115dcab8c893bbc6b97639fd620b50f105e))
110-
* discriminator property validation fails any/allOf cases when it shouldn't ([7def73d](https://github.com/microsoft/OpenAPI.NET/commit/7def73d774d1f0e96118e92b636e52cbea371f2d))
111-
112-
113102
## [2.4.3](https://github.com/microsoft/OpenAPI.NET/compare/v2.4.2...v2.4.3) (2026-01-16)
114103

115104
## Bug Fixes

Directory.Build.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
<PackageProjectUrl>https://github.com/Microsoft/OpenAPI.NET</PackageProjectUrl>
1313
<Copyright>© Microsoft Corporation. All rights reserved.</Copyright>
1414
<PackageTags>OpenAPI .NET</PackageTags>
15-
<Version>3.3.0</Version>
15+
<Version>3.3.1</Version>
1616
</PropertyGroup>
1717
<!-- https://github.com/clairernovotny/DeterministicBuilds#deterministic-builds -->
1818
<PropertyGroup Condition="'$(TF_BUILD)' == 'true'">
1919
<ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
2020
</PropertyGroup>
2121
<ItemGroup>
22-
<PackageReference Condition="!$(MSBuildProjectName.EndsWith('Tests'))" Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="All"/>
22+
<PackageReference Condition="!$(MSBuildProjectName.EndsWith('Tests'))" Include="Microsoft.SourceLink.GitHub" Version="10.0.103" PrivateAssets="All"/>
2323
</ItemGroup>
2424
</Project>

global.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"sdk": {
3-
"version": "8.0.417"
3+
"version": "8.0.418"
44
}
55
}

performance/resultsComparer/resultsComparer.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.2" />
12-
<PackageReference Include="Microsoft.Extensions.Logging" Version="10.0.2" />
13-
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="10.0.2" />
14-
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="10.0.2" />
11+
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.3" />
12+
<PackageReference Include="Microsoft.Extensions.Logging" Version="10.0.3" />
13+
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="10.0.3" />
14+
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="10.0.3" />
1515
<PackageReference Include="System.CommandLine" Version="2.0.0" />
16-
<PackageReference Include="system.text.json" Version="10.0.2" />
16+
<PackageReference Include="system.text.json" Version="10.0.3" />
1717
</ItemGroup>
1818

1919
</Project>

src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@
2929

3030
<ItemGroup>
3131
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
32-
<PackageReference Include="Microsoft.Extensions.Logging" Version="10.0.2" />
33-
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.2" />
34-
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="10.0.2" />
35-
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="10.0.2" />
32+
<PackageReference Include="Microsoft.Extensions.Logging" Version="10.0.3" />
33+
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.3" />
34+
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="10.0.3" />
35+
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="10.0.3" />
3636
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15">
3737
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3838
<PrivateAssets>all</PrivateAssets>

src/Microsoft.OpenApi.Hidi/readme.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Hidi has these key capabilities that enable you to build different scenarios off
1414
## Installation
1515

1616
Install [Microsoft.OpenApi.Hidi](https://www.nuget.org/packages/Microsoft.OpenApi.Hidi/1.0.0-preview4) package from NuGet by running the following command:
17-
17+
1818
### .NET CLI(Global)
1919

2020
```bash
@@ -23,12 +23,18 @@ dotnet tool install --global Microsoft.OpenApi.Hidi --prerelease
2323

2424
### .NET CLI(local)
2525

26-
```bash
26+
```bash
2727
dotnet new tool-manifest #if you are setting up the OpenAPI.NET repo
2828
dotnet tool install --local Microsoft.OpenApi.Hidi --prerelease
2929
```
30-
31-
30+
31+
### Docker
32+
33+
Hidi is also available as a Docker image:
34+
35+
```bash
36+
docker pull mcr.microsoft.com/openapi/hidi
37+
```
3238

3339
## How to use Hidi
3440

src/Microsoft.OpenApi.YamlReader/Microsoft.OpenApi.YamlReader.csproj

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@
2828

2929
<ItemGroup>
3030

31+
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.4">
32+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
33+
<PrivateAssets>all</PrivateAssets>
34+
</PackageReference>
35+
3136
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15">
3237
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3338
<PrivateAssets>all</PrivateAssets>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#nullable enable
2+
Microsoft.OpenApi.Reader.OpenApiReaderSettingsExtensions
3+
Microsoft.OpenApi.YamlReader.OpenApiYamlReader
4+
Microsoft.OpenApi.YamlReader.OpenApiYamlReader.OpenApiYamlReader() -> void
5+
Microsoft.OpenApi.YamlReader.OpenApiYamlReader.Read(System.IO.MemoryStream! input, System.Uri! location, Microsoft.OpenApi.Reader.OpenApiReaderSettings! settings) -> Microsoft.OpenApi.Reader.ReadResult!
6+
Microsoft.OpenApi.YamlReader.OpenApiYamlReader.ReadAsync(System.IO.Stream! input, System.Uri! location, Microsoft.OpenApi.Reader.OpenApiReaderSettings! settings, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task<Microsoft.OpenApi.Reader.ReadResult!>!
7+
Microsoft.OpenApi.YamlReader.OpenApiYamlReader.ReadFragment<T>(System.IO.MemoryStream! input, Microsoft.OpenApi.OpenApiSpecVersion version, Microsoft.OpenApi.OpenApiDocument! openApiDocument, out Microsoft.OpenApi.Reader.OpenApiDiagnostic! diagnostic, Microsoft.OpenApi.Reader.OpenApiReaderSettings? settings = null) -> T?
8+
Microsoft.OpenApi.YamlReader.YamlConverter
9+
static Microsoft.OpenApi.Reader.OpenApiReaderSettingsExtensions.AddYamlReader(this Microsoft.OpenApi.Reader.OpenApiReaderSettings! settings) -> void
10+
static Microsoft.OpenApi.YamlReader.OpenApiYamlReader.Read(System.Text.Json.Nodes.JsonNode! jsonNode, System.Uri! location, Microsoft.OpenApi.Reader.OpenApiReaderSettings! settings) -> Microsoft.OpenApi.Reader.ReadResult!
11+
static Microsoft.OpenApi.YamlReader.OpenApiYamlReader.ReadFragment<T>(System.Text.Json.Nodes.JsonNode! input, Microsoft.OpenApi.OpenApiSpecVersion version, Microsoft.OpenApi.OpenApiDocument! openApiDocument, out Microsoft.OpenApi.Reader.OpenApiDiagnostic! diagnostic, Microsoft.OpenApi.Reader.OpenApiReaderSettings? settings = null) -> T?
12+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToJsonArray(this SharpYaml.Serialization.YamlSequenceNode! yaml) -> System.Text.Json.Nodes.JsonArray!
13+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToJsonNode(this SharpYaml.Serialization.YamlDocument! yaml) -> System.Text.Json.Nodes.JsonNode!
14+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToJsonNode(this SharpYaml.Serialization.YamlNode! yaml) -> System.Text.Json.Nodes.JsonNode!
15+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToJsonNode(this SharpYaml.Serialization.YamlStream! yaml) -> System.Collections.Generic.IEnumerable<System.Text.Json.Nodes.JsonNode!>!
16+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToJsonObject(this SharpYaml.Serialization.YamlMappingNode! yaml) -> System.Text.Json.Nodes.JsonObject!
17+
static Microsoft.OpenApi.YamlReader.YamlConverter.ToYamlNode(this System.Text.Json.Nodes.JsonNode! json) -> SharpYaml.Serialization.YamlNode!

0 commit comments

Comments
 (0)