Webority.Analyzers
0.10.1
dotnet add package Webority.Analyzers --version 0.10.1
NuGet\Install-Package Webority.Analyzers -Version 0.10.1
<PackageReference Include="Webority.Analyzers" Version="0.10.1"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="Webority.Analyzers" Version="0.10.1" />
<PackageReference Include="Webority.Analyzers"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add Webority.Analyzers --version 0.10.1
#r "nuget: Webority.Analyzers, 0.10.1"
#:package Webority.Analyzers@0.10.1
#addin nuget:?package=Webority.Analyzers&version=0.10.1
#tool nuget:?package=Webority.Analyzers&version=0.10.1
Webority.Analyzers
The Webority fleet's banned-API rules at build time: one list of banned types, members and namespaces, each with the rule it breaks, enforced by the banned API analyzer (RS0030) in every project of a repo that references this package, plus a file-precise, shrink-only baseline for hits a repo already has.
Adopt
Directory.Packages.props:
<PackageVersion Include="Webority.Analyzers" Version="[0.1.2]" />
Directory.Build.props:
<ItemGroup Condition="'$(MSBuildProjectExtension)' == '.csproj'">
<PackageReference Include="Webority.Analyzers" PrivateAssets="all" />
</ItemGroup>
Baseline
.webority/baselines/banned-api-baseline.txt at the repo root (the folder holding .webority/settings.json), one
line per file and symbol:
<repo-relative path>;<symbol ID>;<count>;<baseline|boundary>;<reason>
At most count hits of the symbol in the file are suppressed (WBA0001), the first in source order;
every other hit still fails the build. A method is written without its parameter list and covers every
overload. A line that cannot be read is reported as WBA1001.
The null-forgiving operator has its own baseline line: WBA5003 in place of a symbol ID, with baseline
as its kind only. Its count is exact: it must equal the number of x!, null! and default! uses in that
file. A count above the hits fails the build (WBA5003), and a boundary line with WBA5003 is refused
(WBA1001). WBA5004 takes no baseline line.
Rules
- WBA5003 (error): a null-forgiving operator in hand-written code beyond the file's baseline count, or a baseline count above the file's hits.
- WBA5004 (error): a switch-off of a nullable check: a
NoWarn,WarningsNotAsErrorsorTreatWarningsAsErrorssetting that lowers a nullable warning, an editorconfig severity below error for one, a#pragma warning disablethat names one or the nullable group, and aSuppressMessagenaming one. WBA5001 to WBA5004 are nullable rules too. A lowered WBA5004 is reported under WBA5003. - Fix a switch-off by turning
TreatWarningsAsErrorson and removing the lowering, then fixing the code it hides.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.CodeAnalysis.BannedApiAnalyzers (>= 5.6.0)
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 |
|---|---|---|
| 0.10.1 | 15,820 | 11/3/2026 |
| 0.10.0 | 4,737 | 11/2/2026 |
| 0.9.0 | 11,170 | 11/1/2026 |
| 0.8.4 | 3,898 | 11/1/2026 |
| 0.8.3 | 1,238 | 10/28/2026 |
| 0.8.2 | 103 | 10/28/2026 |
| 0.8.1 | 96 | 10/28/2026 |
| 0.8.0 | 93 | 10/27/2026 |
| 0.7.0 | 117 | 10/27/2026 |
| 0.6.1 | 88 | 10/25/2026 |
| 0.6.0 | 115 | 10/24/2026 |
| 0.5.0 | 112 | 10/24/2026 |
| 0.4.0 | 107 | 10/24/2026 |
| 0.3.0 | 101 | 10/22/2026 |
| 0.2.0 | 102 | 10/15/2026 |