Skip to main content
Version: Next

Analyzers

Modular Pipelines includes Roslyn analyzers that catch pipeline authoring mistakes at compile time. Each rule uses the MP#### ID family, so it can be configured with standard .NET analyzer settings.

See the complete analyzer rule reference for every rule, its category, default severity, and suppression examples.

Configure a rule

Set a rule's severity in .editorconfig:

[*.cs]
dotnet_diagnostic.MP0001.severity = warning

Valid values are default, none, silent, suggestion, warning, and error. Use none to disable a rule.

Suppress a specific occurrence

Use #pragma when a violation is intentional and narrowly scoped:

#pragma warning disable MP0001
// Code that intentionally violates MP0001.
#pragma warning restore MP0001

ID migration

The legacy prose IDs were renamed so .editorconfig settings can use one predictable family:

Legacy IDCurrent ID
MissingDependsOnAttributeMP0001
EnumerableModuleResultMP0002
LoggerInConstructorMP0003
ConsoleUseMP0004
ConflictingDependsOnAttributeMP0005
AsyncModuleMP0006
AwaitThisMP0007
StatefulModuleMP0008
MPDEP001MP0009
MPDEP002MP0005
MPDEP003MP0010
MPREG001MP0013
MPASYNC001MP0014
MPASYNC002MP0015
MPASYNC003MP0016
MPASYNC004MP0017
MPTYPE001MP0018
MPDEP004MP0019

Update existing dotnet_diagnostic.<id>.severity entries and warning suppressions to the current IDs.