-
Notifications
You must be signed in to change notification settings - Fork 331
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
As a product owner, my official build verifies symbol packages are complete #167
Comments
Moved over the core-eng 2448 mentioned in my last comment to #173 |
AFAIU our current implementation of Publish makes a copy of the regular package and calls it a symbol package in case of absent symbol package:
|
Yeah I think is the case |
How do you see that affecting this issue? |
Adding some more specific info on what makes a "complete" symbol package. For every
If a file has any files associated with it, they must be in the same directory as the file in the symbol package. (This may only be actually needed for certain associations like long-name DAC/SOS, but I'm not sure.) If a nupkg has no files that match the above, an associated symbol package isn't needed. An extra step I'm not familiar with would be checking to make sure all There will be exceptions, such as files that are redistributed in The above steps can be run offline to validate that the symbol package is complete. Once the symbol package is uploaded to symbol servers, we need to then run availability validation which is tracked by #173. |
Thanks @dagood ! |
Note that for managed code we will switch to the new |
It looks like the
Symbol packages must have both the DLL/EXE and PDB. |
That was true for |
Is there any plan for how that's compatible with Microsoft symbol servers and various requirements? Will repos that produce native bits and managed bits need to produce both symbol packages and I'm likely out of the loop, but I want to make sure this doesn't fall through the cracks. |
Closing this since now we have a short term solution (#2534) and another issue for a long term solution (dotnet/arcade-services#2465) |
@dagood commented on Fri Dec 09 2016
Similar to verifying that packages are signed before publishing them, packages should be verified to have complete symbol packages.
Without this implemented, the worst case scenario (which has happened at least twice) is that a symbol package contains incomplete info or doesn't exist for a package that's released to the world. If nobody notices quickly enough to manually save the symbols (from the build machine or a temporary cpvsbuild share) the symbols become impossible to find.
@markwilkie commented on Thu Mar 22 2018
Moving to prodcon to make sure it's done
@dagood commented on Thu Mar 22 2018
Related: https://github.com/dotnet/core-eng/issues/2448 "Post-build symbol availability validation". That one's about making sure the symbols are available from the production endpoints, this one's about making sure the right symbols are included in build outputs at all.
The text was updated successfully, but these errors were encountered: