Skip to content

Bump Microsoft.WindowsAppSDK from 2.2.0 to 2.3.1 - #6

Merged
tuki0918 merged 1 commit into
mainfrom
dependabot/nuget/Windows/BundlePack.Windows/Microsoft.WindowsAppSDK-2.3.1
Jul 22, 2026
Merged

Bump Microsoft.WindowsAppSDK from 2.2.0 to 2.3.1#6
tuki0918 merged 1 commit into
mainfrom
dependabot/nuget/Windows/BundlePack.Windows/Microsoft.WindowsAppSDK-2.3.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 22, 2026

Copy link
Copy Markdown
Contributor

Updated Microsoft.WindowsAppSDK from 2.2.0 to 2.3.1.

Release notes

Sourced from Microsoft.WindowsAppSDK's releases.

2.3.1

Windows App SDK 2.3.1

Windows App SDK 2.3.1 is the latest stable release on the 2.x line, with a new structured JSON output API for Phi Silica, the XamlOptionalChanges API for opting into XAML breaking changes, an unstable CompositionEngine Limited Access Feature, Video Super Resolution improvements, ARM64EC support for Windows ML, a broad set of XAML performance optimizations, and a batch of reliability fixes.

What's new in WinAppSDK 2.3.1:

  • Structured JSON output for Phi Silica. The new LanguageModel.GenerateStructuredJsonResponseAsync API generates language-model responses constrained to a caller-supplied JSON Schema, so apps get well-formed, schema-conformant output instead of free-form text they have to parse themselves.
  • XamlOptionalChanges. A new API that lets apps opt into optional breaking changes before XAML initialization. In the same release, the DISABLE_XAML_GENERATED_MAIN preprocessor constant now renames the generated main() method (C#: XamlGeneratedProgram.XamlGeneratedMain(); C++/WinRT: wXamlGeneratedMain()) instead of removing it, so a custom main() can invoke the default implementation. See PR microsoft/microsoft-ui-xaml#​11110.
  • CompositionEngine (Limited Access Feature). A new, unstable Limited Access Feature that lets apps opt into using the OS as the engine for the Composition APIs.
  • Video Super Resolution improvements. Fixed NPU detection, added CPU support, and improved performance for Video Super Resolution.
  • Windows ML: ARM64EC support. Windows ML now supports ARM64EC, alongside a fix to execution-provider enumeration in certain scenarios.
  • XAML performance optimizations. This release adds a broad set of startup, styling, and resource-lookup optimizations. Several are opt-in through the DefaultStyleOptimizations and OptimizeApplyStyles XamlChangeIds, including optimized XamlControlsResources styles, a lighter FontIcon/BitmapIcon visual tree, and faster ThemeResource and ResourceDictionary lookups.
  • AI IntelliSense documentation. Added IntelliSense documentation for the stable APIs in the Microsoft.WindowsAppSDK.AI NuGet package.

Bug fixes:

Bug Fix Runtime Compatibility Change
Fixed ApplicationData.GetForUnpackaged().LocalSettings() opening a registry key at a roaming path (HKCU\SOFTWARE\publisher\product) instead of a machine-local one, so unpackaged app settings now persist in the correct location. See GitHub issue microsoft/WindowsAppSDK#​6559. ApplicationData_GetForUnpackaged_LocalSettings
Fixed a crash that could repeatedly bring down backgroundTaskHost.exe when a background task had no stored CLSID, and added graceful handling when CoCreateInstance fails. See GitHub issue microsoft/WindowsAppSDK#​5870. UniversalBGTask_RunCrash
Fixed windowed and non-windowed flyouts appearing misaligned (about one item-height above the parent item) for side placements when they open upward near the bottom of the screen. Flyout_SidePlacementFlipUpAlignmentFix
Fixed a crash in MediaPlayerPresenter when the GPU device is lost during media playback event handling. MediaPlayerPresenter_DeviceLostCrash
Fixed a use-after-free crash in CPopupRoot::ReplayPointerUpdate when a popup is closed synchronously during pointer-event replay. CPopupRoot_ReplayPointerUpdateCrash
Fixed a crash (null LayoutState dereference) in UniformGridLayout and FlowLayout that could occur when a collection change was raised on an ItemsRepeater that was no longer loaded. UniformGridLayoutFlowLayout_OnItemsChangedNullLayoutStateCrash

To see everything that's new and changed, see the full Windows App SDK 2.3.1 release notes.

Try it out

  • Download the 2.3.1 NuGet package to use WinAppSDK 2.3 in your app.
  • Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.

Getting started

To get started using Windows App SDK to develop Windows apps, check out the following documentation:

2.2.2-exp9

Windows App SDK 2.2 Experimental 9 (2.2.2-experimental9) 🧪

Windows App SDK 2.2 Experimental 9 is the latest experimental release. It ships alongside Windows App SDK 2.2.0 stable and generally brings over the changes from that release; the highlights below describe the experimental-only additions.

What's new in WinAppSDK 2.2 Experimental 9:

  • Language Model APIs on GPU [Experimental]. The Language Model APIs now run on non-Copilot+ PCs equipped with a supported GPU, bringing local language model capabilities to a broader range of Windows 11 devices. Supported hardware includes NVIDIA GeForce RTX 30 series and newer with 6+ GB vRAM. GPU inference requires Developer Mode to be enabled and a Windows Insider Experimental Channel build. The GPU model is not pre-installed; it is downloaded on demand via EnsureReadyAsync through Windows Update. Apps should check GetReadyState and display a consent dialog before triggering the download. Users can manage the model at Settings > System > AI Components. For responsible AI guidance, see the new Transparency Note: Language Model APIs on Non-Copilot+ PCs.
  • Speech Recognition APIs [Experimental]. New on-device speech recognition APIs in Microsoft.Windows.AI.Speech enable both batch and streaming speech-to-text. BatchRecognition recognizes a complete audio source in a single call, and StreamingRecognition raises Recognizing and Recognized events. Audio can be sourced from a device (AudioConfiguration.FromAudioDevice), file (FromFile), input stream (FromStream), or pushed by the caller via SpeechAudioProvider (16 kHz, 16-bit, single-channel PCM). The on-device model is managed via SpeechRecognitionModel.EnsureReadyAsync / TryCreateAsync, with download and load progress reported through SpeechRecognitionModelProgress.
  • New NpuType API. A new Microsoft.Windows.Workloads.NpuType enum surfaces the NPU class on the current device (for example, Qnn, Lnl, Stx, Win365, Unknown, None), so apps and Workloads infrastructure can route AI workloads to the appropriate execution path.

This release also rolls forward all changes from the 2.2.0 stable release: the new Microsoft.Windows.AI.Video.VideoScaler Video Super Resolution API, the new Microsoft.Windows.Storage.ApplicationData.GetForUnpackaged() entry point for unpackaged apps, the new XamlBindingHelper boxing-free setter overloads, and the WinUI / Windows ML reliability fixes shipped in 2.2.0.

New or updated APIs (since 2.1 Experimental 8):

Microsoft.UI.Xaml

    Setter
        ValueProperty
Microsoft.UI.Xaml.Markup

    XamlBindingHelper
        SetPropertyFromColor
        SetPropertyFromCornerRadius
        SetPropertyFromThickness
Microsoft.Windows.AI.Speech

    AudioConfiguration
    BatchRecognition
    SpeechAudioProvider
    SpeechContract
    SpeechRecognitionModel
    SpeechRecognitionModelProgress
    SpeechRecognitionModelProgressStatus
    SpeechRecognitionModelResult
    StreamingRecognition
    StreamingRecognizedEventArgs
    StreamingRecognizingEventArgs
Microsoft.Windows.AI.Text.Experimental

    LanguageModelExperimental
        CompressPromptAsync
        GenerateResponseAsync
        GenerateResponseFromEmbeddingsAsync
 ... (truncated)

Commits viewable in [compare view](https://github.com/microsoft/windowsappsdk/compare/v2.2.0...v2.3.1).
</details>

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Microsoft.WindowsAppSDK&package-manager=nuget&previous-version=2.2.0&new-version=2.3.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

---
updated-dependencies:
- dependency-name: Microsoft.WindowsAppSDK
  dependency-version: 2.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

Labels

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

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

@tuki0918
tuki0918 merged commit 4ffabb4 into main Jul 22, 2026
4 of 7 checks passed
@dependabot
dependabot Bot deleted the dependabot/nuget/Windows/BundlePack.Windows/Microsoft.WindowsAppSDK-2.3.1 branch July 22, 2026 17:20
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