Skip to content

Modernize stable samples for Windows App SDK 2.4 - #664

Merged
Scott Jones (Scottj1s) merged 7 commits into
mainfrom
copilot/modernize-sample-targets
Aug 31, 2026
Merged

Scott Jones (Scottj1s) merged 7 commits into
mainfrom
copilot/modernize-sample-targets

Conversation

@Scottj1s

@Scottj1s Scott Jones (Scottj1s) commented Aug 26, 2026

Copy link
Copy Markdown
Member

Summary

  • move stable managed samples from .NET 6 to .NET 8 and use current win-* runtime identifiers
  • update stable samples to Microsoft.WindowsAppSDK 2.4.0, Microsoft.Windows.SDK.BuildTools 10.0.26100.4654, and current compatible dependencies
  • materialize the Windows App SDK 2.4 native component dependency graph in packages.config projects
  • default explicit C++ projects to the VS 2026 v145 toolset while retaining VS 2022 v143 fallback
  • remove obsolete Windows SDK pins and stale ReadyToRun publish overrides
  • resolve WindowsML ABI metadata through the normalized installed Windows SDK version
  • remove experimental BackgroundTask and prerelease Islands samples from main; they remain on release/experimental

Validation

  • WindowsAppSDK 2.4.0 closure hydration and anonymous validation: run 387413 succeeded
  • full topic-branch hydration and anonymous restore: run 387428 succeeded
  • all 79 Samples solutions build locally with Release/x64; WindowsML also passes Release/ARM64
  • clean isolated SelfContainedDeployment restore/build passes with aggregator properties
  • aggregator build 155935600 checked out commit d2bcd2ff; SamplesCompatTest and BuildPerformanceTest completed without errors

Port the proven release/experimental framework and package updates to main while preserving samples that exercise version-pinned experimental APIs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
Keep experimental and preview sample implementations on the dedicated release/experimental branch so main contains only stable Windows App SDK surfaces.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
Remove per-profile ReadyToRun opt-ins that are incompatible with the .NET 8 sample restore and cause NETSDK1094 in aggregator compatibility builds.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
Add the Windows App SDK 2.4 component closure to native packages.config projects and their generated MSBuild imports. Default explicit C++ toolsets to v145 while retaining a v143 fallback for Visual Studio 2022.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
Use AbiWinRTSDKReferences with the resolved Windows SDK directory and target version instead of a drive-specific Windows.winmd path.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
Remove stale sample ReadyToRun profile overrides so pipeline restore and publish properties remain consistent. Resolve WindowsML ABI metadata through the normalized Windows SDK target version used by MSBuild.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 26f0def2-a93d-4d41-a610-c6c6fa760d7e
@Scottj1s
Scott Jones (Scottj1s) marked this pull request as ready for review August 27, 2026 11:47
@Scottj1s
Scott Jones (Scottj1s) merged commit 67b3dce into main Aug 31, 2026
4 checks passed
@Scottj1s
Scott Jones (Scottj1s) deleted the copilot/modernize-sample-targets branch August 31, 2026 18:09
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.

3 participants