Skip to content

Remove leftover artifacts from the C++ cswinrt migration#2479

Merged
Sergio0694 merged 2 commits into
staging/3.0from
user/sergiopedri/remove-cswinrt-vcxproj-refs
Jul 2, 2026
Merged

Remove leftover artifacts from the C++ cswinrt migration#2479
Sergio0694 merged 2 commits into
staging/3.0from
user/sergiopedri/remove-cswinrt-vcxproj-refs

Conversation

@Sergio0694

@Sergio0694 Sergio0694 commented Jul 1, 2026

Copy link
Copy Markdown
Member

Summary

Remove dead build artifacts left behind by the migration of the native C++ cswinrt.exe projection generator to C#: three stale ProjectReference entries pointing at the deleted cswinrt.vcxproj, and an orphaned CSWinMDComponent.vcxproj.filters file.

Motivation

Two separate cleanups from the same C++ → C# migration effort:

1. Stale cswinrt.vcxproj project references. The native C++ projection generator (src/cswinrt/cswinrt.vcxproj, producing cswinrt.exe) was ported to C# and deleted in #2440. A few authoring test projects still referenced that .vcxproj purely as a build-ordering/tool dependency, so the references were left dangling.

These didn't break the build because a ProjectReference to a missing project file is not fatal by default. MSBuild's _SplitProjectReferencesByFileExistence target sorts references into _MSBuildProjectReferenceExistent and _MSBuildProjectReferenceNonexistent based on whether the file exists on disk. For the nonexistent bucket, ResolveProjectReferences emits MSB9008 (The referenced project '...' does not exist.) and simply skips it, because the severity is downgraded to a warning unless ErrorOnMissingProjectReference is set to True (it isn't set anywhere in this repo). Since the reference was only a native build-ordering dependency and produced no assembly these projects consume, dropping it changes nothing beyond silencing the MSB9008 warning.

2. Orphaned CSWinMDComponent.vcxproj.filters. The legacy CsWinMD authoring tool and its CSWinMDComponent test were removed in #2408, which deleted the entire src/Tests/CSWinMDComponent directory. The projection generator port (#2440) then accidentally re-added just the CSWinMDComponent.vcxproj.filters file. It was the only remaining file in that directory, is not part of any solution, and is referenced by nothing.

Changes

  • src/Tests/AuthoringTest2/AuthoringTest2.csproj: remove the stale cswinrt.vcxproj project reference
  • src/Tests/AuthoringTest3/AuthoringTest3.csproj: remove the stale cswinrt.vcxproj project reference
  • src/Tests/AuthoringConsumptionTest2.AOT/AuthoringConsumptionTest2.AOT.csproj: remove the stale cswinrt.vcxproj project reference
  • src/Tests/CSWinMDComponent/CSWinMDComponent.vcxproj.filters: remove the orphaned filters file (and the now-empty directory)

The native cswinrt.exe projection generator was ported to C# and src/cswinrt/cswinrt.vcxproj was deleted (#2440), but three authoring test projects still had stale ProjectReference entries pointing at it. Remove them from AuthoringTest2, AuthoringTest3, and AuthoringConsumptionTest2.AOT.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@Sergio0694 Sergio0694 added code cleanup Code cleanup and refactoring CsWinRT 3.0 labels Jul 1, 2026
@Sergio0694
Sergio0694 requested a review from manodasanW July 1, 2026 20:37
@Sergio0694
Sergio0694 enabled auto-merge (squash) July 1, 2026 20:40
The CsWinMD tool and its CSWinMDComponent test were removed in #2408, but the projection generator port (#2440) accidentally re-added the orphaned CSWinMDComponent.vcxproj.filters file. It is the only remaining file in the directory, is not part of any solution, and is referenced by nothing. Remove it (and the now-empty directory).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@Sergio0694 Sergio0694 changed the title Remove leftover cswinrt.vcxproj project references Remove leftover artifacts from the C++ cswinrt migration Jul 1, 2026
@Sergio0694
Sergio0694 merged commit 228e89e into staging/3.0 Jul 2, 2026
11 checks passed
@Sergio0694
Sergio0694 deleted the user/sergiopedri/remove-cswinrt-vcxproj-refs branch July 2, 2026 00:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

code cleanup Code cleanup and refactoring CsWinRT 3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants