Repository navigation
build(analyzers): load PublicApiAnalyzers only in projects that track their API - #361
Merged
Merged
Conversation
… their API
The template references Microsoft.CodeAnalysis.PublicApiAnalyzers with
Condition="Exists('PublicAPI.Shipped.txt') or Exists('PublicAPI.Unshipped.txt')"
so the analyzer only runs where the API files are. This repository's copy had
lost the condition, so the analyzer loaded in every project - including tests,
which track no API - and InspectCode reported RS0016/RS0037 for every public
test type (the build hides them behind the blanket suggestion severity).
Restores the condition; the AdditionalFiles items were already conditional.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fleet sync of the template's
Directory.Build.props(Chris-Wolfgang/repo-template#611 follow-up, alerts like #n/a).The
Microsoft.CodeAnalysis.PublicApiAnalyzersreference here had lost the template'sCondition="Exists('PublicAPI.Shipped.txt') or Exists('PublicAPI.Unshipped.txt')", so the analyzer loaded in every project — including test projects, which track no public API — and InspectCode reported RS0016 / RS0037 for every public test type. The Release build never showed them (blanketsuggestionseverity), InspectCode does. Restoring the condition scopes the analyzer to projects that actually have the API files; no change for those.Configuration-only PR (
Directory.Build.props) — passes the protected-file guard with the banner, merges on review. The open RS0016/RS0037 code-scanning alerts and their auto-issues close on the next InspectCode run onmain.🤖 Generated with Claude Code