Skip to content

Latest commit

 

History

History
50 lines (32 loc) · 2.48 KB

README.md

File metadata and controls

50 lines (32 loc) · 2.48 KB

GooseAnalyzers

License Version Downloads

GooseAnalyzers is a collection of .NET Analyzers for your C# code.

Getting Started

  1. Install the GooseAnalyzers NuGet package in your project.

  2. Optionally, set TreatWarningsAsErrors to true when in Release configuration in your project files.

    <TreatWarningsAsErrors Condition="'$(Configuration)'=='Release'">true</TreatWarningsAsErrors>

    We recommend this so that you get warnings that don't block your dev loop, but errors that block your CI/CD pipelines.

  3. Review the list of analyzers below and adjust your project settings based on your preferences.

List of Analyzers

Identifier Name Description
GOOSE001 XmlDocumentationRequiredSuppressor Limits the scope of CS1591 and SA1600 to interfaces.

Features

GOOSE001 - XML Documentation on Interfaces

The GOOSE001 analyzer is a DiagnosticSuppressor for the CS1591 and SA1600 rules that demand XML documentation on all public types and members. This is a good practice, but it can unrealistic in some contexts. We think that in those cases, having xml documentation on interfaces is a good middle ground.

  • If you typically disable the CS1591 or SA1600 rules, we recommend that the you enable them and use this suppressor to limit their scope to interfaces.
  • If you typically enable the CS1591 or SA1600 rules, we recommend that the you disable the GOOSE001 suppressor.

Breaking Changes

Please consult BREAKING_CHANGES.md for more information about version history and compatibility.

License

This project is licensed under the Apache 2.0 license - see the LICENSE file for details.

Contributing

Please read CONTRIBUTING.md for details on the process for contributing to this project.

Be mindful of our Code of Conduct.