Sitelet https://github.com/unoplatform/uno/pull/24980
Skip to content

chore: Update Windows App SDK to 2.5.1 - #24980

Open
MartinZikmund wants to merge 2 commits into
masterfrom
dev/mazi/winappsdk-2.5.1
Open

MartinZikmund wants to merge 2 commits into
masterfrom
dev/mazi/winappsdk-2.5.1

Conversation

@MartinZikmund

Copy link
Copy Markdown
Member

GitHub Issue: closes #24979

PR Type:

🏗️ Build or CI related changes

What changed? 🚀

Moves Windows App SDK from 2.4.0 to the latest stable 2.5.1 (WinUI sub-package 2.3.6 → 2.3.9) and regenerates the sync generator API surface.

  • chore: Move Windows App SDK references to 2.5.1: updates Directory.Packages.props, the Uno.Sdk WinAppSdk default, the Uno.WinUI / Graphics2DSK nuspec floors (kept in lockstep with the Uno.Sdk default so NU1605 can't happen), the pinned Windows App Runtime installer in the WinUI runtime tests CI leg (aka.ms/windowsappsdk/2.5/2.5.1/..., which resolves), ResourcesExtractor, the 7.0 migration guide and the winui-runtime-tests skill table.
  • chore: Regenerate WinAppSDK 2.5.1 API stubs: the only surface delta is three new DirectXColorSpace values (RgbFullG10NoneP2020, RgbFullG22ExtNoneP709, RgbFullG22NoneP3).

2.5.1 keeps the same WebView2 (1.0.3719.77) and Windows SDK BuildTools (10.0.26100.4654) floors as 2.4.0, so nothing else needed to move.

Validation

  • Ran the sync generator with the CI recipe (build/ci/net11/_global.json, rc.1 SDK). references.txt confirms the inputs were WinUI 2.3.9, Foundation 2.3.12 and InteractiveExperiences 2.1.9. The committed stub matches the generator output exactly, even after the pre-commit formatter ran.
  • Uno.WinRT.Generic builds with 0 warnings and 0 errors.
  • The Windows heads against 2.5.1 (WinUI runtime tests) are left to CI.

PR Checklist ✅

The Uno.WinUI package floor on Microsoft.WindowsAppSDK goes up from 2.4.0 to 2.5.1, so Windows heads on 2.4.0 will float up to 2.5.1 (same 2.x runtime major).

🤖 Generated with Claude Code

https://claude.ai/code/session_01JZScrZMcBWPZ6XUJrDcmKd

MartinZikmund and others added 2 commits October 5, 2026 11:43
Moves every repo-internal head, the Uno.Sdk consumer default, the
Uno.WinUI nuspec floors and the WinUI runtime tests CI installer from
2.4.0 to the latest stable 2.5.1 (WinUI sub-package 2.3.6 -> 2.3.9).

The WebView2 and Windows SDK BuildTools floors are unchanged in 2.5.1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JZScrZMcBWPZ6XUJrDcmKd
WinAppSDK 2.5.1 adds three DirectXColorSpace values (RgbFullG10NoneP2020,
RgbFullG22ExtNoneP709, RgbFullG22NoneP3); the rest of the surface is
unchanged from 2.4.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JZScrZMcBWPZ6XUJrDcmKd
@MartinZikmund MartinZikmund self-assigned this Oct 5, 2026
Copilot AI balanced review requested due to automatic review settings October 5, 2026 09:47
@github-actions

github-actions Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Claude finished @MartinZikmund's task in 1m 0s —— View job


Claude's review of this PR

  • Gather context (PR diff, changed files)
  • Review changed files against AGENTS.md rules
  • Post inline findings (if any)
  • Post summary

Verdict: ✅ Ship as-is — no inline findings.

This is a clean, mechanical dependency bump (Windows App SDK 2.4.0 → 2.5.1) with no application logic in scope, so most of the review checklist (SOLID, async/cancellation, DependencyProperty wiring, events, allocations) doesn't apply — nothing in the diff touches behavioral C# code.

Checks performed:

  • Version consistency: Directory.Packages.props, Uno.Sdk/packages.json, ResourcesExtractor.csproj, both nuspec floors (Uno.WinUI, Uno.WinUI.Graphics2DSK), the CI runtime-installer URL, the migration doc, and the winui-runtime-tests skill table all consistently move to 2.5.1 — no stale 2.4.0 references left anywhere in .csproj/.props/.json/.nuspec/.yml outside unrelated historical files under specs/.
  • Generated stub (DirectXColorSpace.cs): the three new enum values follow the exact pre-existing per-value #if __ANDROID__ || __IOS__ || __TVOS__ || __WASM__ || __SKIA__ || __NETSTD_REFERENCE__ / #endif wrapping already used for every other member in the file — consistent with sync-generator output, not a hand-edit of generated code.
  • Conventional Commits: both commits (chore: Move Windows App SDK references to 2.5.1, chore: Regenerate WinAppSDK 2.5.1 API stubs) and the PR title follow the convention.
  • Associated issue: closes Update Windows App SDK to 2.5.1 and its WinUI API surface #24979, referenced correctly.
  • No cross-cutting concerns (security, performance, test coverage) apply to a pure version-floor bump + regenerated stub.

Nothing further required from CI other than the Windows heads validation the author already deferred to CI.
·

@github-actions github-actions Bot added area/build Categorizes an issue or PR as relevant to build infrastructure kind/documentation area/sdk Categorizes an issue or PR as relevant to the Uno.Sdk labels Oct 5, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The Graphics2DSK package does not apply the updated Windows dependency or Windows assembly to net11 consumers.

Review effort: Balanced
Findings: 1 High severity

Open (1)
What changed in this PR

Updates Windows App SDK to stable 2.5.1 and synchronizes related packaging, CI, documentation, tooling, and generated APIs.

Changes:

  • Raises Windows App SDK package and runtime versions.
  • Adds three DirectXColorSpace values.
  • Updates migration and runtime-test guidance.

Review verdict: Changes required; one packaging bug found.

File Description
src/​Uno.WinRT/​Generated/​.../​DirectXColorSpace.cs Adds generated enum values.
src/​Uno.Sdk/​packages.json Updates the SDK default.
src/​ResourcesExtractor/​ResourcesExtractor.csproj Updates the application dependency.
src/​Directory.Packages.props Updates the central package version.
doc/​articles/​migrating-to-uno-7.md Documents the new default.
build/​nuget/​Uno.WinUI.nuspec Updates Windows dependency floors.
build/​nuget/​Uno.WinUI.Graphics2DSK.nuspec Updates the net10 Windows floor.
build/​ci/​tests/​.azure-devops-tests-winappsdk.yml Installs runtime 2.5.1 in CI.
.claude/​skills/​winui-runtime-tests/​SKILL.md Updates runtime-test guidance.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.


<group targetFramework="net10.0-windows10.0.19041.0">
<dependency id="Microsoft.WindowsAppSDK" version="2.4.0" />
<dependency id="Microsoft.WindowsAppSDK" version="2.5.1" />
@unodevops

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-24980/wasm-skia-net9/index.html

@unodevops

Copy link
Copy Markdown
Contributor

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-24980/docs/index.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/build Categorizes an issue or PR as relevant to build infrastructure area/sdk Categorizes an issue or PR as relevant to the Uno.Sdk kind/documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update Windows App SDK to 2.5.1 and its WinUI API surface

3 participants