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

Disable auto-push of symbols package #6113

Closed
anangaur opened this issue Oct 27, 2017 · 2 comments · Fixed by NuGet/NuGet.Client#1815
Closed

Disable auto-push of symbols package #6113

anangaur opened this issue Oct 27, 2017 · 2 comments · Fixed by NuGet/NuGet.Client#1815
Assignees
Labels
Functionality:Push Priority:1 High priority issues that must be resolved in the current sprint. Type:Feature
Milestone

Comments

@anangaur
Copy link
Member

anangaur commented Oct 27, 2017

Context

If a user creates a symbols package along with their NuGet package and then tries to push the package to NuGet.org, NuGet does the following steps in sequence:

  1. Pushes the NuGet package to NuGet.org
  2. Pushes the Symbols package (if present in the same folder) to SymbolSource.org (https://nuget.smbsrc.net)

If Step 2 fails, the NuGet package is already pushed to NuGet.org but the push operation returns failure. This response is not entirely correct as the primary package push did pass and any subsequent push retry by the user will be rejected by NuGet.org as the package (with version) is already present on NuGet.org.

Proposal

Disable auto-push of symbols package to SymbolSource.org

Since the 2 pushes (as mentioned above) are non-atomic (they operate independently), it makes sense to separate out these steps. This will help users identify the failure and only retry the failing operation.
We have also seen frequent issues where SymbolSource.org becomes unreachable. The project is not being actively maintained. Of late, there is  an issue where the SSL certificate for https://nuget.smbsrc.net is invalid (expired). Though we are working on getting this fixed by SymbolSource.org, there is no ETA on the fix.

This solution would not prevent users to use the Symbol Server of their choice. They can continue to push symbols package separately as follows:

> nuget push MyPackage.symbols.nupkg -source <symbol server endpoint>

To summarize, the changes proposed here are:

  1. Stop auto push of symbols package to SymbolSource when the symbols package (.symbols.nupkg) is present in the same folder as NuGet package (.nupkg)
  2. Stop defaulting to SymbolSource while pushing Symbols package.

Next steps

The NuGet team is working on improving the debugging and symbols experience holistically. Look out for more details by subscribing to the NuGet/Announcements repo where we will announce the spec when the spec has more details.

Spec wiki Discussion issue
NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements #6104
@rohit21agrawal
Copy link
Contributor

@anangaur can you get the new behavior documented?

@anangaur
Copy link
Member Author

@rohit21agrawal Thanks. Lets sync up on what changes we want to document. We need to provide information on how to publish symbols if required.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Functionality:Push Priority:1 High priority issues that must be resolved in the current sprint. Type:Feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants