TomsToolbox.Settings.Documentation.Analyzer 1.1.0

dotnet add package TomsToolbox.Settings.Documentation.Analyzer --version 1.1.0
                    
NuGet\Install-Package TomsToolbox.Settings.Documentation.Analyzer -Version 1.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TomsToolbox.Settings.Documentation.Analyzer" Version="1.1.0">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TomsToolbox.Settings.Documentation.Analyzer" Version="1.1.0" />
                    
Directory.Packages.props
<PackageReference Include="TomsToolbox.Settings.Documentation.Analyzer">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add TomsToolbox.Settings.Documentation.Analyzer --version 1.1.0
                    
#r "nuget: TomsToolbox.Settings.Documentation.Analyzer, 1.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package TomsToolbox.Settings.Documentation.Analyzer@1.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=TomsToolbox.Settings.Documentation.Analyzer&version=1.1.0
                    
Install as a Cake Addin
#tool nuget:?package=TomsToolbox.Settings.Documentation.Analyzer&version=1.1.0
                    
Install as a Cake Tool

TomsToolbox.Settings.Documentation.Analyzer

Roslyn analyzer that helps ensure your configuration classes are properly annotated for automatic documentation generation.

Overview

This analyzer provides compile-time diagnostics and code fixes to help you maintain consistent and complete documentation of your application's configuration settings. It works in conjunction with the Settings.Documentation library to ensure all configuration options are discoverable and well-documented.

Diagnostics

CONF001: Missing [SettingsSection] Attribute

Severity: Warning

Warns when a configuration options class used with AddOptions<T>() is missing the [SettingsSection] attribute.

Code Fix: Automatically adds the [SettingsSection] attribute to the class.

CONF002: Missing Description

Severity: Warning

Warns when a property in a configuration options class lacks a [Description] attribute, which is used for documentation generation.

Code Fix: Automatically adds a [Description] attribute placeholder to the property.

CONF003: Missing [SettingsAddOptionsInvocator] Attribute

Severity: Warning

Warns when a method that invokes AddOptions<T>() is missing the [SettingsAddOptionsInvocator] attribute, making it non-discoverable for documentation generation.

Code Fix: Automatically adds the [SettingsAddOptionsInvocator] attribute to the method.

Installation

Install via NuGet:

dotnet add package TomsToolbox.Settings.Documentation.Analyzer

The analyzer is automatically integrated into your build process and provides real-time feedback in Visual Studio, VS Code, and other IDEs that support Roslyn analyzers.

Requirements

  • .NET Standard 2.0 or higher
  • Microsoft.CodeAnalysis.CSharp 4.4.0 or higher
  • TomsToolbox.Settings.Documentation.Abstractions - Attribute definitions
  • TomsToolbox.Settings.Documentation.Builder - Runtime library for generating documentation

For more information, see the main repository documentation.

License

MIT License

Part of the TomsToolbox library suite.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.0 118 5/21/2026
1.0.0 143 1/12/2026
1.0.0-beta9 115 1/9/2026
1.0.0-beta8 115 1/9/2026
1.0.0-beta7 118 1/9/2026
1.0.0-beta6 114 1/9/2026
1.0.0-beta5 124 1/9/2026
1.0.0-beta4 116 1/9/2026
1.0.0-beta3 122 1/6/2026
1.0.0-beta2 121 1/6/2026
1.0.0-beta10 113 1/10/2026
1.0.0-beta1 120 1/5/2026