Qyl.OpenTelemetry.SemanticConventions.Nuke
3.0.1
See the version list below for details.
dotnet add package Qyl.OpenTelemetry.SemanticConventions.Nuke --version 3.0.1
NuGet\Install-Package Qyl.OpenTelemetry.SemanticConventions.Nuke -Version 3.0.1
<PackageReference Include="Qyl.OpenTelemetry.SemanticConventions.Nuke" Version="3.0.1" />
<PackageVersion Include="Qyl.OpenTelemetry.SemanticConventions.Nuke" Version="3.0.1" />
<PackageReference Include="Qyl.OpenTelemetry.SemanticConventions.Nuke" />
paket add Qyl.OpenTelemetry.SemanticConventions.Nuke --version 3.0.1
#r "nuget: Qyl.OpenTelemetry.SemanticConventions.Nuke, 3.0.1"
#:package Qyl.OpenTelemetry.SemanticConventions.Nuke@3.0.1
#addin nuget:?package=Qyl.OpenTelemetry.SemanticConventions.Nuke&version=3.0.1
#tool nuget:?package=Qyl.OpenTelemetry.SemanticConventions.Nuke&version=3.0.1
Qyl.OpenTelemetry.SemanticConventions
A consolidated build of four .NET packages that together cover the OpenTelemetry semantic-conventions lifecycle — from upstream registry pull, through Roslyn-time constant generation, into compile-time analyzers that police consumer code.
| Package | Role |
|---|---|
Qyl.OpenTelemetry.SemanticConventions |
Stable attribute keys, pre-generated by Weaver against the OTel registry pinned via SemConvSchemaVersion in Version.props. |
Qyl.OpenTelemetry.SemanticConventions.Incubating |
Incubating attribute keys, separate package so consumers opt in to instability. |
Qyl.OpenTelemetry.SemanticConventions.SourceGeneration |
Roslyn incremental source generator. Emits typed Activity, Event, Meter, metric, and attribute projections from an embedded resolved-registry, driven by [SemanticConvention*] marker attributes at consumer build time. |
Qyl.OpenTelemetry.SemanticConventions.Analyzers |
Roslyn diagnostic analyzers + code fixes. Flag deprecated semconv usage, missing required attributes, schema-url omission, etc. Docs: index · per-rule pages · migration catalog · SARIF v2.1.0 manifest · editorconfig profiles. Regenerate with ./build.sh GenerateDocs. |
The shared Nuke build component (IUpstreamConventions, IDomainConventionsApi,
LockstepPolicy) is consumed from
ANcpLua.OpenTelemetry.Conventions.Nuke,
shipped from O-ANcppLua/ANcpLua.OpenTelemetry.Conventions.Nuke. This repo participates as a
.NET-side consumer.
Analyzer consumer knob
Switch the whole QYL00xx band in one csproj line instead of dropping editorconfig files:
<PropertyGroup>
<OtelSemConvAnalysisMode>AllAsErrors</OtelSemConvAnalysisMode>
</PropertyGroup>
Values: Default (descriptor severities), AllAsErrors (strict CI), Disabled (silence the band). Unset = no editorconfig injection; consumer-side editorconfig stays authoritative. Knob ships via buildTransitive/Qyl.OpenTelemetry.SemanticConventions.Analyzers.props in the NuGet. The name is deliberately not bare <AnalysisMode> — that's owned by Microsoft.CodeAnalysis.NetAnalyzers.
Build loop
eng/build/ is a Nuke host. ./build.sh compiles every project in the solution
(the Compile target). Other targets:
./build.sh GenerateDocs— re-renderdocs/Qyl.OpenTelemetry.SemanticConventions.Analyzers.md../build.sh CheckDocs— CI guard; fails if the committed markdown is stale../build.sh AuditDocs— print analyzer-catalog statistics (no file I/O)../build.sh VerifyAttributesHash— hash the committedAttributes/**/*.g.csagainsteng/semconv/attributes.lock.sha256; drift fails the build../build.sh SeedAttributesHash— refresh the lock after an intentional regeneration.
Regeneration of Attributes/**/*.g.cs happens out-of-band: a human runs Weaver
against the OTel registry pinned at SemConvSchemaVersion, commits the new
.g.cs, then runs SeedAttributesHash.
Upstream path
If the upstream OpenTelemetry .NET source-generator effort
(open-telemetry/opentelemetry-dotnet-contrib#4424)
lands, the SourceGeneration, Analyzers, and Nuke packages ship as one
cohesive unit. Type identities are preserved so the only consumer-side change
is the PackageReference id.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- Nuke.Common (>= 10.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.