Skip to content
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

Cecil does not generate portable PDB checksum #610

Open
ltrzesniewski opened this issue Aug 20, 2019 · 7 comments
Open

Cecil does not generate portable PDB checksum #610

ltrzesniewski opened this issue Aug 20, 2019 · 7 comments

Comments

@ltrzesniewski
Copy link
Contributor

Currently, Cecil does not generate a PdbChecksum debug directory entry in the assembly it writes when it produces a portable PDB file.

This entry is validated by the NuGet gallery when you try to submit a symbol package (.snupkg file), making it impossible to upload such packages for assemblies processed by Cecil.

Here's the information needed to implement this feature:

I may try to implement this in the future unless someone else is interested. 😉

Related issue: ltrzesniewski/InlineIL.Fody#12
/cc @sakno

@Starnick
Copy link

I was just investigating snupkg support for my nuget libraries and ran into this too :(

@ltrzesniewski
Copy link
Contributor Author

FWIW I didn't try to implement this as apparently @jbevain started to work on it in #617.

@Starnick
Copy link

@jbevain Is this PR done, just waiting to be merged?

@jbevain
Copy link
Owner

jbevain commented Feb 18, 2020

Heh, no otherwise it would be merged :)

The PR in its current state re-orders some internal implementation detail to write the debug symbols before writing the assembly as this requires computing the pdb checksum before writing it in the assembly.

@clairernovotny
Copy link

clairernovotny commented May 29, 2020

As a workaround for NuGet, and better than snupkg IMO, is to include the PDB in the main NuPkg. You can do that like this:
https://github.com/clairernovotny/DeterministicBuilds/blob/master/Directory.Build.props#L10

@sakno
Copy link

sakno commented May 29, 2020

@clairernovotny , currently I'm using embedded PDB <DebugType>embedded</DebugType> as a workaround.

@clairernovotny
Copy link

@sakno that works too

nitz added a commit to cmdwtf/Treemap that referenced this issue Sep 26, 2021
Looks like some Fody weavers cause issues with the portable PDB signatures, making nuget.org reject `.snupkg`s. Workaround seems to be to use `<DebugType>embedded</DebugType>` for now. See [cecil/#610](jbevain/cecil#610) for more info.
Thealexbarney added a commit to Thealexbarney/LibHac that referenced this issue Dec 16, 2021
Works around jbevain/cecil#610

Using InlineIL.Fody messes up the pdb checksum which makes nuget.org consider the .snupkg to be invalid. Workaround this by including the pdb in the main .nupkg
Thealexbarney added a commit to Thealexbarney/LibHac that referenced this issue Dec 17, 2021
Works around jbevain/cecil#610

Using InlineIL.Fody messes up the pdb checksum which makes nuget.org consider the .snupkg to be invalid. Workaround this by including the pdb in the main .nupkg
stesee pushed a commit to stesee/ClosedXML that referenced this issue Feb 14, 2022
Snupgk seems to be unsupported by fody at the moment  jbevain/cecil#610 ltrzesniewski/InlineIL.Fody#12
jahav added a commit to ClosedXML/ClosedXML that referenced this issue Oct 26, 2023
…nd thus publishing on nuget.org fails.

To avoid, include pdb directly to nuget package.

Likely cause is Fody (jbevain/cecil#610).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants