Skip to content

Releases: microsoft/WindowsAppSDK

Windows App SDK 1.8.12 (1.8.260921001)

Choose a tag to compare

@agniuks agniuks released this 24 Sep 22:36
3389e76

Windows App SDK 1.8.12 is the final servicing release for version 1.8. It fixes a Windows ML issue that could expose an unavailable execution provider on certain Arm64 devices.

Bug fixes

Bug fix Runtime Compatibility Change
Fixed an issue where ExecutionProviderCatalog.FindAllProviders could return an execution provider in the NotPresent state on certain Arm64 devices even though ExecutionProvider.EnsureReadyAsync could not acquire it. The unavailable provider is no longer returned on affected devices. N/A, Windows ML provider availability fix

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

Try it out

Getting started

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

2.5 Experimental (2.5.4-experimental) 🧪

Choose a tag to compare

@agniuks agniuks released this 30 Sep 01:25
28e5c76

Windows App SDK 2.5 Experimental is the latest experimental release, adding new Windows AI capabilities, code-based theme resource bindings and DataTemplate construction, the new TableView and Chart controls, and expanded WinUI 3 inking support. It follows Windows App SDK 2.5.1 stable and brings forward the changes from that release alongside the experimental-only additions below.

What's new in WinAppSDK 2.5 Experimental:

  • Windows AI device selection. New AIComputeDevice APIs let apps choose the default, CPU, or NPU execution device for text recognition. App Content Index image indexing can use the same preference for OCR through ContentRegionImageOptions.PreferredTextRecognizerDevice.
  • AI Speech and language model updates. New speech recognition factories improve model configuration and creation, while updated audio, streaming, and continuous recognition APIs expand speech scenarios. Language model APIs now expose model identity, low-rank adapter compatibility, and response statuses for game mode and low video memory.
  • Theme resource binding from code. The experimental FrameworkElement.SetThemeResourceBinding API lets apps create the equivalent of a {ThemeResource} binding programmatically.
  • Delegate-based DataTemplate construction. A new experimental DataTemplate constructor accepts an app-provided delegate that creates the template's element subtree.
  • TableView control. The experimental TableView control is now available in the public WinMDs, with grouping, templated group headers, sorting and filtering, resizable columns, and optional cell and header tooltips.
  • Chart control. A new experimental WinUI 3 Chart control presents Cartesian data as line, area, and bar series, with configurable axes, legends, labels, and markers.
  • WinUI 3 inking updates. New InkPresenter.ActivateCustomDrying and InkSynchronizer APIs let apps render committed ink themselves, and InkToolbar now targets an InkPresenter directly.

Bugs fixed:

  • Fixed an access violation that could occur when reading InkPresenter.StrokeContainer while custom drying was active.
  • Fixed InkCanvas presenter sizing under a RenderTransform.
  • Fixed a WinUI resource-tracking issue that could cause memory usage to grow when apps repeatedly created visual-state storyboards or resolved static or theme resources.
  • Improved cleanup of unreachable native WinUI objects in .NET apps after tab or page teardown.

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

Try it out

Getting started

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

Windows App SDK 2.5.1

Choose a tag to compare

@agniuks agniuks released this 16 Sep 22:53
13160d5

Windows App SDK 2.5.1 adds Windows Error Reporting support for self-contained .NET MSIX apps, introduces limited-access app content search APIs, and includes reliability fixes across WinUI 3, input, composition, deployment, and Windows AI.

What's new in WinAppSDK 2.5.1:

  • Windows Error Reporting support. Self-contained .NET MSIX apps can now use the windows.diagnosticServiceModule package-manifest extension to declare diagnostic modules, allowing Windows Error Reporting to load them and collect actionable crash dumps.
  • Limited-access AppContentSearch APIs. Apps with a limited-access feature token can use the new AppContentIndex APIs to index text and images, perform lexical queries, and use semantic matching on supported NPU-enabled devices. The APIs support semantic search and retrieval-augmented generation scenarios.

Bug fixes:

Bug Fix Runtime Compatibility Change
Fixed a crash in windowed-popup input handling when a focus or pointer event was processed after the popup's island had been disposed. PointerInputProcessor_ReleaseCaptureOnDisposedIsland
Fixed a crash in NavigationView when resizing the control could produce a negative pane MaxHeight. NavigationView_UpdatePaneLayoutNegativeMaxHeight
Fixed an issue where the property set returned by ElementCompositionPreview.GetPointerPositionPropertySet stopped updating while a pointer was pressed. PointerPositionPropertySet_UpdateWhilePressed
Fixed a crash in NavigationView when an expanded item's flyout was shown after the item had been collapsed or recycled. NavigationViewItem_DeferredFlyoutShowStaleState
Fixed a fail-fast when a KeyboardAccelerator used an OEM or punctuation key and displayed the accelerator shortcut label. KeyboardAccelerator_OemKeyNoFailFast
Fixed a fatal process exit during XAML shutdown in apps hosting WinUI 3 on more than one UI thread. WindowsXamlManager_ActivationFactoryCacheResetRace
Fixed an issue where a CommandBar with no secondary commands could show an empty overflow button at fractional display scales such as 175%. CommandBar_SpuriousOverflowButtonAtFractionalScale
Fixed an issue that prevented apps using the System Composition Engine from calling VisualInteractionSource.CreateFromIVisualElement. CompositionEngine_SwitcherSeptemberFixes
Fixed effect graphs and SceneLighting rendering for apps using the System Composition Engine. CompositionEngine_SwitcherSeptemberFixes
Fixed InputPointerSource.ActivationBehavior not honoring NoActivate when using the System Composition Engine. CompositionEngine_SwitcherSeptemberFixes
Fixed CompositionEngine selection behavior for null inputs and no-op selections. CompositionEngine_SwitcherSeptemberFixes
Fixed cursor customization for lifted input when using the System Composition Engine. CompositionEngine_SwitcherSeptemberFixes
Fixed ICompositionObject queries on gradient stop collections when using the System Composition Engine. N/A, operating system composition fix
Fixed ContentExternalOutputLink border and background behavior when using the System Composition Engine. N/A, operating system composition fix
Fixed access to VisualReferenceController when using the System Composition Engine. N/A, operating system composition fix
Fixed a registration issue that could occur when installing the Windows App SDK. N/A, deployment registration fix
Fixed an issue where Video Super Resolution could fail during initialization or inference with the updated ONNX Runtime dependency. N/A, dependency compatibility update

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

Try it out

  • Download the 2.5.1 NuGet package to use WinAppSDK 2.5 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.4 Experimental (2.4.1-experimental) 🧪

Choose a tag to compare

@agniuks agniuks released this 25 Aug 20:47
0860368

Windows App SDK 2.4 Experimental (2.4.1-experimental) 🧪

Windows App SDK 2.4 Experimental is the latest experimental release, headlined by inking support for WinUI 3. It follows Windows App SDK 2.4.0 stable and generally brings forward the changes from that release alongside the experimental-only addition below.

What's new in WinAppSDK 2.4 Experimental:

  • Inking support for WinUI 3. The new InkCanvas, InkToolbar, and InkPresenter APIs add pen and touch input, clipboard and high-contrast support, stroke input, and unprocessed input to WinUI 3 apps.

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

Try it out

Getting started

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

Windows App SDK 2.4.0

Choose a tag to compare

@agniuks agniuks released this 13 Aug 17:43
ee3c507

Windows App SDK 2.4.0

Windows App SDK 2.4.0 is the latest stable release on the 2.x line, adding expanded input support, more precise LanguageModel response statuses, and targeted reliability fixes across input, Storage Pickers, MRT Core, app runtime isolation, composition, and XAML tooling.

What's new in WinAppSDK 2.4.0:

  • Expanded input support. WinUI 3 apps can now use operating system touchpad and mouse haptics through Windows.Devices.Haptics, along with touchpad single-finger panning, when supported by the operating system and hardware.
  • More precise LanguageModel response statuses. The new LanguageModelResponseStatus.UnsupportedLanguage and LanguageModelResponseStatus.LanguageMismatch values let apps distinguish unsupported-language and input/output-language mismatch conditions from generic errors.

Bug fixes:

Bug Fix Runtime Compatibility Change
Fixed a crash that could occur when a touch or pen contact left a scrollable area with precise timing. InputPointerSource_DepartingScrollInputCrashFix
Fixed an issue where the Storage Pickers left the calling WinUI app window without keyboard focus after the file dialog closed. The app now restores its previous focus. See GitHub issue microsoft/WindowsAppSDK#6505. StoragePickers_RestoreFocusAfterDialogCloses
Fixed a regression where MrmGetFilePathFromName returned ERROR_FILE_NOT_FOUND when the PRI file didn't exist instead of returning the documented fallback path. See GitHub issue microsoft/WindowsAppSDK#5940. ResourceManager_RestoreDefaultFallbackPath
Fixed an issue where MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY could be inherited by child processes, disrupting MRT Core and catalog lookups. See GitHub issue microsoft/WindowsAppSDK#5987. WindowsAppRuntime_BaseDirectoryIsolation
Fixed a crash when apps using the System Composition Engine called VisualInteractionSource.TryRedirectForManipulation. N/A, operating system composition bridge fix
Fixed the access modifier on the generated C# entry point helper when DISABLE_XAML_GENERATED_MAIN is defined. See GitHub issue microsoft/microsoft-ui-xaml#11245. N/A, build-time tooling change

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

Try it out

  • Download the 2.4.0 NuGet package to use WinAppSDK 2.4 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.3.2-experimentalA 🧪

Pre-release

Choose a tag to compare

@agniuks agniuks released this 30 Jul 22:53
ee3c507

Windows App SDK 2.3 Experimental A (2.3.2-experimentalA) 🧪

Windows App SDK 2.3 Experimental A is the latest experimental release, headlined by new DPI-aware window sizing from XAML, a substantial round of App Content Index indexing and reliability improvements, and additional Windows AI and speech APIs. It builds on the Windows App SDK 2.3.1 stable release and adds the experimental-only work described below.

What's new in WinAppSDK 2.3 Experimental A:

  • Window.Width and Window.Height. New properties give apps a DPI-aware way to get and set a window's size in logical (client) pixels directly from code or markup, without reaching through Window.AppWindow and doing manual logical-to-physical DPI conversion. Companion Window.MinWidth, Window.MinHeight, Window.MaxWidth, and Window.MaxHeight properties constrain the window's size.
  • App Content Index improvements. The experimental App Content Index APIs add faster batch indexing via AppContentIndexer.BatchAddOrUpdate, direct indexing of bitmap and image-stream content (with OCR and semantic options), static ranking boosts for individual content items or regions, ICU-based multilingual tokenization, and automatic recovery from index corruption. Indexing and query paths are also substantially faster, with more stable lexical ranking.
  • Structured JSON generation. A new LanguageModel.GenerateStructuredJsonResponseAsync API lets apps generate structured JSON output from the on-device language model, making it easier to get typed, machine-readable results back from a prompt.
  • Speech recognition cleanup. The experimental SpeechAudioProvider now implements IClosable, so apps can deterministically release the provider with Close/Dispose when they finish streaming audio.

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

Try it out

Getting started

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

Windows App SDK 1.8.11 (1.8.260804001)

Choose a tag to compare

@agniuks agniuks released this 13 Aug 17:43
ee3c507

Windows App SDK 1.8.11 (1.8.260804001)

WinAppSDK 1.8.11 is the latest stable servicing release for 1.8, with fixes for Storage Picker focus restoration, MRT Core fallback paths, and Windows App Runtime base-directory isolation.

Bug fixes:

Bug Fix Runtime Compatibility Change
Fixed an issue where the Storage Pickers (FileOpenPicker, FileSavePicker, and FolderPicker) left the calling WinUI app window without keyboard focus after the file dialog closed. The app now restores its previous focus. See GitHub issue microsoft/WindowsAppSDK#6505. StoragePickers_RestoreFocusAfterDialogCloses
Fixed a regression where MrmGetFilePathFromName returned ERROR_FILE_NOT_FOUND when the PRI file didn't exist instead of returning the documented fallback path. See GitHub issue microsoft/WindowsAppSDK#5940. ResourceManager_RestoreDefaultFallbackPath
Fixed an issue where MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY could be inherited by child processes, disrupting MRT Core and catalog lookups. See GitHub issue microsoft/WindowsAppSDK#5987. WindowsAppRuntime_BaseDirectoryIsolation

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

Try it out

Getting started

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

Windows App SDK 2.3.1

Choose a tag to compare

@agniuks agniuks released this 17 Jul 02:44
c046292

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:

Windows App SDK 1.8.10 (1.8.260710003)

Choose a tag to compare

@agniuks agniuks released this 14 Jul 23:15
aa197a5

Windows App SDK 1.8.10 (1.8.260710003)

WinAppSDK 1.8.10 is the latest stable servicing release for 1.8, with a reliability fix for Microsoft.UI.System.ThemeSettings.

Bug fixes:

Bug Fix Runtime Compatibility Change
Fixed an issue where Microsoft.UI.System.ThemeSettings could crash an app if it was destroyed on a background thread, for example when destroyed by the .NET garbage collector. ThemeSettings_OffThreadDestructorFix

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

Try it out

Getting started

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

2.2 Experimental 9 (2.2.2-experimental9) 🧪

Choose a tag to compare

@agniuks agniuks released this 09 Jun 23:30
9bde038

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

    LanguageModelOptionsExperimental
        PreferredRetentionRatio
Microsoft.Windows.Workloads

    NpuType

Try it out

Getting started

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