Skip to content

deps(nuget): Bump the nuget-all group with 11 updates#83

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/src/nuget-all-5c85a91d04
Open

deps(nuget): Bump the nuget-all group with 11 updates#83
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/src/nuget-all-5c85a91d04

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Apr 1, 2026

Updated coverlet.msbuild from 8.0.0 to 8.0.1.

Release notes

Sourced from coverlet.msbuild's releases.

8.0.1

Fixed

  • Fix [BUG] TypeInitializationException when targeting .NET Framework #​1818
  • Fix [BUG] coverlet.MTP build fails with CS0400 due to developmentDependency=true #​1827

Improvements

  • Additional improvements needed for .NET Framework instrumentation type import #​1825

Diff between 8.0.0 and 8.0.1

Commits viewable in compare view.

Updated Markdig from 0.44.0 to 1.1.2.

Release notes

Sourced from Markdig's releases.

1.1.2

Changes

🐛 Bug Fixes

  • Fix to calculate LinkReferenceDefinition span positions from StringLineGroup.Lines (PR #​931) by @​prozolic

Full Changelog: 1.1.1...1.1.2

Published with dotnet-releaser

1.1.1

Changes

🐛 Bug Fixes

  • Fix emoji not rendering in table cells (PR #​928) by @​prozolic

Full Changelog: 1.1.0...1.1.1

Published with dotnet-releaser

1.1.0

Changes

🚀 Enhancements

  • Add CJK-friendly Emphasis Extension (PR #​921) by @​tats-u

🧰 Misc

  • docs(site): document CJK friendly emphasis extension (bddaa55d)

Full Changelog: 1.0.1...1.1.0

Published with dotnet-releaser

1.0.1

Changes

✨ New Features

  • Add mermaid and katex (682a30c1)
  • Add missing markdown example (3167f8ef)

🧰 Maintenance

  • Fix ci (361231dc)

🧰 Misc

  • Update readme (391e03b8)
  • Reject pipe-only rows as pipe table separators (Fixes #​927) (7959e3b9)

Full Changelog: 1.0.0...1.0.1

Published with dotnet-releaser

1.0.0

Changes

✨ New Features

  • Add namespace API docs for Markdig (5de7e42a)

🚀 Enhancements

  • Remove obsolete APIs (PR #​926) by @​MihaZupan
  • Markdig 1.0 (PR #​925)

🧰 Misc

  • Update banner (b370c5cc)
  • Improve site documentation accuracy and structure (f735314a)

Full Changelog: 1.0.0-preview.1...1.0.0

Published with dotnet-releaser

1.0.0-preview.1

Changes

✨ New Features

  • Add instructions (3f7c09c4)
  • Add api authoring 1.0 (1a96adde)
  • Add parser authoring helper APIs and tests (ab6204cf)
  • Add AST mutation helpers for block and inline trees (2c9a9a30)
  • Add typed markdown object data key helpers (58e8217d)
  • Add span validation/update APIs and tests (148fd08b)
  • Add XML docs for public Markdig API (0cc463b6)
  • Add DotSettings (020a8490)
  • Add comprehensive documentation site (74f429c4)
  • Add GitHub action for site (94cb00d1)
  • Add playground to frontpage (d1ce1886)

🐛 Bug Fixes

  • Fix top level readme about documentation (999ccbc7)

🧰 Misc

  • Move from net9.0 to net10.0 (e5c88eff)
  • Update deps NuGet (e9d582a1)
  • Expose parser parity APIs for extension authors (5e5112cc)
  • Document parser authoring contracts and migration risks (c488a274)
  • Move doc to site (310f084c)

Full Changelog: 0.45.0...1.0.0-preview.1

Published with dotnet-releaser

0.45.0

Changes

🚀 Enhancements

  • Recognize supplementary characters (PR #​913) by @​tats-u
  • Use Dictionary.TryAdd instead of ContainsKey and indexer by reducing lookups. (PR #​917) by @​prozolic
  • Replace null checks with IsEmpty property for ReadOnlySpan (PR #​916) by @​prozolic
  • Optimize PipeTable parsing: O(n²) → O(n) for 3.7x–85x speedup, enables 10K+ row tables (PR #​922) by @​Mpdreamz

Full Changelog: 0.44.0...0.45.0

Published with dotnet-releaser

Commits viewable in compare view.

Updated Microsoft.CodeAnalysis.NetAnalyzers from 10.0.102 to 10.0.201.

Release notes

Sourced from Microsoft.CodeAnalysis.NetAnalyzers's releases.

10.0.201

You can build .NET 10.0 from the repository by cloning the release tag v10.0.201 and following the build instructions in the main README.md.

Alternatively, you can build from the sources attached to this release directly.
More information on this process can be found in the dotnet/dotnet repository.

Attached are PGP signatures for the GitHub generated tarball and zipball. You can find the public key at https://dot.net/release-key-2023

10.0.200

You can build .NET 10.0 from the repository by cloning the release tag v10.0.200 and following the build instructions in the main README.md.

Alternatively, you can build from the sources attached to this release directly.
More information on this process can be found in the dotnet/dotnet repository.

Attached are PGP signatures for the GitHub generated tarball and zipball. You can find the public key at https://dot.net/release-key-2023

10.0.105

You can build .NET 10.0 from the repository by cloning the release tag v10.0.105 and following the build instructions in the main README.md.

Alternatively, you can build from the sources attached to this release directly.
More information on this process can be found in the dotnet/dotnet repository.

Attached are PGP signatures for the GitHub generated tarball and zipball. You can find the public key at https://dot.net/release-key-2023

10.0.104

You can build .NET 10.0 from the repository by cloning the release tag v10.0.104 and following the build instructions in the main README.md.

Alternatively, you can build from the sources attached to this release directly.
More information on this process can be found in the dotnet/dotnet repository.

Attached are PGP signatures for the GitHub generated tarball and zipball. You can find the public key at https://dot.net/release-key-2023

10.0.103

You can build .NET 10.0 from the repository by cloning the release tag v10.0.103 and following the build instructions in the main README.md.

Alternatively, you can build from the sources attached to this release directly.
More information on this process can be found in the dotnet/dotnet repository.

Attached is the PGP signature for the GitHub generated tarball. You can find the public key at https://dot.net/release-key-2023

Commits viewable in compare view.

Updated Microsoft.Data.Sqlite from 10.0.2 to 10.0.5.

Release notes

Sourced from Microsoft.Data.Sqlite's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Microsoft.Extensions.Hosting from 10.0.2 to 10.0.5.

Release notes

Sourced from Microsoft.Extensions.Hosting's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Microsoft.ML.OnnxRuntime from 1.23.2 to 1.24.4.

Release notes

Sourced from Microsoft.ML.OnnxRuntime's releases.

1.24.4

This is a patch release for ONNX Runtime 1.24, containing bug fixes and execution provider updates.

Bug Fixes

  • Core: Added PCI bus fallback for Linux GPU device discovery in containerized environments (e.g., AKS/Kubernetes) where nvidia-drm is not loaded but GPU PCI devices are still exposed via sysfs. (#​27591)
  • Plugin EP: Fixed null pointer dereference when iterating output spans in GetOutputIndex. (#​27644)
  • Plugin EP: Fixed bug that incorrectly assigned duplicate MetaDef IDs to fused nodes in different GraphViews (e.g., then/else branches of an If node), causing session creation to fail with a conflicting kernel error. (#​27666)

Execution Provider Updates

  • QNN EP: Enabled offline x64 compilation with memhandle IO type by deferring rpcmem library loading to inference time. (#​27479)
  • QNN EP: Reverted QNN SDK logging verbosity changes that caused segmentation faults on backend destruction. (#​27650)

Build and Infrastructure

  • Python: Updated python_requires from >=3.10 to >=3.11 to reflect dropped Python 3.10 support. (#​27354)
  • Build: Replaced __builtin_ia32_tpause with the compiler-portable _tpause intrinsic to fix cross-compiler portability issues between GCC and LLVM. (#​27607)

Full Changelog: v1.24.3...v1.24.4

Contributors

@​derdeljan-msft, @​adrianlizarraga, @​apwojcik, @​baijumeswani, @​edgchen1, @​mocknen, @​tianleiwu, @​XXXXRT666

1.24.3

This is a patch release for ONNX Runtime 1.24, containing bug fixes, security improvements, performance enhancements, and execution provider updates.

Security Fixes

  • Core: Fixed GatherCopyData integer truncation leading to heap out-of-bounds read/write. (#​27444)
  • Core: Fixed RoiAlign heap out-of-bounds read via unchecked batch_indices. (#​27543)
  • Core: Prevent heap OOB from maliciously crafted Lora Adapters. (#​27518)
  • Core: Fixed out-of-bounds access for Resize operation. (#​27419)

Bug Fixes

  • Core: Fixed GatherND division by zero when batch dimensions mismatch. (#​27090)
  • Core: Fixed validation for external data paths for models loaded from bytes. (#​27430)
  • Core: Fixed SkipLayerNorm fusion incorrectly applied when gamma/beta are not 1D. (#​27459)
  • Core: Fixed double-free in TRT EP custom op domain Release functions. (#​27471)
  • Core: Fixed QMoE CPU Operator. (#​27360)
  • Core: Fixed MatmulNBits prepacking scales. (#​27412)
  • Python: Fixed refcount bug in map input conversion that caused shutdown segfault. (#​27413)
  • NuGet: Fixed DllImportResolver. (#​27397)
  • NuGet: Added OrtEnv.DisableDllImportResolver to prevent fatal error on resolver conflict. (#​27535)

Performance Improvements

  • Core: QMoE CPU performance update (up to 4x on 4-bit). (#​27364)
  • Core: Fixed O(n²) model load time for TreeEnsemble with categorical feature chains. (#​27391)

Execution Provider Updates

  • NvTensorRtRtx EP:
    • Avoid repetitive creation of fp4/fp8 native-custom-op domains. (#​27192)
    • Added missing override specifiers to suppress warnings. (#​27288)
    • DQ→MatMulNBits fusion transformer. (#​27466)
  • WebGPU:
    • Used embedded WASM module in Blob URL workers when wasmBinary is provided. (#​27318)
    • Fixed usage of wasmBinary together with a blob URL for .mjs. (#​27411)
    • Removed the unhelpful "Unknown CPU vendor" warning. (#​27399)
    • Allows new memory info name for WebGPU. (#​27475)
  • MLAS:
    • Added DynamicQGemm function pointers and ukernel interface. (#​27403)
    • Fixed error where bytes is not assigned for dynamic qgemm pack b size. (#​27421)
  • VitisAI EP: Removed s_kernel_registry_vitisaiep.reset() in deinitialize_vitisai_ep(). (#​27295)
  • Plugin EPs: Added "library_path" metadata entry to OrtEpDevice instances for plugin and provider bridge EPs. (#​27522)

Build and Infrastructure

  • Pipelines:
    • Build Windows ARM64X binaries as part of packaging pipeline. (#​27316)
    • Moved JAR testing pipelines to canonical pipeline template. (#​27480)
  • Python: Enabled Python 3.14 CI and upgraded dependencies. (#​27401)
  • Build: Suppressed spurious Array Out of Bounds warnings produced by GCC 14.2 compiler on Linux builds. (#​27454)
  • Build: Fixed -Warray-bounds build error in MLAS on clang 17+. (#​27499)
  • Telemetry: Added/Updated telemetry events. (#​27356)
  • Config: Increased kMaxValueLength to 8192. (#​27521)

... (truncated)

1.24.2

This is a patch release for ONNX Runtime 1.24, containing several bug fixes, security improvements, and execution provider updates.

Bug Fixes

  • NuGet: Fixed native library loading issues in the ONNX Runtime NuGet package on Linux and macOS. (#​27266)
  • macOS: Fixed Java support and Jar testing on macOS ARM64. (#​27271)
  • Core: Enable Robust Symlink Support for External Data for Huggingface Hub Cache. (#​27374)
  • Core: Added boundary checks for SparseTensorProtoToDenseTensorProto to improve robustness. (#​27323)
  • Security: Fixed an out-of-bounds read vulnerability in ArrayFeatureExtractor. (#​27275)

Execution Provider Updates

  • MLAS: Fixed flakiness and accuracy issues in Lut GEMM (MatMulNBitsLutGemm). (#​27216)
  • QNN: Enabled 64-bit UDMA mode for HTP target v81 or above. (#​26677)
  • WebGPU:
    • Used LazyRelease for prepack allocator. (#​27077)
    • Fixed ConvTranspose bias validation in both TypeScript and C++ implementations. (#​27213)
  • OpenVINO (OVEP): Patch to reduce resident memory by reusing weight files across shared contexts. (#​27238)
  • DNNL: Fixed DNNL build error by including missing files. (#​27334)

Build and Infrastructure

  • CUDA:
    • Added support for CUDA architecture family codes (suffix 'f') introduced in CUDA 12.9. (#​27278)
    • Fixed build errors and warnings for various CUDA versions (12.8, 13.0, 13.1.1). (#​27276)
    • Applied patches for Abseil CUDA warnings. (#​27096, #​27126)
  • Pipelines:
    • Fixed Python packaging pipeline for Windows ARM64 and release. (#​27339, #​27350, #​27299)
    • Fixed DirectML NuGet pipeline to correctly bundle x64 and ARM64 binaries for release. (#​27349)
    • Updated Microsoft.ML.OnnxRuntime.Foundry package for Windows ARM64 support and NuGet signing. (#​27294)
  • Testing: Updated BaseTester to support plugin EPs with both compiled nodes and registered kernels. (#​27176)
  • Telemetry: Added service name and framework name to telemetry events for better usage understanding on Windows. (#​27252, #​27256)

Full Changelog: v1.24.1...v1.24.2

Contributors

@​tianleiwu, @​hariharans29, @​edgchen1, @​xiaofeihan1, @​adrianlizarraga, @​angelser, @​angelserMS, @​ankitm3k, @​baijumeswani, @​bmehta001, @​ericcraw, @​eserscor, @​fs-eire, @​guschmue, @​mc-nv, @​qjia7, @​qti-monumeen, @​titaiwangms, @​yuslepukhin

1.24.1

📢 Announcements & Breaking Changes

Platform Support Changes

  • Python 3.10 wheels are no longer published — Please upgrade to Python 3.11+
  • Python 3.14 support added
  • Free-threaded Python (PEP 703) — Added support for Python 3.13t and 3.14t in Linux (#​26786)
  • x86_64 binaries for macOS/iOS are no longer provided and minimum macOS is raised to 14.0

API Version


✨ New Features

🤖 Execution Provider (EP) Plugin API

A major infrastructure enhancement enabling plugin-based EPs with dynamic loading:

  • Initial kernel-based EP support (#​26206)
  • Weight pre-packing support for plugin EPs (#​26754)
  • EP Context model support (#​25124)
  • Control flow kernel APIs (#​26927)
  • OrtKernelInfo APIs for kernel-based plugin EPs (#​26803)

🔧 Core APIs

  • OrtApi::CreateEnvWithOptions() and OrtEpApi::GetEnvConfigEntries() (#​26971)
  • EP Device Compatibility APIs (#​26922)
  • External Resource Importer API for D3D12 shared resources (#​26828)
  • Session config access from KernelInfo (#​26589)

📊 Dependencies & Integration


🖥️ Execution Provider Updates

NVIDIA

  • CUDA EP: Flash Attention updates, GQA kernel fusion, BF16 support for MoE/qMoE/MatMulNBits, CUDA 13.0 support
  • TensorRT EP: Upgraded to TensorRT 10.14, automatic plugin loading, NVFP4 custom ops
  • TensorRT RTX EP: RTX runtime caching, CUDA graph support, BFloat16, memory-mapped engines

Qualcomm QNN EP

  • QNN SDK upgraded to 2.42.0 with new ops (RMSNorm, ScatterElements, GatherND, STFT, RandomUniformLike)
  • Gelu pattern fusion, LPBQ quantization support, ARM64 wheel builds, v81 device support

Intel & AMD

  • OpenVINO EP: Upgraded to 2025.4.1
  • VitisAI EP: External EP loader, compiled model compatibility API
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.NET.Test.Sdk from 18.0.1 to 18.3.0.

Release notes

Sourced from Microsoft.NET.Test.Sdk's releases.

18.3.0

What's Changed

Internal fixes and updates

New Contributors

Commits viewable in compare view.

Updated ModelContextProtocol from 0.8.0-preview.1 to 1.2.0.

Release notes

Sourced from ModelContextProtocol's releases.

1.2.0

This release improves stateless HTTP transport defaults and documentation with a breaking behavioral change that we are considering as a server reliability fix and therefore not bumping the major version with this release. Legacy SSE endpoints are now disabled by default with a new HttpServerTransportOptions.EnableLegacySse property available to opt back into responding to the SSE endpoints; the property is marked as an [Obsolete] warning as we expect to remove this property in a future major version.

A warning-level [Obsolete] attribute is also applied to the RequestContext(McpServer, JsonRpcRequest) constructor, and the RequestContext(McpServer, JsonRpcRequest, TParams) overload should be used instead. This change contributes to fixes including DI scope lifetime in task-augmented tools, meta/progress combination failures, and outgoing message filter routing. We plan to remove the obsolete overload in a future major version.

Breaking Changes

Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.

1. Disable legacy SSE by default #​1468

MapMcp() no longer maps /sse and /message endpoints by default. Servers whose clients connect via SSE will find those endpoints removed.

Migrating from legacy SSE

If your clients connect to a /sse endpoint (e.g., https://my-server.example.com/sse), they were using the legacy SSE transport--if not running in Stateless mode. The /sse and /message endpoints are now disabled by default (EnableLegacySse is false and marked [Obsolete] with diagnostic MCP9004). Upgrading the server SDK without updating clients will break SSE connections.

Client-side migration. Change the client Endpoint from the /sse path to the root MCP endpoint — the same URL your server passes to MapMcp(). For example:

// Before (legacy SSE):
Endpoint = new Uri("https://my-server.example.com/sse")

// After (Streamable HTTP):
Endpoint = new Uri("https://my-server.example.com/")

With the default HttpTransportMode.AutoDetect transport mode, the client automatically tries Streamable HTTP first. You can also set TransportMode = HttpTransportMode.StreamableHttp explicitly if you know the server supports it.

Server-side migration. If you previously relied on /sse being mapped automatically, you now need EnableLegacySse = true (suppressing the MCP9004 warning) to keep serving those endpoints. The recommended path is to migrate all clients to Streamable HTTP and then remove EnableLegacySse.

Transition period. If some clients still need SSE while others have already migrated to Streamable HTTP, set EnableLegacySse = true with Stateless = false. Both transports are served simultaneously by MapMcp() — Streamable HTTP on the root endpoint and SSE on /sse and /message. Once all clients have migrated, remove EnableLegacySse and optionally switch to Stateless = true.

SSE (legacy — opt-in only)

Legacy SSE endpoints are now disabled by default and must be explicitly enabled via HttpServerTransportOptions.EnableLegacySse. This is the primary reason they are disabled — the SSE transport has no built-in HTTP-level backpressure.

The legacy SSE transport separates the request and response channels: clients POST JSON-RPC messages to /message and receive responses through a long-lived GET SSE stream on /sse. The POST endpoint returns 202 Accepted immediately after queuing the message — it does not wait for the handler to complete. This means there is no HTTP-level backpressure on handler concurrency, because each POST frees its connection immediately regardless of how long the handler runs.

Internally, handlers are dispatched with a fire-and-forget pattern. A client can send unlimited POST requests to /message while keeping the GET stream open, and each one spawns a concurrent handler with no built-in limit.

The GET stream does provide session lifetime bounds: handler cancellation tokens are linked to the GET request's HttpContext.RequestAborted, so when the client disconnects the SSE stream, all in-flight handlers are cancelled. This is similar to SignalR's connection-bound lifetime model — but unlike SignalR, there is no per-client concurrency limit like MaximumParallelInvocationsPerClient. The GET stream provides cleanup on disconnect, not rate-limiting during the connection.

2. Obsolete 2-arg RequestContext constructor #​1462

The RequestContext(McpServer, JsonRpcRequest) constructor is now [Obsolete] with diagnostic MCP9003, producing build warnings. The Params property is also changed from TParams? to TParams.

Migration: Use the new 3-arg constructor: new RequestContext(server, request, parameters).

What's Changed

  • Support specifying OutputSchema independently of return type for tools returning CallToolResult #​1425 by @​stephentoub (co-authored by @​Copilot)
  • Add 3-arg RequestContext constructor and obsolete 2-arg to eliminate null-forgiving operator usage #​1462 by @​halter73 (co-authored by @​Copilot)
    ... (truncated)

1.1.0

Highlights of v1.1.0 include client completion details for understanding when and why a client connection ended, auto-populated completion handlers from AllowedValuesAttribute, and bug fixes for server-initiated ping handling, server capabilities initialization, and in-flight message handler cleanup.

What's Changed

  • Register ping handler in McpSessionHandler to support server-initiated pings #​1391 by @​stephentoub (co-authored by @​Copilot)
  • Fix Extensions not being copied to ServerCapabilities during initialization #​1399 by @​stephentoub (co-authored by @​Copilot)
  • Auto-populate completion handlers from AllowedValuesAttribute on prompt/resource parameters #​1380 by @​stephentoub (co-authored by @​Copilot)
  • Add client completion notification and details #​1368 by @​stephentoub (co-authored by @​Copilot)
  • Wait for in-flight message handlers before ProcessMessagesCoreAsync returns #​1403 by @​stephentoub (co-authored by @​Copilot)

Documentation Updates

  • Add SSE server code example to transports documentation #​1385 by @​jeffhandley (co-authored by @​Copilot)
  • Simplify and update README for stable release #​1387 by @​stephentoub (co-authored by @​jeffhandley)
  • Simplify and update package README.md files for stable release #​1388 by @​stephentoub (co-authored by @​Copilot @​jeffhandley)
  • Remove outdated README reference from transports.md #​1394 by @​halter73
  • Clean up markdown-link-check warnings #​1395 by @​jeffhandley (co-authored by @​Copilot)

Repository Infrastructure Updates

  • Enable EnablePackageValidation for all src packages with 1.0.0 baseline #​1330 by @​jeffhandley (co-authored by @​Copilot @​stephentoub)
  • Bump hono from 4.12.0 to 4.12.2 in the npm_and_yarn group across 1 directory #​1392
  • Bump docfx from 2.78.4 to 2.78.5 #​1408
  • Bump actions/download-artifact from 7.0.0 to 8.0.0 #​1406
  • Bump actions/upload-artifact from 6.0.0 to 7.0.0 #​1405
  • Bump danielpalme/ReportGenerator-GitHub-Action from 5.5.1 to 5.5.2 #​1404
  • Bump the testing-frameworks group with 1 update #​1407
  • Add issue-triage Copilot skill #​1412 by @​jeffhandley (co-authored by @​Copilot)
  • Release v1.1.0 #​1411 by @​jeffhandley (co-authored by @​Copilot)

Acknowledgements

  • @​r-Larch submitted issue #​1269 (resolved by #​1403)
  • @​darena-mhaque submitted issue #​1398 (resolved by #​1399)
  • @​hulumane submitted issue #​1332 (resolved by #​1368)
  • @​AArnott submitted issue #​438 (resolved by #​1368)
  • @​JarroVGIT submitted issue #​1390 (resolved by #​1391)
  • @​stephentoub @​halter73 @​eiriktsarpalis @​jeffhandley reviewed pull requests

Full Changelog: modelcontextprotocol/csharp-sdk@v1.0.0...v1.1.0

1.0.0

This is the first stable release of the ModelContextProtocol C# SDK. Thank you to all of the contributors who helped us achieve this milestone!

Breaking Changes

Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.

  1. Mark RunSessionHandler experimental (MCPEXP002) #​1383
    • HttpServerTransportOptions.RunSessionHandler is now annotated with [Experimental("MCPEXP002")]
    • Code that references RunSessionHandler will produce a compile-time warning (or error with TreatWarningsAsErrors); suppress with #pragma warning disable MCPEXP002
    • Consider using ConfigureSessionOptions as an alternative; RunSessionHandler may be removed or change signatures in a future release

What's Changed

  • Add 2025-03-26 OAuth backward compatibility for client conformance #​1374 by @​jeffhandley (co-authored by @​Copilot)
  • Mark RunSessionHandler experimental (MCPEXP002) #​1383 by @​halter73 (co-authored by @​Copilot @​jeffhandley)

Documentation Updates

  • Fix a few bugs in the docs #​1379 by @​stephentoub
  • Add and augment conceptual docs #​1375 by @​jeffhandley (co-authored by @​Copilot @​mikekistler @​stephentoub @​halter73)

Repository Infrastructure Updates

  • Bump to version 1.0.0 (stable) #​1384 by @​jeffhandley

Acknowledgements

  • @​halter73 @​stephentoub @​mikekistler @​eiriktsarpalis reviewed pull requests

Full Changelog: modelcontextprotocol/csharp-sdk@v1.0.0-rc.1...v1.0.0

1.0.0-rc.1

This release candidate completes a full API surface area audit ahead of the 1.0.0 stable release, with more changes to public APIs to ensure consistency and long-term maintainability. Protocol DTO types are updated to match the MCP specification, deprecated filter APIs are removed, and bug fixes improve transport reliability and JSON handling.

Breaking Changes

Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.

  1. Address asymmetry in McpServerHandlers/McpClientHandlers and make all filter properties settable #​1337

    • Seals McpClientHandlers to match the already-sealed McpServerHandlers
    • Makes McpServerOptions.Handlers, McpServerOptions.Filters, and all IList<T> filter properties settable with null validation
  2. Remove server back-references from protocol DTO types #​1345

    • Removes Tool.McpServerTool, Prompt.McpServerPrompt, Resource.McpServerResource, and ResourceTemplate.McpServerResource properties
    • Use McpServerPrimitiveCollection.TryGetPrimitive() for name-based lookups instead
  3. Make Tool.Name required to match other protocol types #​1351

    • Adds required modifier to Tool.Name, matching Prompt.Name, Resource.Name, and other IBaseMetadata implementations
    • Callers must now specify Name in object initializers
  4. Make LoggingMessageNotificationParams.Data required per MCP spec #​1353

    • Changes LoggingMessageNotificationParams.Data from JsonElement? to required JsonElement per the MCP specification
  5. Fix CreateMessageRequestParams.Metadata type to JsonObject #​1354

    • Changes CreateMessageRequestParams.Metadata from JsonElement? to JsonObject? to match all other _meta/Meta properties in the SDK
  6. Normalize CallToolResult.StructuredContent to JsonElement? #​1357

    • Changes CallToolResult.StructuredContent from JsonNode? to JsonElement? for consistency with the rest of the SDK
    • Use JsonSerializer.SerializeToElement() to produce a JsonElement
  7. Unify service configuration for ISseEventStreamStore, IMcpTaskStore, and ISessionMigrationHandler #​1362

    • Consistent options + DI pattern: explicit options property > DI resolution
  8. Add explicit [Experimental] protected constructors to McpClient and McpServer #​1363

    • Protected constructors on McpClient and McpServer now require suppressing MCPEXP002 to subclass
  9. Remove MCP9002 obsolete APIs and document obsolete diagnostics #​1366

    • Removes the 13 AddXxxFilter extension methods on IMcpServerBuilder (e.g. AddCallToolFilter, AddListToolsFilter) that were deprecated under diagnostic MCP9002
    • Use WithRequestFilters() and WithMessageFilters() instead
  10. Fix McpClientPrompt/Resource types to use RequestOptions like McpClientTool does #​1370

    • Replaces JsonSerializerOptions with RequestOptions parameter for consistency across McpClientPrompt, McpClientResource, and McpClientTool

What's Changed

  • Make Tool.Name required to match other protocol types #​1351 by @​stephentoub (co-authored by @​Copilot)
  • Make LoggingMessageNotificationParams.Data required per MCP spec #​1353 by @​stephentoub (co-authored by @​Copilot)
  • Fix off-by-one error in reconnection attempts #​1356 by @​stephentoub (co-authored by @​Copilot)
  • Remove server back-references from protocol DTO types #​1345 by @​stephentoub (co-authored by @​Copilot)
  • Fix base64 deserialization when JSON encoder escapes forward slashes #​1342 by @​stephentoub (co-authored by @​Copilot)
  • Increase MaxReconnectionAttempts default from 2 to 5 #​1355 by @​stephentoub (co-authored by @​Copilot)
  • Prevent cancellation of initialize request per MCP spec #​1350 by @​stephentoub (co-authored by @​Copilot)
    ... (truncated)

0.9.0-preview.2

This release focuses on API surface consistency and correctness ahead of 1.0.0. Public collection properties are now typed as IList<T> instead of concrete List<T> or T[], and Root.Meta is aligned with the rest of the protocol DTOs by using JsonObject?. Other improvements include new experimental Extensions support for capabilities, missing ResourceLinkBlock properties, improved mimeType handling, and several documentation and test reliability fixes.

We plan to release the stable 1.0.0 release early in the week of February 23, 2026.

Breaking Changes

Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.

  1. Replace concrete collection types with interfaces in public API surface #​1326

    • List<T> and T[] properties on ProtectedResourceMetadata, ToolResultContentBlock, ListTasksResult, and DynamicClientRegistrationResponse changed to IList<T>. Replace .Length with .Count and cast to List<T> if List<T>-specific members are needed.
  2. Fix Root.Meta to use JsonObject instead of JsonElement #​1341

    • Root.Meta changed from JsonElement? to JsonObject?. Replace meta.Value.GetProperty("key").GetString() with (string?)meta["key"].
  3. Make UrlElicitationRequiredErrorData.Elicitations consistent with other Protocol DTOs #​1335

    • Elicitations changed from IReadOnlyList<ElicitRequestParams> with init to IList<ElicitRequestParams> with set. Code using List<T> is unaffected since it implements both interfaces.

What's Changed

  • Remove dead code: options ??= new() in McpServerImpl constructor #​1322 by @​stephentoub (co-authored by @​Copilot)
  • Remove unnecessary _connectCts field from McpClientImpl #​1323 by @​stephentoub (co-authored by @​Copilot)
  • Add missing Title and Icons properties to ResourceLinkBlock #​1320 by @​stephentoub (co-authored by @​Copilot)
  • Omit null mimeType from ResourceContents JSON serialization #​1325 by @​stephentoub (co-authored by @​Copilot)
  • Validate mimeType in ImageContentBlock.FromBytes and AudioContentBlock.FromBytes #​1321 by @​stephentoub (co-authored by @​Copilot)
  • Replace concrete collection types with interfaces in public API surface #​1326 by @​stephentoub (co-authored by @​Copilot)
  • Make UrlElicitationRequiredErrorData.Elicitations consistent with other Protocol DTOs #​1335 by @​stephentoub (co-authored by @​Copilot)
  • Fix Metadata delegation in DelegatingMcpServerTool/Prompt/Resource #​1338 by @​stephentoub (co-authored by @​Copilot @​jeffhandley)
  • Add Extensions support to ClientCapabilities and ServerCapabilities #​1317 by @​stephentoub (co-authored by @​Copilot)
  • Fix _meta properties to use JsonObject #​1341 by @​stephentoub (co-authored by @​Copilot)

Documentation Updates

  • Fix incorrect XML doc comments in McpClient.Methods.cs #​1333 by @​stephentoub (co-authored by @​Copilot)
  • Add missing exception documentation for public APIs #​1339 by @​stephentoub (co-authored by @​Copilot)

Test Improvements

  • Fix flaky DiagnosticTests on net10.0 by waiting for specific activities #​1324 by @​stephentoub (co-authored by @​Copilot)
  • Fix flaky sse-retry conformance test due to CI timing overhead #​1336 by @​ericstj (co-authored by @​Copilot)

Repository Infrastructure Updates

  • Bump version to 1.0.0-rc.1 #​1327 by @​jeffhandley (co-authored by @​Copilot)
  • Add release-notes, breaking-changes, and bump-version Copilot skills #​1328 by @​jeffhandley (co-authored by @​Copilot)
  • Bump hono from 4.11.7 to 4.12.0 in the npm_and_yarn group across 1 directory #​1316
  • Bump version down to 0.9.0-preview.2 since we are still changing APIs #​1344 by @​jeffhandley (co-authored by @​Copilot)

Acknowledgements

  • @​halter73 @​eiriktsarpalis @​mikekistler reviewed pull requests
    ... (truncated)

0.9.0-preview.1

The 0.9.0-preview.1 release includes multiple breaking changes focused on quality, extensibility, usability, and API consistency as we continue refining the SDK in preparation for a stable 1.0.0 release.

We plan to release the stable 1.0.0 release early in the week of February 23, 2026.

Breaking Changes

Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.

  1. Use ReadOnlyMemory<byte> for binary data to eliminate UTF-16 transcoding #​1070

    • ImageContentBlock.Data, AudioContentBlock.Data, and BlobResourceContents.Blob changed from string to ReadOnlyMemory<byte>; FromImage/FromAudio renamed to FromBytes; BlobResourceContents.Data renamed to DecodedData
    • Migration: Use DecodedData for decoded bytes and FromBytes(...) factory methods
  2. Split configuration of request and message filters #​1308

    • Add*Filter extension methods on IMcpServerBuilder replaced by WithMessageFilters and WithRequestFilters callbacks with grouped builder instances
    • Migration: Wrap existing filter registration inside the new callback methods
  3. Don't treat McpServerHandlers as an independent options type #​1313

    • McpServerHandlers no longer resolved via IOptions<McpServerHandlers>; handlers set directly on McpServerOptions.Handlers
    • Migration: Configure handlers through McpServerOptions directly
  4. Add ISessionMigrationHandler #​1270

    • Stateful Streamable HTTP POST requests without a session ID are now rejected with 400 unless the message is an initialize request
    • Compat switch: ModelContextProtocol.AspNetCore.AllowNewSessionForNonInitializeRequests = true restores previous behavior
  5. Change ProtectedResourceMetadata URI properties to strings #​1264

    • Multiple properties changed from Uri?/List<Uri> to string?/List<string> to avoid unwanted URI normalization
    • Migration: Use string values directly instead of Uri objects
  6. Hide experimental types from external source generators using internal property pattern #​1301

    • Experimental properties now use [JsonIgnore] + internal delegate pattern; external source generators no longer reference experimental types
    • No code changes needed for most consumers
  7. Validate MCP-Protocol-Version header in Streamable HTTP handler #​1277

    • Server returns HTTP 400 for invalid/unsupported header values; missing header still allowed
    • Migration: Ensure clients send a valid protocol version or omit the header
  8. Update McpErrorCode and fix error code usage to align with MCP spec #​1291

    • Task support validation errors changed from MethodNotFound to InvalidParams
    • Migration: Update error code checks for task support validation scenarios

What's Changed

  • Bring up to 0.1.13 conformance #​1254 by @​stephentoub
  • Change ProtectedResourceMetadata URI properties to strings and build resource strings directly #​1264 by @​halter73 (co-authored by @​Copilot)
  • Log tool call name on success, not just failure #​1256 by @​halter73 (co-authored by @​Copilot)
  • Fix HttpClient timeout for long-running tools without event stream store #​1268 by @​halter73 (co-authored by @​Copilot)
  • Fix stderr event loss due to missing WaitForExit in DisposeProcess #​1280 by @​stephentoub (co-authored by @​Copilot)
  • Update McpErrorCode XML docs and fix error code usage to align with MCP spec #​1291 by @​stephentoub (co-authored by @​Copilot)
  • Add X-Accel-Buffering header to SSE responses #​1294 by @​stephentoub (co-authored by @​Copilot)
  • Fix StdioServerTransport.DisposeAsync() hang: CancellableStdinStream missing Dispose override #​1276 by @​stephentoub (co-authored by @​Copilot)
    ... (truncated)

Commits viewable in compare view.

Updated NUnit from 4.4.0 to 4.5.1.

Release notes

Sourced from NUnit's releases.

4.5.1

See release notes for details.

4.5.0

See release notes for details.

Commits viewable in compare view.

Updated NUnit.Analyzers from 4.11.2 to 4.12.0.

Release notes

Sourced from NUnit.Analyzers's releases.

4.12.0

NUnit Analyzers 4.12 - March 3, 2026

This release of the NUnit Analyzers improves NUnit1029 to account for TestCaseSource
support for params and optional arguments. It also introduces a new analyzer for incorrect
usage of Is.Not.Null.Or.Empty, fixes regressions in NUnit2005 and NUnit2055, and updates
NUnit package dependencies.

The release contains contributions from the following users (in alphabetical order):

  • @​Dreamescaper
  • @​manfred-brands
  • @​mikkelbu
  • @​nowsprinting
  • @​philipp-naused
  • @​stevenaw

Issues Resolved

Features and Enhancements

  • #​957 Relax NUnit1029 for TestCaseSource where method accepts a single "params" array
  • #​189 Warning when Is.Not.Null.Or.Empty used

Bugs

  • #​953 Code fix for NUnit2055 can generate invalid code for classic asserts
  • #​952 Code fix for NUnit2005 tries to use Is.Empty constraint on incompatible types.

Tooling, Process, and Documentation

  • #​973 chore: Bump NUnit version
  • #​970 chore: Bump NUnit to version 4.5.0
  • #​967 Fix note about works with Unity Test Framework
  • #​937 chore: bump version

Commits viewable in compare view.

Updated NUnit3TestAdapter from 6.1.0 to 6.2.0.

Release notes

Sourced from NUnit3TestAdapter's releases.

6.2.0

See release notes

Commits viewable in compare view.

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps coverlet.msbuild from 8.0.0 to 8.0.1
Bumps Markdig from 0.44.0 to 1.1.2
Bumps Microsoft.CodeAnalysis.NetAnalyzers from 10.0.102 to 10.0.201
Bumps Microsoft.Data.Sqlite from 10.0.2 to 10.0.5
Bumps Microsoft.Extensions.Hosting from 10.0.2 to 10.0.5
Bumps Microsoft.ML.OnnxRuntime from 1.23.2 to 1.24.4
Bumps Microsoft.NET.Test.Sdk from 18.0.1 to 18.3.0
Bumps ModelContextProtocol from 0.8.0-preview.1 to 1.2.0
Bumps NUnit from 4.4.0 to 4.5.1
Bumps NUnit.Analyzers from 4.11.2 to 4.12.0
Bumps NUnit3TestAdapter from 6.1.0 to 6.2.0

---
updated-dependencies:
- dependency-name: coverlet.msbuild
  dependency-version: 8.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Markdig
  dependency-version: 1.1.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: nuget-all
- dependency-name: Microsoft.CodeAnalysis.NetAnalyzers
  dependency-version: 10.0.201
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Microsoft.Data.Sqlite
  dependency-version: 10.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Microsoft.Extensions.Hosting
  dependency-version: 10.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Microsoft.ML.OnnxRuntime
  dependency-version: 1.24.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 18.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: ModelContextProtocol
  dependency-version: 1.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: nuget-all
- dependency-name: NUnit
  dependency-version: 4.5.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: NUnit.Analyzers
  dependency-version: 4.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: NUnit3TestAdapter
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot bot commented on behalf of github Apr 1, 2026

Labels

The following labels could not be found: dependencies, nuget. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot dependabot bot requested a review from MSBrett as a code owner April 1, 2026 03:43
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.

0 participants