Skip to content

Commit

Permalink
Merge pull request #3 from nventive/dev/jpl/docs
Browse files Browse the repository at this point in the history
docs: Improve docs.
  • Loading branch information
jeanplevesque authored Oct 30, 2023
2 parents 83e483d + f7af2a0 commit 86ba56a
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,26 @@
# GooseAnalyzers

[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square)](LICENSE)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square)](LICENSE) ![Version](https://img.shields.io/nuget/v/GooseAnalyzers?style=flat-square) ![Downloads](https://img.shields.io/nuget/dt/GooseAnalyzers?style=flat-square)

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

## Getting Started

1. Install the `GooseAnalyzers` NuGet package in your project.
1. Install the [`GooseAnalyzers`](https://www.nuget.org/packages/GooseAnalyzers) NuGet package in your project.

1. Optionally, set `TreatWarningsAsErrors` to `true` when in `Release` configuration in your project files.
```xml
<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.

1. 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](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-messages/cs1591) and [SA1600](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1600.md) to interfaces.<br/>
`GOOSE001` | XmlDocumentationRequiredSuppressor | Limits the scope of [CS1591](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-messages/cs1591) and [SA1600](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1600.md) to interfaces.

## Features

Expand All @@ -27,7 +29,8 @@ The `GOOSE001` analyzer is a `DiagnosticSuppressor` for the [CS1591](https://lea
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.

We recommend you enable the `CS1591` or `SA1600` rules in your project and use this suppressor to limit their scope to interfaces or disable this suppressor.
- 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

Expand Down

0 comments on commit 86ba56a

Please sign in to comment.