Skip to content

[main] Bump Microsoft.Build.Framework and Microsoft.Build.Utilities.Core - #11195

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/multi-fd0281374f
Closed

[main] Bump Microsoft.Build.Framework and Microsoft.Build.Utilities.Core#11195
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/multi-fd0281374f

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 11, 2026

Copy link
Copy Markdown
Contributor

Updated Microsoft.Build.Framework from 17.11.48 to 18.10.1.

Release notes

Sourced from Microsoft.Build.Framework's releases.

18.10.1

What's Changed

18.9.6

What's Changed

18.8.2

What's Changed

18.7.1

What's Changed

18.6.3

What's Changed

18.5.4

What's Changed

18.4.0

What's Changed

18.3.3

What's Changed

18.0.2

What's Changed

17.14.28

What's Changed

17.14.8

What's Changed

Full Changelog: dotnet/msbuild@v17.14.5...v17.14.8

17.14.5

What's Changed

Description has been truncated

Bumps Microsoft.Build.Framework from 17.11.48 to 18.10.1
Bumps Microsoft.Build.Utilities.Core from 17.11.48 to 18.10.1

---
updated-dependencies:
- dependency-name: Microsoft.Build.Framework
  dependency-version: 18.10.1
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: Microsoft.Build.Utilities.Core
  dependency-version: 18.10.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the dependencies Updates to dependency manifests. label Sep 11, 2026
Copilot AI balanced review requested due to automatic review settings September 11, 2026 06:41
@dependabot dependabot Bot added the dependencies Updates to dependency manifests. label Sep 11, 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.

🟢 Approval recommended

The centralized version update is valid, consistent, and introduces no identified issues.

Pull request overview

Updates the MSBuild dependencies used by build integration and its tests.

Changes:

  • Bumps Microsoft.Build.Framework and Microsoft.Build.Utilities.Core from 17.11.48 to 18.10.1 in lockstep.
File summaries
File Description
Directory.Packages.props Updates the shared MSBuild package version.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Balanced

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Copilot AI commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

One or more custom setup steps configured for this repository failed during this Copilot code review run:

Build the repository

Setup steps run before each review. If the review above is missing context, or no review was posted at all, the failing step above may be the cause. See the workflow run for failure details, fix your setup steps configuration, and re-request a review.

Note

You can configure setup steps for Copilot code review separately from Copilot cloud agent with a copilot-code-review.yml file. Read the docs for details.

@github-actions

Copy link
Copy Markdown
Contributor

Final test-triage resolution — Azure Pipelines build 1592198

Analysis: final (completed aggregate build). Triggering check: microsoft.testfx.

Root cause is a build failure, not a test-product defect. This dependabot PR bumps Microsoft.Build.Framework and Microsoft.Build.Utilities.Core to 18.10.1. That version emits (as build errors) "doesn't support net8.0/net9.0 and has not been tested with it" for the net8.0/net9.0 legs, so the build fails before packing completes.

The 3 failing tests (PackedMSTestTestAdapter_ContainsRequiredWindowsApplicationModelAssets, PackedMSTestTestFramework_ContainsRequiredWindowsApplicationModelAssets, PackedMSTestTestAdapter_UwpPropsRegisterMSTestBuilderHook, all in WindowsApplicationModelPackageTests) are a downstream consequence: AcceptanceTestBase's static constructor throws InvalidOperationException: Was expecting to find a single NuGet package named 'MSTest.TestFramework.' ... but found 0 because the earlier build/compile error prevented the Shipping package from being produced at all — not because of any defect in the tests or in MSTest's Windows App Model packaging.

Confidence: high. History across the last 12 completed builds (both succeeded and failed for unrelated reasons) shows all three tests passing whenever the build actually completes; this is the first and only occurrence of this signature, tied specifically to this PR's package bump.

No issue is warranted: this is a one-off build-configuration failure scoped to this pull request's own dependency change, not a recurring or flaky test defect. Recommended next step: either pin/exclude the incompatible 18.10.1 version for the net8.0/net9.0 legs, or set SuppressTfmSupportBuildWarnings if intentionally supporting those TFMs, then re-run the pipeline.

🤖 Automated content by GitHub Copilot. Generated by the Pipeline Test Triage workflow. · auto · 61.7 AIC · ⌖ 2.44 AIC · ⊞ 8.9K

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Build Failure Analysis

Summary — Bumping MicrosoftBuildVersion from 17.11.48 to 18.10.1 breaks the Linux Release build: the newer Microsoft.Build.Framework / Microsoft.Build.Utilities.Core / Microsoft.NET.StringTools packages declare themselves unsupported on net8.0/net9.0 (their buildTransitive targets recommend net11.0), and those diagnostics are promoted to build errors by the -TreatWarningsAsErrors flag used in CI (eng/common/cibuild.sh/p:TreatWarningsAsErrors=true). A second, likely-related compile error (CS0419, ambiguous UnsupportedOSPlatformAttribute reference) also appears only in the leg that references these packages.

Root cause 1: New Microsoft.Build.* packages declare net8.0/net9.0 unsupported

Directory.Packages.props line 21 raises MicrosoftBuildVersion to 18.10.1. That version's buildTransitive/netcoreapp2.0/*.targets for Microsoft.NET.StringTools, Microsoft.Build.Framework, and Microsoft.Build.Utilities.Core each run a NETStandardCompatError_..._net11_0 target that emits: "...doesn't support net8.0 and has not been tested with it. Consider upgrading your TargetFramework to net11.0 or later..." (and the same for net9.0). Microsoft.Testing.Platform.MSBuild.csproj and its unit-test project target SupportedNetFrameworks (net8.0;net9.0) plus netstandard2.0, so both frameworks hit this on every affected project. Because the Linux Release leg builds with -TreatWarningsAsErrors, these warnings fail the build (Errors: 15 per binlog_overview).

Affected files / errors

  • Directory.Packages.props:21 — the version bump that introduces the incompatibility.
  • src/Platform/Microsoft.Testing.Platform.MSBuild/Microsoft.Testing.Platform.MSBuild.csproj (net8.0 and net9.0 legs) — 6 NETStandardCompatError_* errors from Microsoft.NET.StringTools, Microsoft.Build.Framework, Microsoft.Build.Utilities.Core.
  • test/UnitTests/Microsoft.Testing.Platform.MSBuild.UnitTests/Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net8.0 and net9.0) — same 6 errors.

Assessment — this is not a simple, mechanical fix. Silencing it with SuppressTfmSupportBuildWarnings would hide a genuine "not tested with this TFM" signal from the MSBuild team rather than fix an incompatibility, and I have no network access to confirm whether 18.10.1 actually works correctly at runtime on net8.0/net9.0 despite the warning, or whether an intermediate MicrosoftBuildVersion exists that still supports those TFMs. A maintainer should decide between: (a) holding this bump until a version that supports net8.0/net9.0 is available, or (b) deliberately opting in to the unsupported-but-likely-fine configuration via SuppressTfmSupportBuildWarnings on the two affected projects, after confirming runtime compatibility.

Root cause 2: CS0419 ambiguous UnsupportedOSPlatformAttribute reference (same leg, likely triggered by the same bump)

src/Platform/Microsoft.Testing.Platform/Helpers/System/ITask.cs:27 — the XML-doc <see cref="UnsupportedOSPlatformAttribute"/> inside the RunLongRunning remarks now resolves ambiguously: "Assuming 'System.Runtime.Versioning.UnsupportedOSPlatformAttribute', but could have also matched other overloads including 'System.Runtime.Versioning.UnsupportedOSPlatformAttribute'" (both candidates report the same fully-qualified name, which points at a duplicate/forwarded type rather than a genuine two-type collision). This only surfaces for Microsoft.Testing.Platform.MSBuild.csproj in this build, so it is plausibly introduced by the newer Microsoft.Build.Framework/Microsoft.Build.Utilities.Core assemblies now shipping their own compatibility shim for this BCL attribute (used for down-level TFM support), which collides with the repo's own src/Polyfills/PlatformAttributes.cs embedded type-forwarder for the same attribute when both are visible to the compiler.

I can't fully confirm the second forwarding source without deeper binlog/assembly-reference inspection, so I'm flagging it rather than proposing a code change with high confidence. A safe, low-risk workaround if this needs a code fix independent of the package-version decision above would be to drop the cref and use plain text (e.g. <c>UnsupportedOSPlatformAttribute</c>) in the remarks, since the ambiguity is only in documentation resolution, not in the actual attribute usage on RunLongRunning.

Affected files / errors


Build overview
  • Build: FAILED, duration 338.8s
  • MSBuild: 18.11.0-1.26425.121+e20a5af9c
  • Projects: 51, Errors: 15, Warnings: 1 (viewer-internal "unknown event type", not build related)
  • Failed projects: Build.proj, NonWindowsTests.slnf, Microsoft.Testing.Platform.MSBuild.csproj, Microsoft.Testing.Platform.MSBuild.UnitTests.csproj
All MSBuild errors (15)
Code Project File:Line Message
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net8.0) Microsoft.NET.StringTools.targets:4 doesn't support net8.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net8.0) Microsoft.Build.Framework.targets:4 doesn't support net8.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net8.0) Microsoft.Build.Utilities.Core.targets:4 doesn't support net8.0, consider net11.0+
CS0419 Microsoft.Testing.Platform.MSBuild.csproj (net8.0) ITask.cs:27 Ambiguous reference in cref attribute: UnsupportedOSPlatformAttribute
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net9.0) Microsoft.NET.StringTools.targets:4 doesn't support net9.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net9.0) Microsoft.Build.Framework.targets:4 doesn't support net9.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.csproj (net9.0) Microsoft.Build.Utilities.Core.targets:4 doesn't support net9.0, consider net11.0+
CS0419 Microsoft.Testing.Platform.MSBuild.csproj (net9.0) ITask.cs:27 Ambiguous reference in cref attribute: UnsupportedOSPlatformAttribute
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net8.0) Microsoft.NET.StringTools.targets:4 doesn't support net8.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net8.0) Microsoft.Build.Framework.targets:4 doesn't support net8.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net8.0) Microsoft.Build.Utilities.Core.targets:4 doesn't support net8.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net9.0) Microsoft.NET.StringTools.targets:4 doesn't support net9.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net9.0) Microsoft.Build.Framework.targets:4 doesn't support net9.0, consider net11.0+
NETStandardCompatError Microsoft.Testing.Platform.MSBuild.UnitTests.csproj (net9.0) Microsoft.Build.Utilities.Core.targets:4 doesn't support net9.0, consider net11.0+
(build) Build.proj Build failed.

🤖 Generated by the Build Failure Analysis workflow using (a href="(dev.azure.com/redacted) · commit e4b0c6d

🤖 Automated content by GitHub Copilot. Generated by the Build Failure Analysis workflow. · auto · 295 AIC · ⌖ 2.17 AIC · ⊞ 11.4K · [◷]( · )

@dependabot @github

dependabot Bot commented on behalf of github Sep 11, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/nuget/multi-fd0281374f branch September 11, 2026 13:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Updates to dependency manifests.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants