S3LS0001: Shipped name

A released name is spared the naming rule IDE1006, so a library keeps its users without carrying a NoWarn.

Suppresses IDE1006 (naming rules, such as the Async suffix)
Suppressor Released in Snail.Sdk.Analyzers
Applies to the type or member itself, as PublicAPI.Shipped.txt lists it

What it suppresses

IDE1006 on a type or member released in PublicAPI.Shipped.txt: a line there must name that symbol's qualified name (type arguments and modifiers aside) as the same kind of symbol — a type line for a type, a method line for a method, a property, field, event or enum member line for those — and the finding must be on the declaration's own name.

What it leaves alone

A new member, which is held to the rule, and a parameter, local, local function or lambda that only shares a shipped member's name.

Why

A released method named before the rule could otherwise only be renamed — a break for every user of the library — or carried as a NoWarn, which would hide the rule from every new method too. A rename is a decision for a major version, not for a build.

Using it

Nothing to do: a library on Snail.Sdk.Library keeps PublicAPI.Shipped.txt beside the project, and the analyzers read it. To drop the suppression, rename the member in a major version and update PublicAPI.Shipped.txt. The naming rules S3L0006, S3L0007 and S3L0008 spare shipped names the same way.