Skip to content

Use VS2026 to build on Windows + Source updates from dotnet/wpf#4279

Merged
ViktorHofer merged 2 commits intomainfrom
akoeplinger-patch-1
Jan 21, 2026
Merged

Use VS2026 to build on Windows + Source updates from dotnet/wpf#4279
ViktorHofer merged 2 commits intomainfrom
akoeplinger-patch-1

Conversation

@akoeplinger
Copy link
Member

No description provided.

@ViktorHofer
Copy link
Member

wpf probably needs to get merged into this PR

@akoeplinger
Copy link
Member Author

akoeplinger commented Jan 20, 2026

hmm yeah but I'm a bit confused how aspnetcore built given we also set <PlatformToolsetVersion>v143</PlatformToolsetVersion> there

@dotnet-policy-service dotnet-policy-service bot requested a review from a team January 21, 2026 09:28
@ViktorHofer
Copy link
Member

@akoeplinger looks like Cpp props and targets already got improved to try the default version when the requested version isn't found:

image image

@akoeplinger
Copy link
Member Author

yes but why does this work for aspnetcore but not wpf?

@ViktorHofer
Copy link
Member

ViktorHofer commented Jan 21, 2026

@akoeplinger
Copy link
Member Author

I don't think so as that's just for redisting, but as long as it works with the new VS ¯\(ツ)

@ViktorHofer
Copy link
Member

The passing aspnetcore build:

image

The failing wpf build:

image

@ViktorHofer
Copy link
Member

Ok works for aspnetcore because they explicitly set PlatformToolsetVersion

@ViktorHofer ViktorHofer marked this pull request as ready for review January 21, 2026 11:38
@ViktorHofer ViktorHofer requested review from a team as code owners January 21, 2026 11:39
Copilot AI review requested due to automatic review settings January 21, 2026 11:39
@ViktorHofer ViktorHofer changed the title Use VS2026 to build on Windows Use VS2026 to build on Windows + Source updates from dotnet/wpf Jan 21, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This pull request updates the build infrastructure to use Visual Studio 2026 preview and associated tooling. It includes updates to Visual C++ toolsets, .NET SDK versions, Azure DevOps pipeline images, and various dependency packages to align with the VS2026 build environment.

Changes:

  • Updated Visual C++ platform toolset from v143 (VS2022) to v145 (VS2026) in build configurations
  • Upgraded .NET SDK versions from 10.0.x to 11.0.x across global.json and dependency manifests
  • Updated Azure Pipelines to use VS2026 preview images (windows.vs2026preview.scout.amd64)
  • Added improvements to PowerShell scripts including -UseBasicParsing flag for web requests and better error handling
  • Fixed test accessor syntax by removing parentheses and corrected null-conditional operator placement
  • Updated FreeBSD and MSBuild versions to latest releases

Reviewed changes

Copilot reviewed 23 out of 24 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/wpf/src/Microsoft.DotNet.Wpf/tests/UnitTests/WindowsBase.Tests/System/Windows/SplashScreenTests.cs Fixed TestAccessor call syntax by removing unnecessary parentheses
src/wpf/src/Microsoft.DotNet.Wpf/tests/UnitTests/System.Printing.Tests/System/Printing/IndexedProperties/PrintStringPropertyTests.cs Fixed TestAccessor call syntax across multiple test methods
src/wpf/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/TextAdaptor.cs Corrected null-conditional operator placement for TextSelection
src/wpf/src/Microsoft.DotNet.Wpf/redist/VCRuntime/VCRuntime.vcxproj Updated VC runtime folder references from VC143 to VC145
src/wpf/global.json Upgraded SDK and tools versions to .NET 11.0 preview
src/wpf/eng/common/tools.sh Removed DOTNET_MULTILEVEL_LOOKUP environment variable
src/wpf/eng/common/tools.ps1 Added UseBasicParsing to web requests, updated MSBuild version to 18.0.0, improved error handling
src/wpf/eng/common/sdk-task.ps1 Updated default xcopy-msbuild version to 18.0.0
src/wpf/eng/common/post-build/nuget-verification.ps1 Added UseBasicParsing flag to web request
src/wpf/eng/common/native/install-dependencies.sh Fixed shell script syntax error in conditional
src/wpf/eng/common/internal-feed-operations.ps1 Added UseBasicParsing flag to web request
src/wpf/eng/common/cross/build-rootfs.sh Updated FreeBSD versions to 13.5 and 14.3 releases
src/wpf/eng/common/core-templates/steps/source-index-stage1-publish.yml Fixed parameter casing for sourceIndexPackageSource
src/wpf/eng/common/core-templates/steps/install-microbuild-impl.yml Fixed boolean comparison from string to boolean
src/wpf/eng/common/core-templates/post-build/post-build.yml Updated pipeline images to windows.vs2026preview.scout.amd64
src/wpf/eng/common/core-templates/job/source-index-stage1.yml Added default condition for main branch, updated pipeline images
src/wpf/eng/common/core-templates/job/job.yml Added AllowPtrToDetectTestRunRetryFiles variable
src/wpf/eng/WpfArcadeSdk/tools/Wpf.Cpp.props Updated platform toolset to v145 for VS2026
src/wpf/eng/Version.Details.xml Updated all dependency versions to 11.0 preview builds
src/wpf/eng/Version.Details.props Updated package versions to match Version.Details.xml
src/wpf/azure-pipelines.yml Updated pipeline image to windows.vs2026preview.scout.amd64
src/wpf/azure-pipelines-pr.yml Updated pipeline images for both public and internal pools
src/source-manifest.json Updated barId and commitSha references
eng/pipelines/templates/variables/vmr-build.yml Updated Windows pool images to VS2026 preview with TODO comments

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ViktorHofer
Copy link
Member

The previous run was already successful (the iOS job timed out). I don't know why AzDO requeued the build but that's unnecessary. Merging.

@ViktorHofer ViktorHofer merged commit ad09972 into main Jan 21, 2026
7 of 17 checks passed
@ViktorHofer ViktorHofer deleted the akoeplinger-patch-1 branch January 21, 2026 11:57
@akoeplinger
Copy link
Member Author

Ok works for aspnetcore because they explicitly set PlatformToolsetVersion

Interesting. aspnetcore sets both PlatformToolset and PlatformToolsetVersion: https://github.com/dotnet/aspnetcore/blob/fda5da455a76554283e08c35365fcfa66978ff28/eng/targets/Cpp.Common.props#L23-L24

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