-
Notifications
You must be signed in to change notification settings - Fork 252
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
Package Immutability #5917
Comments
Big fan of this! 🎉 |
Also, the spec is not ready for feedback just yet (hence the incubation status). I am making final edits and once done, I'll update the status to reviewing and also announce on the announcement repo. |
I mentioned this idea to @unniravindranathan, but I believe there's a way to allow package metadata editing, if so desired, and package signing together. This functionality is essentially the same as what will be needed for changing package owners anyway. Basically, the feed source signature can contain an updated set of metadata (delta's). In the case of a package owner change, the owners metadata element would be contained in the new feed source signature. This could apply to any metadata change. Meta-data changes are reflected in an updated feed source signature. The clients would do a base nuspec + deltas from the feed source to build the displayed value. |
@onovotny what you're saying has the side-effect of requiring compute at restore time, which is very costly and a performance hit (not to mention another dependency that may break restores, or reduce combined SLA of the infrastructure this runs on). A technical solution that avoids compute at restore time (e.g. pre-calculating at publish time, or at edit-package time), has impact on the time required to make the package/the edited metadata available for restore, and will result in additional HTTP requests client-side (chattier protocol). In fact, making packages immutable has positive side-effects:
IMHO, once a package is committed to the central nuget.org repository, it should be immutable. I can see value in the ability to update metadata in a verification step BEFORE the package is committed, but as package authors will sign packages client-side, that's likely just some review screen with a final "go/no-go" decision to commit the package, or go back and change + reupload it. You can compare nuget.org with a |
I agree with @xavierdecoster here. Certainly on this:
If a package is transfered, the owner of the old packages is still the previous owner, not you. All new packages however, will have a new owner instead. |
@xavierdecoster @tomkerkhove All good points, I was just pointing out a potential way to handle this in the package signing world, if the behavior is so desirable. |
This feature has been now been implemented and is live. |
Status: Implemented
Spec for this feature is available here: https://github.com/NuGet/Home/wiki/Package-Immutability
Discussion should happen on this issue. Please link other issues with similar asks to this one
The text was updated successfully, but these errors were encountered: