SeamGuard.Analyzer
0.2.0.4
dotnet add package SeamGuard.Analyzer --version 0.2.0.4
NuGet\Install-Package SeamGuard.Analyzer -Version 0.2.0.4
<PackageReference Include="SeamGuard.Analyzer" Version="0.2.0.4"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="SeamGuard.Analyzer" Version="0.2.0.4" />
<PackageReference Include="SeamGuard.Analyzer"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add SeamGuard.Analyzer --version 0.2.0.4
#r "nuget: SeamGuard.Analyzer, 0.2.0.4"
#:package SeamGuard.Analyzer@0.2.0.4
#addin nuget:?package=SeamGuard.Analyzer&version=0.2.0.4
#tool nuget:?package=SeamGuard.Analyzer&version=0.2.0.4

SeamGuard.Analyzer
SeamGuard.Analyzer is a C# Roslyn analyzer that enforces configuration-defined architectural boundaries during normal .NET builds.
It checks behavioral service types, direct references, constructor dependencies, project and package references, friend assemblies, and test mocks. Violations are reported as build diagnostics.
Installation
dotnet add package SeamGuard.Analyzer
Configuration
Create .seamguard/config.json beside the solution, in the project directory, or in one of its ancestor directories.
{
"version": 1,
"projects": {
"General.Core": {
"projectReferences": {
"deny": ["General.Data"]
}
}
}
}
An explicit configuration path can be set from a project or shared props file.
<PropertyGroup>
<SeamGuardConfigFile>$(MSBuildThisFileDirectory)architecture/seams.json</SeamGuardConfigFile>
</PropertyGroup>
The analyzer is inactive when no configuration is found. An explicitly configured file must exist.
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.