Skip to content

feat: upgrade to .NET 10 and add async chains, context-aware routing,keyed DI, and tracing#2

Merged
TarasKovalenko merged 1 commit into
mainfrom
net10-upgrade-and-features
Jun 19, 2026
Merged

feat: upgrade to .NET 10 and add async chains, context-aware routing,keyed DI, and tracing#2
TarasKovalenko merged 1 commit into
mainfrom
net10-upgrade-and-features

Conversation

@TarasKovalenko

Copy link
Copy Markdown
Owner

Target net10.0 across the library, tests, and all examples; bump
Microsoft.Extensions.* to 10.0.9 and the package version to 1.1.0.

New features (each with tests and docs):

  • Async adapter chains (IAsyncAdapter, AddAsyncAdapterChain) for non-blocking I/O pipelines
  • Context-aware resolution: IRelayResolver flows an explicit IRelayContext into conditional relays via IRelayContextAccessor; RelayFactoryBuilder.SelectKeyByContext
  • Native keyed DI: AddKeyedRelay and RelayFactoryBuilder.RegisterKeyedRelay
  • Built-in tracing via RelayDiagnostics.ActivitySource on chains and multi-relays

Fixes and cleanup:

  • Implement AdapterChainFactory properly with named chains (AddAdapterChainFactory); it was previously an orphaned stub that ignored the chain name
  • Cache Adapt/AdaptAsync reflection per adapter type; lock-free round-robin in MultiRelay
  • README: remove docs for nonexistent APIs, add missing .Build() calls, refresh version and .NET requirement

… keyed DI, and tracing

  Target net10.0 across the library, tests, and all examples; bump
  Microsoft.Extensions.* to 10.0.9 and the package version to 1.1.0.

  New features (each with tests and docs):
  - Async adapter chains (IAsyncAdapter, AddAsyncAdapterChain) for non-blocking I/O pipelines
  - Context-aware resolution: IRelayResolver flows an explicit IRelayContext into
    conditional relays via IRelayContextAccessor; RelayFactoryBuilder.SelectKeyByContext
  - Native keyed DI: AddKeyedRelay and RelayFactoryBuilder.RegisterKeyedRelay
  - Built-in tracing via RelayDiagnostics.ActivitySource on chains and multi-relays

  Fixes and cleanup:
  - Implement AdapterChainFactory properly with named chains (AddAdapterChainFactory);
    it was previously an orphaned stub that ignored the chain name
  - Cache Adapt/AdaptAsync reflection per adapter type; lock-free round-robin in MultiRelay
  - README: remove docs for nonexistent APIs, add missing .Build() calls, refresh
    version and .NET requirement
@TarasKovalenko TarasKovalenko merged commit 92b4cdf into main Jun 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant