dotnet / dotnet/arcade

Remove the temporary NetCoreSdkRoot drive-casing MSB4216 workaround once the msbuild fix reaches the supported VS + SDK floor (#17039)

Open
#17,052 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
729
Forks
397
Avg merge
3d 15m
Merged PRs (30d)
149

Description

Tracking issue to delete the temporary workaround added in #17039 (builds on #17002).

It compensates for the case-sensitive .NET task host handshake salt. The permanent fix is bilateral and ships outside Arcade:
- `dotnet/msbuild#14026` — root cause (OPEN)
- `dotnet/msbuild#14027` — permanent child-side salt widening (OPEN)

**Remove when:** the minimum VS and minimum .NET SDK versions used across Arcade-consuming CI both carry the salt normalization (not merely when the msbuild issues close).

**Acceptance criteria**
- Delete the `NormalizeNetCoreSdkRootCasing` target, the `NormalizeSdkRootDriveCasing` task, and the two knobs from `Workarounds.targets`.
- Restore the bare `` root (drop `InitialTargets="NormalizeNetCoreSdkRootCasing"`).
- Confirm `MSB4216` does not recur on the affected ADO/CodeQL agents (e.g. the `microsoft-testfx` CodeQL pipeline used to validate #17039).
- Close/supersede #17051 if still open.

**Trigger / watch:** dotnet/msbuild#14026, dotnet/msbuild#14027, and their availability in shipped VS + .NET SDK.

Contributor guide

Open the contributing guide

Research direction

Start by checking dotnet/msbuild#14026 and #14027 and confirming the supported VS and .NET SDK versions used by Arcade-consuming CI include the shipped fix. Then inspect Workarounds.targets and the files defining the workaround, remove the named target, task, knobs, and InitialTargets setting, and validate the affected ADO/CodeQL pipeline, including microsoft-testfx, without an MSB4216 recurrence.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, ci-cd
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.