.NET Components for Externalized Configuration, Database Connectors, Service Discovery, Logging and Distributed Tracing, Application Management, Security, and more.
This PR revisits code quality analysis rules. See the individual commit messages for details.
Goals
Run code style validation on build (enforce IDE* rules)
Match up IDE* rule configuration with StyleCop/Resharper
During development, show only helpful info/warning messages in the Error window
Review/fix/suppress inspections from Resharper (they never fail the build)
Implementation
One-time fix for a tiny set of rules, without changing their default severity
They address specific patterns that are highly unlikely to occur while writing code, so the increased build time by turning them on isn't justifiable.
Rule severity for CA* analyzers
Change helpful rules from info to warning
Activate a tiny set of helpful rules
Rule severity for IDE* analyzers
If Resharper code cleanup auto-fixes them: silent (no messages, while refactoring remains available)
Silence noisy analyzers that usually aren't helpful, or conflict with StyleCop/Resharper
Otherwise: as warning (suggestion in .editorconfig is not possible, because it won't fail the release build)
[x] You've updated unit and/or integration tests for your change, where applicable.
[x] You've updated documentation for your change, where applicable.
If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.
[x] There's an open issue for the PR that you are making. If you'd like to propose a new feature or change, please open an issue to discuss the change or find an existing issue.
[x] You've added required license files and/or file headers (explaining where the code came from with proper attribution), where code is copied from StackOverflow, a blog, or OSS.
Description
This PR revisits code quality analysis rules. See the individual commit messages for details.
Goals
IDE*
rules)IDE*
rule configuration with StyleCop/ResharperImplementation
CA*
analyzersIDE*
analyzersLinks
Closes #913, closes #916, closes #930.
Quality checklist