Microsoft.CodeAnalysis.PublicApiAnalyzers tracks the library's public surface. A build fails when public members change without a matching baseline update.
For an intentional API change:
- Add new declarations to
EnumerableAsyncProcessor/PublicAPI.Unshipped.txt. - Prefix removed declarations with
*REMOVED*inPublicAPI.Unshipped.txt. - Include the baseline changes in the same pull request as the code change so reviewers can inspect the public API diff.
- Move approved declarations from
PublicAPI.Unshipped.txttoPublicAPI.Shipped.txtwhen preparing a release. Keep#nullable enableas the first line in both files.
Run dotnet build to verify the baseline on every target framework.