Conformance gaps found while working on Utilities — all are already covered by CODESTYLE.md but weren't honored. Audit the projects against a standard reference (LanguageTags or PlexCleaner) and bring them into line.
Findings
- Excessive analyzer suppression in per-project
.editorconfig — audit the suppression list; each suppression must be minimal and carry a comment justifying why (§Analyzer Suppressions). Blanket/stale suppressions should be removed.
#pragma warning disable used in code — forbidden. Suppressions belong in .editorconfig (scoped, with rationale), not inline pragmas (§Analyzer Suppressions). Remove the pragmas; move any genuinely-needed suppression to project .editorconfig.
- Missing
GlobalUsings.cs for every project — CODESTYLE requires a GlobalUsings.cs for common namespaces (§Code Structure → Global usings). Add one per project.
- Stale package-source URL pointing to an old repo (GitHub Packages) — no GitHub Packages are in use, so the source is dead. Remove it; restore from nuget.org only.
Suggested approach
Diff each Utilities project's .editorconfig, GlobalUsings.cs, csproj/Directory.*.props, and any nuget.config against LanguageTags / PlexCleaner (the reference conformant C# repos) and converge to that pattern.
Fleet note
These same checks (suppression hygiene, no inline pragmas, GlobalUsings present, no stale package sources) are worth a fleet-wide C# project-config audit against the LanguageTags/PlexCleaner standard — filing here since Utilities is where they surfaced.
Conformance gaps found while working on Utilities — all are already covered by CODESTYLE.md but weren't honored. Audit the projects against a standard reference (LanguageTags or PlexCleaner) and bring them into line.
Findings
.editorconfig— audit the suppression list; each suppression must be minimal and carry a comment justifying why (§Analyzer Suppressions). Blanket/stale suppressions should be removed.#pragma warning disableused in code — forbidden. Suppressions belong in.editorconfig(scoped, with rationale), not inline pragmas (§Analyzer Suppressions). Remove the pragmas; move any genuinely-needed suppression to project.editorconfig.GlobalUsings.csfor every project — CODESTYLE requires aGlobalUsings.csfor common namespaces (§Code Structure → Global usings). Add one per project.Suggested approach
Diff each Utilities project's
.editorconfig,GlobalUsings.cs, csproj/Directory.*.props, and anynuget.configagainst LanguageTags / PlexCleaner (the reference conformant C# repos) and converge to that pattern.Fleet note
These same checks (suppression hygiene, no inline pragmas, GlobalUsings present, no stale package sources) are worth a fleet-wide C# project-config audit against the LanguageTags/PlexCleaner standard — filing here since Utilities is where they surfaced.