Stable channel release notes for the Windows App SDK 0.8

The stable channel provides releases of the Windows App SDK that are supported for use by apps in production environments. Apps that use the stable release of the Windows App SDK can also be published to the Microsoft Store.

Important links:

Latest stable channel release:

Downloads for the Windows App SDK

Note

The Windows App SDK Visual Studio Extensions (VSIX) are no longer distributed as a separate download. They are available in the Visual Studio Marketplace inside Visual Studio.

Version 0.8

The latest available release of the 0.8.x lineage of the stable channel of the Windows App SDK is version 0.8.12.

Note

The Windows App SDK was previously known by the code name Project Reunion. Some SDK assets in version 0.8 and earlier still use the code name. Some areas of the documentation still use Project Reunion when referring to an existing asset or a specified earlier release.

Version 0.8.12

This is a servicing release of the Windows App SDK that includes critical bug fixes for the 0.8.0 release.

Note

For C# developers, one of the following .NET SDK versions is required: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (or later). To update your .NET SDK version, visit .NET Downloads or update to the latest version of Visual Studio. Without the required .NET SDK version, when updating your NuGet package you will see an error like: "This version of WindowsAppSDK requires WinRT.Runtime.dll version 1.6 or greater.".

Bug fixes (0.8.12)

  • Fixed issue where apps with SwapChainPanel or WebView2 would unpredictably crash due to an access violation.

Version 0.8.11

This is a servicing release of the Windows App SDK that includes critical bug fixes for the 0.8.0 release.

Note

For C# developers, one of the following .NET SDK versions is required: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (or later). To update your .NET SDK version, visit .NET Downloads or update to the latest version of Visual Studio. Without the required .NET SDK version, when updating your NuGet package you will see an error like: "This version of WindowsAppSDK requires WinRT.Runtime.dll version 1.6 or greater.".

Bug fixes (0.8.11)

  • Fixed regression causing the lost focus event to fire when selecting text using mouse.

Version 0.8.10

This is a servicing release of the Windows App SDK that includes critical bug fixes for the 0.8.0 release.

Note

For C# developers, one of the following .NET SDK versions is required: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (or later). To update your .NET SDK version, visit .NET Downloads or update to the latest version of Visual Studio. Without the required .NET SDK version, when updating your NuGet package you will see an error like: "This version of WindowsAppSDK requires WinRT.Runtime.dll version 1.6 or greater.".

Bug fixes (0.8.10)

  • Fixed issues causing apps to sometimes crash during a drag and drop operation.

Note

Windows App SDK 0.8.9 was not released. The version released directly after 0.8.8 is 0.8.10.

Version 0.8.8

This is a servicing release of the Windows App SDK that includes critical bug fixes for the 0.8.0 release.

Note

For C# developers, one of the following .NET SDK versions (or later) is required: 6.0.202, 6.0.104, 5.0.407, 5.0.213. To update your .NET SDK version, visit .NET Downloads or update to the latest version of Visual Studio. Without the required .NET SDK version, when updating your NuGet package you will see an error like: "This version of WindowsAppSDK requires WinRT.Runtime.dll version 1.6 or greater.".

Bug fixes (0.8.8)

  • Fixed touch input issues in TextBox regarding soft keyboard and general interaction. These issues also affected keyboard shortcuts. For more information, see issue 6291 on GitHub.
  • Fixed issue where an app window would sometimes show as inactive when active.
  • Fixed performance issue caused by UIA (UI Automation) running in external processes.
  • Fixed app stability issue with pen input.
  • Fixed issue where the render of png icons in a Menu are dramatically delayed because of UIA.

Version 0.8.7

This is a servicing release of the Windows App SDK that includes several performance updates for C#/.NET applications. To update to this version, you'll need to reference the latest Windows SDK package version. To do that, add the property <WindowsSdkPackageVersion>10.0.<sdk_version>.24</WindowsSdkPackageVersion> to your .csproj file with the SDK version your app is targeting from the TargetFramework property. For example:

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.19041.24</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

This version of the Windows SDK projection will be available in an upcoming .NET 6 servicing release. After that .NET SDK update is available, you should remove the <WindowsSdkPackageVersion> property from your project file.

If you don't set this property, then you'll see an error like: "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.6 or greater."

Version 0.8.6

This is a servicing release of the Windows App SDK that includes several performance improvements for C#/.NET applications for the 0.8.0 release.

To update to this version of Windows App SDK, you will need to have the latest .NET SDK December update installed (see Download .NET and .NET 5 will reach End of Support on May 10, 2022). If you don't have the minimum required version of the .NET SDK installed, then you'll see an error like "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.4 or greater."

Bug Fixes (0.8.6)

For a detailed list of the performance improvements, see the C#/WinRT 1.4.1 release notes.

Version 0.8.5

This is a servicing release of the Windows App SDK that includes more critical bug fixes for the 0.8.0 release.

Bug fixes (0.8.5)

  • Fixed issue that was causing WinUI apps using pointer input to crash.
  • Fixed issue causing the title bar buttons (min, max, close) to not have rounded corners on Windows 11.
  • Fixed issue causing the resizing layout options to not appear when hovering over maximize/restore button on Windows 11.
  • Fixed issue causing a crashing exception where creating a PointCollection object. For more information, see issue 971 on Github.

The limitations and known issues for version 0.8 also apply to version 0.8.5, unless marked otherwise in the section below.

Version 0.8.4

This is a servicing release of the Windows App SDK that includes more critical bug fixes for the 0.8.0 release.

Bug fixes (0.8.4)

  • Fixes for custom title bars so that ContentDialog doesn't cover it up, and the title bar buttons are rounded.
  • Fix for a crash in image processing when the display scale is changed.
  • Fixes clipping bugs where UI disappear or clipped incorrectly

The limitations and known issues for version 0.8 also apply to version 0.8.4, unless marked otherwise in the section below.

Version 0.8.3

This is a servicing release of the Windows App SDK that includes more critical bug fixes for the 0.8.0 release.

Bug fixes (0.8.3)

Keyboard focus was being lost when a window was minimized and then restored, requiring a mouse click to restore focus.

The limitations and known issues for version 0.8 also apply to version 0.8.3, unless marked otherwise in the section below.

Version 0.8.2

This is a servicing release of the Windows App SDK that includes more critical bug fixes for the 0.8.0 release.

Bug fixes (0.8.2)

  • Windows App SDK and WinUI 3 are now supported in Visual Studio 2022 Preview 2 and later.
  • For .NET apps, you may receive the following error when passing in an array of enums: Object contains non-primitive or non-blittable data.
  • Writing using the HandWriting Panel inside a textbox causes a crash
  • Icons/images always load at their 100% scale value rather than based on the monitor scale value
  • Garbage collection of EventSource<T> causes subsequent failure to unsubscribe handlers (see GitHub issue for more details)
  • Security fix – see CVE-2021-34533 for more details.
  • SwapChainPanel.CompositionScaleChanged sometimes returning incorrect CompositionScale values after changing display scale

The limitations and known issues for version 0.8 also apply to version 0.8.2, unless marked otherwise in the section below.

Version 0.8.1

This is a servicing release of the Windows App SDK that includes a few critical bug fixes for the 0.8.0 release.

Bug fixes (0.8.1)

  • Windows App SDK cannot run on the latest Windows Insider build
  • Crash in EditableComboBox when entering a value that does not appear in dropdown
  • WebView2 doesn't allow user to tab out once focused has been received
  • Fully qualify Windows.Foundation.Metadata.DefaultOverload namespace in WinUI generated code to avoid namespace ambiguity
  • Security fix – see CVE-2021-34489 for more details.

The limitations and known issues for version 0.8 also apply to version 0.8.1, unless marked otherwise in the section below.

Version 0.8.0 Stable

New features and updates

This release supports all stable channel features.

WinUI 3:

This release includes many bug fixes and improved stabilization across WinUI 3. These are all of the new changes in WinUI 3 since the release of WinUI 3 - Project Reunion 0.5:

  • The Pivot control has been added back in and can now be used in any WinUI 3 app.

  • All bug fixes from Project Reunion v0.5.5, v0.5.6, and v0.5.7 are included with this release.

  • New bug fixes, including:

    • Mouse right-click in TextBox crashes the application
    • NavigationView causes crash in UWP, Reunion 0.5 Preview
    • ProgressBar doesn't show difference between Paused and Error option
    • Crash in RichEditBox when copying/pasting/changing text style
    • Window caption buttons are misplaced when SetTitleBar is not set or null

    For the full list of bugs addressed in this release, see our GitHub repo.

  • The ColorHelper.ToDisplayName API is no longer available.

  • The following types have been removed:

    • Microsoft.Graphics.IGeometrySource2D
    • Microsoft.Graphics.IGeometrySource2DInterop

    Use Windows.Graphics.IGeometrySource2D and Windows.Graphics.IGeometrySource2DInterop instead.

  • All types in the Microsoft.System namespace have been moved to the Microsoft.UI.Dispatching namespace, including the DispatcherQueue class.

  • The AcrylicBrush.BackgroundSource property has been removed, since HostBackdrop is not supported as a BackgroundSource in WinUI 3.

For more information on WinUI, see WinUI.

To see WinUI 3 controls and features in action, you can clone and build the WinUI 3 Gallery app from GitHub, or download the app from the Microsoft Store.

To get started developing with WinUI, check out the following articles:

DWriteCore:

This release of DWriteCore includes the following new and updated features. DWriteCore is introduced and described in the DWriteCore overview.

Note

DWriteCoreCreateFactory is functionally the same as the DWriteCreateFactory function exported by the system version of DirectWrite. The DWriteCore function has a different name to avoid ambiguity in the event that you link both DWriteCore.lib and DWrite.lib.

For DWriteCore and DirectWrite API reference, see DWriteCore API Reference and DirectWrite API Reference.

MRTCore:

  • The Build Action for resources is automatically set when you add the resource to your project, reducing the need for manual project configuration.

Limitations

  • This release is not currently supported on the Dev Channel of the Windows Insider Program. This is fixed in version 0.8.1.

  • Desktop apps (C# or C++ desktop): This release is supported for use only in desktop apps (C++ or C#) that are packaged using MSIX. To use the Windows App SDK in unpackaged desktop apps, you must use the experimental release channel.

Important

If you're working on a UWP app, then refer to Migrate from UWP to the Windows App SDK.

Known issues

  • WinUI 3 tooling such as Live Visual Tree, Live Property Explorer, and Hot Reload in version 0.8 and later requires Visual Studio 2019 16.11 Preview 3 and later.

  • Apps currently using WinUI 3 and the Windows App SDK 0.8 cannot use class libraries that use Project Reunion 0.5. Update the class libraries to use the Windows App SDK 0.8.

  • .NET apps must target build 18362 or later: Your TFM must be set to net6.0-windows10.0.18362 or later, and your packaging project's must be set to 18362 or later. For more info, see GitHub issue #921.

  • You may encounter a crash when switching frequently between light and dark mode.

  • For .NET apps, you may receive the following error when passing in an array of enums: Object contains non-primitive or non-blittable data. This is fixed in version 0.8.2.

  • For .NET apps, there is currently no way to opt out of an image getting indexed as an app resource using the Visual Studio UI. To work around this, add a Directory.Build.targets (see Customize your build - Visual Studio for instructions) to the project and remove the image(s) as follows:

    • To remove specific images (note that the relative path is needed):

      <Project>
      <ItemGroup>
          <Content Remove="..\Bitmap1.bmp" />
      </ItemGroup>
      </Project>
      
      • To remove images based on metadata:
      <Project>
      <ItemGroup>
          <Content Remove="@(None->WithMetadataValue('Pack','true'))" />
      </ItemGroup>
      </Project>
      

      A fix for this issue is planned for an upcoming release - at that point, the above workarounds will no longer be needed.