-
Notifications
You must be signed in to change notification settings - Fork 10.4k
[release/10.0-preview6] Pack symbols in SharedFx for libraries we redist from runtime #62446
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[release/10.0-preview6] Pack symbols in SharedFx for libraries we redist from runtime #62446
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR backports support for including PDB symbols in the SharedFx for libraries redistributed from the runtime, ensuring symbols are available on non-win-x64 platforms.
- Injects a new
_AddExtensionsSymbolsToSymbolPack
target into the build dependency chain. - Adds a PackageReference for
Microsoft.Internal.Runtime.AspNetCore.Transport
withGeneratePathProperty
. - Defines logic to filter and include symbol files (
.pdb
) for external ASP.NET Core libraries.
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
File | Description |
---|---|
src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | Added transport package reference and _AddExtensionsSymbolsToSymbolPack target to pack PDBs. |
src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | Mirrored the symbol-packaging target and enabled DisablePackageReferenceRestrictions . |
Comments suppressed due to low confidence (2)
src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj:119
- The Condition expression uses
$(FileNameList.Contains(...))
, which isn’t valid MSBuild syntax. Replace it with an MSBuild property function, e.g.:
Condition=" '$(FileNameList)' != '' and $([System.String]::Copy('$(FileNameList)').Contains('%(Filename);')) "
Condition="'$(FileNameList)' != '' and $(FileNameList.Contains('%(Filename);'))" />
src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj:122
- The Condition filter for
_SymbolFilesToPackage
won’t work as written. Use an MSBuild string function, for example:
Condition=" '$(FileNameList)' != '' and $([System.String]::Copy('$(FileNameList)').Contains('%(Filename);')) "
Condition="'$(FileNameList)' != '' and $(FileNameList.Contains('%(Filename);'))" />
src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj
Show resolved
Hide resolved
Failures unrelated |
Backport of #62429 to release/10.0-preview6
/cc @wtgodbe
Pack symbols in SharedFx for libraries we redist from runtime
Includes .pdb's in the SharedFx for libraries we re-dist from runtime.
Description
We've never included these in the past, but that was fine in the past because every aspnetcore RID consumed the win-x64 runtime transport pack, which corresponded to the packages that went on nuget. Now that we build in verticals in the VMR, only the win-x64 aspnetcore leg builds against libraries that match the symbols on nuget.org, so symbols aren't available for runtime libraries in our SharedFx on non-win-x64 platforms. Therefore we should explicitly include the .pdb's in the SharedFx to make them available.
Fixes #62165
Customer Impact
Symbols not available when debugging runtime libraries from our SharedFx
Regression?
[If yes, specify the version the behavior has regressed from]
Risk
Just adding symbols
Verification
Packaging changes reviewed?
When servicing release/2.1