github dotnet/extensions v10.9.0

11 hours ago

Version 10.9.0 is headlined by changes in these areas:

  • AI: New experimental routing APIs center on the abstract RoutingChatClient base class, with SemanticRoutingChatClient as a concrete semantic-routing implementation. Separately, the abstract FailoverChatClient specialization and its concrete OrderedFailoverChatClient implementation add failover routing.
  • AI Evaluation: The generated report gains redesigned Overview, Cases, History, and Comparison views.
  • ASP.NET Core and HTTP diagnostics: The release adds HTTP request latency log enrichment and fixes configuration binding, response-body logging, request-path redaction, and resilience package version handling.
  • Source-generated logging and service discovery: Fixes cover classification type qualification, thread-local state cleanup, and DNS query suffix handling.

Experimental API Changes

New Experimental APIs

  • New experimental API: HTTP request latency log enrichment (EXTEXP0013) #7602
  • New experimental API: Chat client routing and failover (MEAI001) #7662

What's Changed

AI (Microsoft.Extensions.AI, Microsoft.Extensions.AI.Abstractions, and Microsoft.Extensions.AI.OpenAI)

  • Add extensible chat client routing #7662 by @joshuajyue (co-authored by @Copilot)
  • Pass the request's options to the selected client #7685 by @joshuajyue (co-authored by @jozkee @Copilot)
  • AI.Abstractions: fix ExcludeFromSchema dropped under concurrent AIFunction creation #7677 by @jozkee (co-authored by @Copilot)
  • Cap OpenAI dependency version (b10f9c0) by @jeffhandley (co-authored by @Copilot)

Note: Microsoft.Extensions.AI.OpenAI constrains its dependency for OpenAI to 2.12.x, preventing OpenAI updates to 2.13.0+ due to an incompatibility. We expect to release Microsoft.Extensions.AI.OpenAI version 10.9.1 during the week of August 17 to address this issue.

HTTP Resilience and Diagnostics (Microsoft.Extensions.Http.Resilience and Microsoft.Extensions.Http.Diagnostics)

ASP.NET Core Extensions (Microsoft.AspNetCore.Diagnostics.Middleware)

  • Rename HttpLatencyTelemetry extensions class and drop redundant TFM guard #7645 by @EasyL0ver (co-authored by @Copilot)
  • Add HTTP request latency log enricher (experimental) #7602 by @EasyL0ver (co-authored by @Copilot)

Logging Source Generator (Microsoft.Gen.Logging)

  • [Microsoft.Gen.Logging] Clear thread-local state when logging throws #7682 by @Rimobul
  • [Microsoft.Gen.Logging] Fully qualify classification types #7689 by @Rimobul

AI Evaluation (Microsoft.Extensions.AI.Evaluation.Reporting)

  • [Microsoft.Extensions.AI.Evaluation.Reporting] Evaluation report redesign #7609 by @grafanaKibana

Project Templates (Microsoft.McpServer.ProjectTemplates)

Note: The MCP server project template was migrated to the dotnet/aspnetcore repository, and it is now included in the .NET 10 and .NET 11 SDKs.

Service Discovery (Microsoft.Extensions.ServiceDiscovery.Dns)

  • Fix DNS SRV provider ignoring query suffix #7688 by @Rimobul (co-authored by @Copilot)

Test Improvements

  • Update Microsoft.Data.SqlClient test dependency (aaea3c8) by @jeffhandley (co-authored by @Copilot)

Repository Infrastructure Updates

  • [main] Update dependencies from dotnet/arcade #7621
  • Merge release/10.8 into main #7632 by @jeffhandley (co-authored by @jozkee @Copilot)
  • Add agentic workflows that keep Microsoft.Extensions.AI aligned with OpenTelemetry GenAI semantic-conventions #7611 by @jeffhandley (co-authored by @Copilot)
  • Bump brace-expansion, eslint and tfx-cli in /src/Libraries/Microsoft.Extensions.AI.Evaluation.Reporting/TypeScript #7648
  • Add a release-manager agent for the dotnet/extensions release process #7643 by @jeffhandley (co-authored by @Copilot)
  • Bump CommunityToolkit.VectorData package baselines to 1.0.0 / 1.0.0-preview #7651 by @adamsitnik (co-authored by @Copilot)
  • Incorporate servicing release experience into release-manager playbooks #7656 by @jeffhandley (co-authored by @Copilot)
  • Bump dotnet-reportgenerator-globaltool from 5.5.10 to 5.5.11 #7666
  • Bump adm-zip and azure-pipelines-task-lib in /src/Libraries/Microsoft.Extensions.AI.Evaluation.Reporting/TypeScript/azure-devops-report/tasks/PublishAIEvaluationReport #7652
  • Bump postcss from 8.5.15 to 8.5.23 in /src/Libraries/Microsoft.Extensions.AI.Evaluation.Reporting/TypeScript #7660
  • Bump PowerShell from 7.6.3 to 7.6.4 #7650
  • [main] Update dependencies from dotnet/arcade #7644
  • [release-manager] Require package dependency closure for releases #7693 by @jeffhandley (co-authored by @Copilot)
  • Optionally allow official builds to publish VSIX extension. #7692 by @peterwald
  • [main] Update dependencies from dotnet/arcade #7690

Acknowledgements

Full Changelog: v10.8.4...v10.9.0

Packages in this release

Package Version
Microsoft.AspNetCore.Testing 10.9.0
Microsoft.Extensions.AI.Abstractions 10.9.0
Microsoft.Extensions.AI.Evaluation.Console 10.9.0
Microsoft.Extensions.AI.Templates 10.9.0-preview.3.26411.16
Microsoft.Extensions.AmbientMetadata.Application 10.9.0
Microsoft.Extensions.AmbientMetadata.Build 10.9.0
Microsoft.Extensions.AuditReports 10.9.0
Microsoft.Extensions.Caching.Hybrid 10.9.0
Microsoft.Extensions.Compliance.Abstractions 10.9.0
Microsoft.Extensions.DataIngestion.Abstractions 10.9.0-preview.1.26411.16
Microsoft.Extensions.DependencyInjection.AutoActivation 10.9.0
Microsoft.Extensions.Diagnostics.ExceptionSummarization 10.9.0
Microsoft.Extensions.ObjectPool.DependencyInjection 10.9.0
Microsoft.Extensions.Options.Contextual 10.9.0-preview.1.26411.16
Microsoft.Extensions.ServiceDiscovery.Abstractions 10.9.0
Microsoft.Extensions.StaticAnalysis 10.9.0
Microsoft.Extensions.TimeProvider.Testing 10.9.0
Microsoft.Extensions.AI 10.9.0
Microsoft.Extensions.AI.Evaluation 10.9.0
Microsoft.Extensions.AI.OpenAI 10.9.0
Microsoft.Extensions.AsyncState 10.9.0
Microsoft.Extensions.Compliance.Redaction 10.9.0
Microsoft.Extensions.Compliance.Testing 10.9.0
Microsoft.Extensions.DataIngestion.Markdig 10.9.0-preview.1.26411.16
Microsoft.Extensions.DataIngestion.MarkItDown 10.9.0-preview.1.26411.16
Microsoft.Extensions.ServiceDiscovery 10.9.0
Microsoft.Extensions.Telemetry.Abstractions 10.9.0
Microsoft.Extensions.VectorData.Abstractions 10.9.0
Microsoft.AspNetCore.AsyncState 10.9.0
Microsoft.AspNetCore.HeaderParsing 10.9.0
Microsoft.Extensions.AI.Evaluation.NLP 10.9.0-preview.1.26411.16
Microsoft.Extensions.AI.Evaluation.Quality 10.9.0
Microsoft.Extensions.AI.Evaluation.Reporting 10.9.0
Microsoft.Extensions.AI.Evaluation.Safety 10.9.0-preview.1.26411.16
Microsoft.Extensions.DataIngestion 10.9.0-preview.1.26411.16
Microsoft.Extensions.Diagnostics.HealthChecks.Common 10.9.0
Microsoft.Extensions.Diagnostics.Probes 10.9.0-preview.1.26411.16
Microsoft.Extensions.Diagnostics.ResourceMonitoring 10.9.0
Microsoft.Extensions.Diagnostics.Testing 10.9.0
Microsoft.Extensions.Resilience 10.9.0
Microsoft.Extensions.ServiceDiscovery.Dns 10.9.0
Microsoft.Extensions.ServiceDiscovery.Yarp 10.9.0
Microsoft.Extensions.Telemetry 10.9.0
Microsoft.Extensions.VectorData.ConformanceTests 10.9.0
Microsoft.AspNetCore.Diagnostics.Middleware 10.9.0
Microsoft.Extensions.AI.Evaluation.Reporting.Azure 10.9.0
Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization 10.9.0
Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes 10.9.0
Microsoft.Extensions.Hosting.Testing 10.9.0-preview.1.26411.16
Microsoft.Extensions.Http.Diagnostics 10.9.0
Microsoft.Extensions.Http.Resilience 10.9.0

The Microsoft.Agents.AI.ProjectTemplates package is not included in this release.

Don't miss a new extensions release

NewReleases is sending notifications on new releases.