Add ARM64 msdia140.dll support to test platform packages#15689
Conversation
- Bump Microsoft.Internal.Dia to 18.7.0-preview-1-11715-406 (includes ARM64) - Add ARM64 DIA file copy in TestHost.csproj CopyDiaFiles target - Add ARM64 msdia140.dll to TestHost.nuspec package layout - Add ARM64 msdia140.dll and manifest to CLI.nuspec TestHostNetFramework The ARM64 msdia140.dll was added to the Microsoft.Internal.Dia package via VS PR #720616. Symbol resolution verified for all architectures (x86, x64, arm64) via dotnet-symbol against the Microsoft symbol server.
|
cc @nohwnd |
|
fails with: Verify-Nuget-Packages : There are 2 errors: You need to bump up the numbers in verify-nupkgs script. and ideally tell me what the added files are exactly. I would also check microsoft.testplatform package, portable package, and cli.v2, those should be all the tools packages, not sure if we ship the dlls in all. |
|
yeah looks like we have it in all the folders that I listed, |
- Add ARM64 msdia140.dll and manifest to Portable.nuspec TestHostNetFramework - Add ARM64 VsixSourceItem to V2.CLI.csproj for VSIX packaging - Update verify-nupkgs.ps1 expected file counts
|
Updated with the additional packages and verify-nupkgs counts. Here's the breakdown of what was added and where: Files added by
|
| Package | File | Change |
|---|---|---|
| TestHost.csproj | CopyDiaFiles target |
Added DiaFilesArm64 item group + copy to arm64 |
| TestHost.nuspec | lib/net8.0/arm64/ |
Added msdia140.dll |
| CLI.nuspec | contentFiles/any/net10.0/TestHostNetFramework/arm64/ |
Added msdia140.dll + .manifest |
| Portable.nuspec | tools/net8.0/TestHostNetFramework/arm64/ |
Added msdia140.dll + .manifest |
| V2.CLI.csproj | VSIX VsixSourceItem |
Added arm64\* with VSIXSubPath=arm64 |
verify-nupkgs.ps1 count updates
| Package | Before | After | Delta |
|---|---|---|---|
| TestHost | 64 | 65 | +1 (arm64 dll) |
| CLI | 483 | 485 | +2 (arm64 dll + manifest) |
| Portable | 609 | 611 | +2 (arm64 dll + manifest) |
| V2.CLI | 388 | 390 | +2 (arm64 dll + manifest) |
Verified locally: build succeeded, pack succeeded, all file counts match.
|
still missing microsoft.testplatform if I am looking correctly. https://github.com/microsoft/vstest/blob/main/src/package/Microsoft.TestPlatform/Microsoft.TestPlatform.nuspec |
Add arm64 msdia140.dll and manifest entries to all three locations in Microsoft.TestPlatform.nuspec (TestImpact/ComComponents, V1/TestImpact/ComComponents, and TestPlatform root). Update verify-nupkgs.ps1 count from 545 to 551 (+6 files). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Pushed a fix to add ARM64 msdia140.dll entries to Changes:
The |
The Microsoft.Internal.CodeCoverage package already includes arm64\msdia140.dll in its TestPlatform folder, and the wildcard on line 378 of the nuspec picks it up. The explicit entry conflicts with that wildcard. Remove just the dll entry (keep the manifest which CodeCoverage doesn't include). Count: 551 -> 550. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Adds ARM64 support for
msdia140.dllacross the test platform packaging, enabling ARM64 test hosts to use the DIA SDK for symbol resolution and crash dump analysis (#15327)Changes
eng/Versions.propsTestPlatformMSDiaVersionto18.7.0-preview-1-11715-406TestHost.csprojDiaFilesArm64item group + copy inCopyDiaFilestargetTestHost.nuspecarm64/msdia140.dlltolib/net8.0/arm64/CLI.nuspecarm64/msdia140.dll+ manifest toTestHostNetFramework/arm64/Context
The
Microsoft.Internal.Diapackage version18.7.0-preview-1-11715-406now includes ARM64 binaries alongside existing x86 and x64. The test platform packaging only referenced x86 and x64 — this PR wires ARM64 through the build and nuspec layout.Validation
tools/net451/arm64/msdia140.dll)dotnet-symbol**/*) for Dia file copy — no change needed there