Skip to content

Conversation

@jgiannuzzi
Copy link
Member

@mfkl
Copy link
Contributor

mfkl commented Sep 24, 2020

Personally I'm more fan of shipping the pdb inside the nuget than using a symbol server. Less reliance on internet and nuget infra.

Just my 2 cents :-)

@skyguy94
Copy link

Its probably worth considering official guidance on when to include a pdb in a package:

Including PDBs in the .nupkg is generally no longer recommended as it increases the size of the package and thus restore time for projects that consume your package, regardless of whether the user needs to debug through the source code of your library or not. That said, .snupkg symbol packages have some limitations:

  • They do not currently support Windows PDBs (generated by VC++, or for managed projects that set build property DebugType to full)
  • They require the library to be built by newer C#/VB compiler (Visual Studio 2017 Update 9).
  • The consumer of the package also needs Visual Studio 2017 Update 9 debugger.
  • Not supported by Azure DevOps Artifacts service.
    Consider including PDBs in the main package only if it is not possible to use .snupkg for the above reasons. For managed projects, consider switching to Portable PDBs by setting DebugType property to portable. This is the default for .NET SDK projects, but not classic .NET projects.

Link: Alternative PDB Distribution

That being said Sourcelink is a nice feature for package source debugging: https://github.com/dotnet/sourcelink

@marcin-krystianc
Copy link
Contributor

I would prefer shipping pdbs with the nuget package itself instead of using snupkg format as the latter is not yet supported in Rider (https://youtrack.jetbrains.com/issue/RIDER-21735) and in Artifactory (https://www.jfrog.com/jira/browse/RTFACT-5972).

@sungam3r
Copy link
Contributor

sungam3r commented Jan 3, 2025

as it increases the size of the package

Not so much since portable embedded pdbs.

I would prefer shipping pdbs with the nuget package itself instead of using snupkg format

So do I. In fact package size increases slightly: 579K now without embedded PDBs and 626K with embedding PDBs.

Created #412 to demonstrate.

@sungam3r sungam3r mentioned this pull request Jan 3, 2025
@jgiannuzzi jgiannuzzi deleted the add-nuget-symbol-package branch January 13, 2025 16:06
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

Successfully merging this pull request may close these issues.

5 participants