[Backport][10.0.2xx] Add suppressor support for dotnet format
#51697
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.
Backport of #48512
Context:
Microsoft.Unity.Analyzers is able to add Unity-specific diagnostics or to remove general C# diagnostics that do not apply to Unity projects (through diagnostic suppressors).
One common usage is to run the
dotnet formatcommand on a unity solution to ensure projects obey the.editorconfiglinting rules:dotnet format --verify-no-changes --severity warnBut currently this command does not support diagnostic suppressors, which implies a lack of consistency with our IDEs and command-line build tools, which now manage suppressors.
See microsoft/Microsoft.Unity.Analyzers#387 for a minimal repro.
Other scenarios are likely to be similar, such as the linting of test projects (
NUnitandXUnitmake use of diagnostic suppressors).For this PR we tried to have a minimal impact, by just registering local project suppressors, when running the
code-style phase.
Added unit tests as well.
fixes dotnet/format#1998
fixes microsoft/Microsoft.Unity.Analyzers#387
fixes #44867