Syntra.Diagnostics
4.0.0
dotnet add package Syntra.Diagnostics --version 4.0.0
NuGet\Install-Package Syntra.Diagnostics -Version 4.0.0
<PackageReference Include="Syntra.Diagnostics" Version="4.0.0" />
<PackageVersion Include="Syntra.Diagnostics" Version="4.0.0" />
<PackageReference Include="Syntra.Diagnostics" />
paket add Syntra.Diagnostics --version 4.0.0
#r "nuget: Syntra.Diagnostics, 4.0.0"
#:package Syntra.Diagnostics@4.0.0
#addin nuget:?package=Syntra.Diagnostics&version=4.0.0
#tool nuget:?package=Syntra.Diagnostics&version=4.0.0
Syntra
Syntra is a .NET 10 mediator-style library with CQRS-friendly requests, railway-oriented Result types, pipeline behaviors, notifications, and streaming queries. Optional Roslyn analyzers help keep registration and conventions consistent.
Target framework:
net10.0. Repository: github.com/Bubenshi-Mike/syntra.Pre-
v0.1.0: not yet published to NuGet.org. The badges above will resolve once it is.
Packages
| Package | Purpose |
|---|---|
Syntra.Abstractions |
Contracts: IRequest, Result, handlers, notifications, pipeline hooks. |
Syntra |
Mediator implementation, execution, options. |
Syntra.Behaviors |
Cross-cutting behaviors (validation, caching, retry, auth, audit, …). |
Syntra.DependencyInjection |
AddSyntra, Scrutor scanning, configuration binding. |
Syntra.Analyzers |
Roslyn analyzers (reference as analyzer; PrivateAssets="all"). |
Syntra.Diagnostics |
Opt-in tracing (ActivitySource) and metrics behaviors — enable with .AddBehaviors(b => b.AddStandardPipeline().AddDiagnostics()). |
Syntra.SourceGenerator |
Optional source generators. |
Quick start
Reference the packages you need (typically Abstractions, Syntra, Behaviors, DependencyInjection):
Package versions auto-increment on every merge to main - Minor counts merges 0-9 within a
Major, then rolls into an extra Major increment and starts again at 0 (see
CHANGELOG). Because that Major bump is just to keep versions increasing as Minor
cycles, not a signal of an actual breaking change, a floating Major.* reference will stop
tracking new releases every 10 merges - check back periodically and bump the pin, or float on
* for the truly latest:
<ItemGroup>
<PackageReference Include="Syntra.Abstractions" Version="3.*" />
<PackageReference Include="Syntra" Version="3.*" />
<PackageReference Include="Syntra.Behaviors" Version="3.*" />
<PackageReference Include="Syntra.DependencyInjection" Version="3.*" />
<PackageReference Include="Syntra.Analyzers" Version="3.*" PrivateAssets="all" />
</ItemGroup>
using Syntra.DependencyInjection.Extensions;
using Syntra.DependencyInjection.Registration;
builder.Services.AddSyntra(builder.Configuration, c => c
.AddBehaviors(b => b.AddStandardPipeline())
.ScanAssemblies(typeof(Program).Assembly));
See the samples/ folder in this repository for Web API, Console, and Worker examples.
Building & packing locally
dotnet test -c Release
dotnet pack -c Release -o ./artifacts
A local pack without an explicit -p:Version= gets a version derived from your current commit
(Major.Minor-g{shortsha}) so it's never mistaken for an official build. CI computes and passes
the real value explicitly - see Directory.Build.props.
Every merge to main also publishes the resulting version to NuGet.org automatically - see
release.yml.
Roadmap
Before a v1.0.0 release:
- See CHANGELOG
Unreleasedfor architecture changes already landed
License
MIT — see LICENSE.
| 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
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Options (>= 10.0.9)
- Syntra.Abstractions (>= 4.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Syntra.Diagnostics:
| Package | Downloads |
|---|---|
|
Syntra.DependencyInjection
Microsoft.Extensions.DependencyInjection registration, Scrutor scanning, and Syntra configuration for DI hosts. |
GitHub repositories
This package is not used by any popular GitHub repositories.