Skip to content

Commit bdebdd2

Browse files
committed
Replace roslyn PublicAPI analyzers with apicompat tool
1 parent 8be2d8c commit bdebdd2

File tree

11 files changed

+47
-976
lines changed

11 files changed

+47
-976
lines changed

.config/dotnet-tools.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@
2929
"docfx"
3030
],
3131
"rollForward": false
32+
},
33+
"microsoft.dotnet.apicompat.tool": {
34+
"version": "9.0.304",
35+
"commands": [
36+
"apicompat"
37+
],
38+
"rollForward": false
3239
}
3340
}
34-
}
41+
}

.github/workflows/build.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ jobs:
5858
- name: 🧪 NativeAOT test
5959
run: dotnet publish -c Release -r ${{ matrix.rid }}-x64 -warnaserror
6060
working-directory: test/NativeAOTCompatibility
61+
- name: 📋 API compat test
62+
run: |
63+
Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/nerdbank.streams -OutFile obj/nerdbank.streams.baseline.nupkg
64+
$pkgPath = (gci ./bin/Packages/Release/NuGet/Nerdbank.Streams.*.nupkg).FullName
65+
dotnet apicompat package $pkgPath --baseline-package obj/nerdbank.streams.baseline.nupkg --suppression-file ./src/Nerdbank.Streams/ApiCompatSuppressions.xml
66+
shell: pwsh
67+
if: runner.os == 'Linux'
6168

6269
- name: ⚙️ Use Node.js 16.x
6370
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4

Directory.Packages.props

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="$(AspNetCoreVersion)" />
1515
<PackageVersion Include="Microsoft.AspNetCore" Version="$(AspNetCoreVersion)" />
1616
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="8.0.0" />
17-
<PackageVersion Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.4" />
1817
<PackageVersion Include="Microsoft.VisualStudio.Threading.Analyzers" Version="$(VSThreadingVersion)" />
1918
<PackageVersion Include="Microsoft.VisualStudio.Threading.Only" Version="$(VSThreadingVersion)" />
2019
<PackageVersion Include="Microsoft.VisualStudio.Threading" Version="$(VSThreadingVersion)" />
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!-- https://learn.microsoft.com/dotnet/fundamentals/package-validation/diagnostic-ids -->
3+
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
4+
<Suppression>
5+
<!-- False positive: https://github.com/dotnet/sdk/issues/50672 -->
6+
<DiagnosticId>CP0001</DiagnosticId>
7+
<Target>T:System.Buffers.SequenceReader`1</Target>
8+
<Left>lib/netstandard2.0/Nerdbank.Streams.dll</Left>
9+
<Right>lib/netstandard2.1/Nerdbank.Streams.dll</Right>
10+
</Suppression>
11+
<Suppression>
12+
<!-- False positive: https://github.com/dotnet/sdk/issues/50672 -->
13+
<DiagnosticId>CP0001</DiagnosticId>
14+
<Target>T:System.Buffers.SequenceReaderExtensions</Target>
15+
<Left>lib/netstandard2.0/Nerdbank.Streams.dll</Left>
16+
<Right>lib/netstandard2.1/Nerdbank.Streams.dll</Right>
17+
</Suppression>
18+
<Suppression>
19+
<!-- False positive: https://github.com/dotnet/sdk/issues/50671 -->
20+
<DiagnosticId>CP0012</DiagnosticId>
21+
<Target>M:Nerdbank.Streams.BufferTextWriter.Write(System.ReadOnlySpan{System.Char})</Target>
22+
<Left>lib/netstandard2.0/Nerdbank.Streams.dll</Left>
23+
<Right>lib/netstandard2.1/Nerdbank.Streams.dll</Right>
24+
</Suppression>
25+
<Suppression>
26+
<!-- False positive: https://github.com/dotnet/sdk/issues/50671 -->
27+
<DiagnosticId>CP0012</DiagnosticId>
28+
<Target>M:Nerdbank.Streams.BufferTextWriter.WriteLine(System.ReadOnlySpan{System.Char})</Target>
29+
<Left>lib/netstandard2.0/Nerdbank.Streams.dll</Left>
30+
<Right>lib/netstandard2.1/Nerdbank.Streams.dll</Right>
31+
</Suppression>
32+
</Suppressions>

src/Nerdbank.Streams/Nerdbank.Streams.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212

1313
<ItemGroup>
1414
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Condition="'$(TargetFramework)' == 'netstandard2.0'" />
15-
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" PrivateAssets="all" />
1615
<PackageReference Include="Microsoft.VisualStudio.Threading.Only" PrivateAssets="build;analyzers;compile" />
1716
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" PrivateAssets="all" />
1817
<PackageReference Include="Microsoft.VisualStudio.Validation" />

src/Nerdbank.Streams/net8.0/PublicAPI.Shipped.txt

Lines changed: 0 additions & 307 deletions
This file was deleted.

src/Nerdbank.Streams/net8.0/PublicAPI.Unshipped.txt

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)