Bump minimum MSBuild version to 18.7#55230
Open
JanProvaznik wants to merge 1 commit into
Open
Conversation
The SDK's .NET Framework tasks build against MicrosoftBuildMinimumVersion (the lagging minimum MSBuild that must load in older VS), and src/Layout/redist/minimumMSBuildVersion gates SDK load at runtime. Bump both from 18.6 to 18.7 to align with the MSBuild/Roslyn 18.7 baseline (dotnet/roslyn#84343), so SDK tasks relying on the multithreadable task types build against and require 18.7. - MicrosoftBuildMinimumVersion: 18.6.0-preview-26208-110 -> 18.7.1 (latest shipped 18.7 on the configured feeds) - MinimumVSVersion: 18.6 -> 18.7 - src/Layout/redist/minimumMSBuildVersion: 18.6.0 -> 18.7.0 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR raises the .NET SDK’s minimum supported MSBuild baseline from 18.6 to 18.7, aligning the SDK’s .NET Framework task build-time MSBuild package references and the runtime MSBuild version gate used by the SDK resolver.
Changes:
- Update
MicrosoftBuildMinimumVersionto18.7.1andMinimumVSVersionto18.7ineng/Versions.props. - Update the runtime MSBuild gate in
src/Layout/redist/minimumMSBuildVersionfrom18.6.0to18.7.0.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| eng/Versions.props | Bumps the minimum MSBuild package version (used for .NET Framework-targeted builds) and the minimum VS version used by installer UI messaging. |
| src/Layout/redist/minimumMSBuildVersion | Raises the minimum MSBuild version that can load the SDK (resolver/runtime gate). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps the SDK's minimum MSBuild version from 18.6 to 18.7.
VS stable is 18.7 so it should be ok
Context
This is the SDK-side counterpart to the MSBuild/Roslyn 18.7 work (dotnet/roslyn#84343). The SDK maintains two MSBuild version channels:
MicrosoftBuildVersion— the MSBuild that the SDK redistributes, darc-flowed from the VMR (currently 18.9-preview). Unchanged.MicrosoftBuildMinimumVersion— the lagging minimum that the SDK's .NET Framework tasks build against, so they still load in a slightly-older Visual Studio / MSBuild.exe. This is what moves here.The SDK's own .NET Framework tasks depend on the multithreadable task types (
IMultiThreadableTask,TaskEnvironment,MSBuildMultiThreadableTaskAttribute,AbsolutePath) introduced in the MSBuild 18.x line (see the polyfill-removal change that first raised this minimum to 18.6, dotnet/msbuild#13695). Aligning the minimum to 18.7 keeps the SDK's baseline in lockstep with the 18.7 MSBuild/Roslyn baseline.Changes
eng/Versions.propsMicrosoftBuildMinimumVersion:18.6.0-preview-26208-110→18.7.1(the latest shipped 18.7 MSBuild available on the configured feeds — same package the Roslyn 18.7 PR uses).MinimumVSVersion:18.6→18.7(installer-UI minimum, kept in lockstep with the MSBuild minimum).src/Layout/redist/minimumMSBuildVersion:18.6.0→18.7.0(runtime gate that prevents an older MSBuild from loading the SDK; the clean.0per the "minimum should be .0" convention).The
.NETFramework-targetedMicrosoft.Build.*package versions inDirectory.Packages.propsare driven byMicrosoftBuildMinimumVersion, so no per-project edits are needed — the two-preview→18.7.1bump flows through automatically.Validation (local, bootstrapped SDK)
Microsoft.Build 18.7.1resolves cleanly for the net472 task projects — the SDK's .NET 11System.*band already satisfies 18.7.1's dependency closure (noSystem.*downgrade needed).Microsoft.NET.Build.TasksandMicrosoft.NET.Build.Extensions.Taskson bothnet472(built against the 18.7.1 minimum) andnet11.0.Notes for reviewers
MinimumVSVersionbump is included to keep the VS-installer minimum consistent with the MSBuild minimum (both were 18.6). Flagging in case the VS minimum should move on a different cadence.18.7.1pin vs. a preview build.