Metalama.Extensions.Architecture
2025.2.5-rc
Prefix Reserved
See the version list below for details.
dotnet add package Metalama.Extensions.Architecture --version 2025.2.5-rc
NuGet\Install-Package Metalama.Extensions.Architecture -Version 2025.2.5-rc
<PackageReference Include="Metalama.Extensions.Architecture" Version="2025.2.5-rc" />
<PackageVersion Include="Metalama.Extensions.Architecture" Version="2025.2.5-rc" />
<PackageReference Include="Metalama.Extensions.Architecture" />
paket add Metalama.Extensions.Architecture --version 2025.2.5-rc
#r "nuget: Metalama.Extensions.Architecture, 2025.2.5-rc"
#:package Metalama.Extensions.Architecture@2025.2.5-rc
#addin nuget:?package=Metalama.Extensions.Architecture&version=2025.2.5-rc&prerelease
#tool nuget:?package=Metalama.Extensions.Architecture&version=2025.2.5-rc&prerelease
About
The Metalama.Extensions.Architecture package allows you to validate your source code against architecture rules both in real time, straight in the IDE, or at compile time.
Features
- Simple API: choose between custom attributes or a fluent API.
- Warnings appear as familiar C# warnings.
- Immediate feedback as you type in the IDE.
- Warnings can be suppressed using the standard mechanisms such as
#pragma warning disable. - Validate code references and dependencies.
- Validate naming conventions.
- Validate child/derived classes.
- Works across projects.
- Fully extensible using
Metalama.Extensions.Validation,Metalama.Frameworkand Roslyn. - Commercially supported.
License
This package is a commercial extension of the open-source Metalama.Framework and requires a Metalama Professional license.
Principal Types
There are two ways to use this package:
By adding to your code one of the following architecture custom attributes from the
Metalama.Extensions.Architecture.Aspectsnamespace:[CannotBeUsedFrom][CanOnlyBeUsedFrom][InternalsCannotBeUsedFrom][InternalsCanOnlyBeUsedFrom][Experimental][InternalImplementOnly][DerivedTypesMustRespectNamingConvention][DerivedTypesMustRespectRegexNamingConvention]
By using fabrics, using the extension methods in the
ArchitectureExtensionstypes
Example
The following snippet reports warnings whenever an internal type or member of the current namespace is used from a different namespace.
namespace SomeNamespace;
using Metalama.Extensions.Architecture.Fabrics;
using Metalama.Framework.Fabrics;
public class Fabric : NamespaceFabric
{
public override void AmendNamespace( INamespaceAmender amender )
{
amender.Verify().InternalsCanOnlyBeUsedFrom( UsageRule.OwnNamespace );
}
}
Documentation
- API Documentation: Metalama.Extensions.Architecture
- Conceptual Documentation: Verifying architecture
Related Packages
- Metalama.Extensions.Validation: the API on which
Metalama.Extensions.Architectureis built.
| 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
- Metalama.Extensions.Validation (>= 2025.2.5-rc)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Metalama.Extensions.Architecture:
| Package | Downloads |
|---|---|
|
Shinya.Core
Shinya.Framework |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2026.0.3-preview | 0 | 10/30/2025 |
| 2026.0.2-preview | 164 | 10/7/2025 |
| 2026.0.1-preview | 89 | 10/4/2025 |
| 2025.2.5-rc | 157 | 10/7/2025 |
| 2025.2.4-rc | 165 | 10/1/2025 |
| 2025.2.2-preview | 700 | 9/19/2025 |
| 2025.2.1-preview | 215 | 9/9/2025 |
| 2025.1.16 | 153 | 10/22/2025 |
| 2025.1.15 | 169 | 10/7/2025 |
| 2025.1.14 | 180 | 9/30/2025 |
| 2025.1.13 | 211 | 9/5/2025 |
| 2025.1.12 | 437 | 8/7/2025 |
| 2025.1.11 | 607 | 7/23/2025 |
| 2025.1.10 | 440 | 7/3/2025 |
| 2025.1.9 | 654 | 5/29/2025 |
| 2025.1.8 | 243 | 5/26/2025 |
| 2025.1.7 | 216 | 5/22/2025 |
| 2025.1.6 | 333 | 5/15/2025 |
| 2025.1.5 | 211 | 5/2/2025 |
| 2025.1.4-rc | 289 | 4/15/2025 |
| 2025.1.3-rc | 247 | 4/9/2025 |
| 2025.1.2-preview | 249 | 4/1/2025 |
| 2025.1.1-preview | 220 | 3/18/2025 |
| 2025.0.12 | 260 | 5/22/2025 |
| 2025.0.11 | 229 | 5/2/2025 |
| 2025.0.10 | 493 | 3/31/2025 |
| 2025.0.9 | 681 | 3/7/2025 |
| 2025.0.8 | 436 | 1/6/2025 |
| 2025.0.7-rc | 327 | 12/6/2024 |
| 2025.0.6-rc | 291 | 11/15/2024 |
| 2025.0.5-preview | 208 | 11/8/2024 |
| 2025.0.4-preview | 155 | 10/31/2024 |
| 2025.0.3-preview | 160 | 10/25/2024 |
| 2025.0.2-preview | 163 | 10/24/2024 |
| 2025.0.1-preview | 166 | 10/14/2024 |
| 2024.2.32 | 313 | 3/7/2025 |
| 2024.2.31 | 247 | 12/6/2024 |
| 2024.2.30 | 245 | 11/15/2024 |
| 2024.2.29 | 197 | 10/31/2024 |
| 2024.2.28 | 212 | 10/25/2024 |
| 2024.2.27 | 199 | 10/24/2024 |
| 2024.2.26 | 263 | 10/14/2024 |
| 2024.2.25 | 242 | 10/2/2024 |
| 2024.2.24 | 7,621 | 9/10/2024 |
| 2024.2.23 | 284 | 8/30/2024 |
| 2024.2.22 | 265 | 8/29/2024 |
| 2024.2.21 | 260 | 8/28/2024 |
| 2024.2.20 | 287 | 8/15/2024 |
| 2024.2.19 | 1,737 | 8/1/2024 |
| 2024.2.18 | 231 | 7/29/2024 |
| 2024.2.17-rc | 247 | 7/22/2024 |
| 2024.2.16-rc | 2,678 | 7/18/2024 |
| 2024.2.15-rc | 188 | 7/12/2024 |
| 2024.2.14-rc | 3,075 | 7/8/2024 |
| 2024.2.13-rc | 214 | 7/2/2024 |
| 2024.2.12-preview | 191 | 6/28/2024 |
| 2024.2.11-preview | 203 | 6/26/2024 |
| 2024.2.10-preview | 239 | 6/20/2024 |
| 2024.2.9-preview | 189 | 6/11/2024 |
| 2024.2.8-preview | 158 | 6/6/2024 |
| 2024.2.7-preview | 216 | 5/30/2024 |
| 2024.2.6-preview | 211 | 5/25/2024 |
| 2024.2.5-preview | 233 | 5/6/2024 |
| 2024.2.4-preview | 217 | 5/4/2024 |
| 2024.2.3-preview | 223 | 4/30/2024 |
| 2024.2.2-preview | 193 | 4/23/2024 |
| 2024.2.1-preview | 227 | 4/11/2024 |
| 2024.1.30 | 191 | 10/24/2024 |
| 2024.1.29 | 206 | 10/11/2024 |
| 2024.1.28 | 246 | 9/9/2024 |
| 2024.1.27 | 238 | 8/28/2024 |
| 2024.1.26 | 237 | 8/15/2024 |
| 2024.1.25 | 224 | 7/22/2024 |
| 2024.1.24 | 207 | 7/12/2024 |
| 2024.1.23 | 3,158 | 6/26/2024 |
| 2024.1.22 | 360 | 6/15/2024 |
| 2024.1.21 | 216 | 6/6/2024 |
| 2024.1.20 | 233 | 5/30/2024 |
| 2024.1.19 | 260 | 5/24/2024 |
| 2024.1.18 | 351 | 5/6/2024 |
| 2024.1.17 | 205 | 5/3/2024 |
| 2024.1.16 | 244 | 4/30/2024 |
| 2024.1.15 | 243 | 4/29/2024 |
| 2024.1.14 | 306 | 4/23/2024 |
| 2024.1.13 | 245 | 4/23/2024 |
| 2024.1.12 | 273 | 4/17/2024 |
| 2024.1.11-rc | 224 | 4/11/2024 |
| 2024.1.10-rc | 170 | 4/4/2024 |
| 2024.1.9-rc | 214 | 3/27/2024 |
| 2024.1.8-preview | 188 | 3/25/2024 |
| 2024.1.7-preview | 196 | 3/19/2024 |
| 2024.1.6-preview | 202 | 3/6/2024 |
| 2024.1.5-preview | 192 | 2/29/2024 |
| 2024.1.4-preview | 226 | 2/27/2024 |
| 2024.1.3-preview | 196 | 2/23/2024 |
| 2024.1.2-preview | 205 | 2/7/2024 |
| 2024.1.1-preview | 208 | 1/30/2024 |
| 2024.0.16 | 242 | 6/15/2024 |
| 2024.0.15 | 246 | 6/6/2024 |
| 2024.0.14 | 239 | 5/30/2024 |
| 2024.0.13 | 256 | 5/24/2024 |
| 2024.0.12 | 251 | 4/17/2024 |
| 2024.0.11 | 345 | 3/21/2024 |
| 2024.0.10 | 265 | 3/19/2024 |
| 2024.0.9 | 305 | 2/29/2024 |
| 2024.0.8 | 258 | 2/23/2024 |
| 2024.0.7 | 387 | 2/7/2024 |
| 2024.0.6 | 494 | 1/3/2024 |
| 2024.0.5-rc | 193 | 12/21/2023 |
| 2024.0.4-rc | 217 | 12/12/2023 |
| 2024.0.3-preview | 222 | 12/6/2023 |
| 2024.0.2-preview | 244 | 11/14/2023 |
| 2024.0.1-preview | 173 | 11/6/2023 |
| 2023.4.9 | 250 | 2/7/2024 |
| 2023.4.8 | 298 | 12/21/2023 |
| 2023.4.7 | 274 | 12/12/2023 |
| 2023.4.6 | 352 | 11/7/2023 |
| 2023.4.5-rc | 203 | 10/26/2023 |
| 2023.4.4-preview | 210 | 10/18/2023 |
| 2023.4.3-preview | 173 | 10/4/2023 |
| 2023.4.2-preview | 200 | 9/26/2023 |
| 2023.4.1-preview | 181 | 9/13/2023 |
| 2023.3.10 | 246 | 12/21/2023 |
| 2023.3.9 | 242 | 12/12/2023 |
| 2023.3.8 | 413 | 10/17/2023 |
| 2023.3.7-rc | 177 | 9/29/2023 |
| 2023.3.6-rc | 184 | 9/26/2023 |
| 2023.3.5-rc | 221 | 9/13/2023 |
| 2023.3.4-preview | 241 | 8/30/2023 |
| 2023.3.3-preview | 223 | 8/29/2023 |
| 2023.3.2-preview | 260 | 8/1/2023 |
| 2023.3.1-preview | 266 | 7/28/2023 |
| 2023.2.5 | 247 | 9/12/2023 |
| 2023.2.4 | 473 | 8/7/2023 |
| 2023.2.3-rc | 236 | 8/3/2023 |
| 2023.2.2-rc | 278 | 7/21/2023 |
| 2023.2.1-preview | 258 | 6/27/2023 |
| 2023.1.12 | 238 | 9/12/2023 |
| 2023.1.11 | 272 | 8/7/2023 |
| 2023.1.10 | 338 | 7/17/2023 |
| 2023.1.9 | 263 | 6/27/2023 |
| 2023.1.8-rc | 239 | 6/19/2023 |
| 2023.1.7-rc | 247 | 6/14/2023 |
| 2023.1.6-rc | 260 | 6/12/2023 |
| 2023.1.5-preview | 273 | 5/26/2023 |
| 2023.1.4-preview | 219 | 5/26/2023 |
| 2023.1.3-preview | 258 | 5/25/2023 |
| 2023.1.2-preview | 263 | 5/24/2023 |
| 2023.1.1-preview | 277 | 5/10/2023 |
| 2023.0.121 | 248 | 7/17/2023 |
| 2023.0.120 | 219 | 6/27/2023 |
| 2023.0.119 | 269 | 6/14/2023 |
| 2023.0.118 | 296 | 6/7/2023 |
| 2023.0.117 | 297 | 5/25/2023 |
| 2023.0.116 | 311 | 5/23/2023 |
| 2023.0.115 | 314 | 5/4/2023 |
| 2023.0.113-rc | 290 | 4/21/2023 |
| 2023.0.112-rc | 279 | 4/14/2023 |
| 2023.0.111-rc | 254 | 4/5/2023 |
| 2023.0.110-rc | 282 | 3/30/2023 |
| 2023.0.109-rc | 269 | 3/23/2023 |
| 2023.0.108-rc | 280 | 3/15/2023 |
| 2023.0.107-rc | 281 | 3/1/2023 |
| 2023.0.105-rc | 234 | 2/22/2023 |
| 2023.0.104-rc | 314 | 2/21/2023 |
| 2023.0.102-rc | 323 | 2/9/2023 |
| 2023.0.101-rc | 289 | 1/25/2023 |
| 0.5.83-preview | 303 | 1/23/2023 |
| 0.5.82-preview | 301 | 1/23/2023 |
| 0.5.81-preview | 310 | 1/18/2023 |
| 0.5.80-preview | 248 | 1/15/2023 |
| 0.5.79-preview | 257 | 1/13/2023 |