-
Notifications
You must be signed in to change notification settings - Fork 603
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
Changing metadata should be possible without bumping a version #7146
Comments
👍 |
Any progress on this issue? |
If there was any progress, it would show up on this issue. |
I feel like the trend has been to remove metadata from source, like https://rust-lang.github.io/rfcs/3052-optional-authors-field.html or crates.io deciding to stop showing badges. |
Moving this to crates.io as they should be making the decision on what metadata is mutable and how users should edit it (web UI, cargo command, etc). From there, they can request any desired cargo features to accomplish the wider goal. Most likely, someone will need to step up to drive this forward to look into what metadata should be mutable, why, and what workflows best fit with that context. |
I think the trick part is we also package Also, I think it would also affect the checksum check of the tarball file. |
The metadata in the crate itself should not be mutable. Instead the metadata from the crate should be used as the default value displayed on crates.io, but the user can then change the metadata visible on crates.io via the web UI, without affecting the metadata actually stored in the crate. |
I think this kind of inconsistency would cause a lot of confusion. Can I ask what kind of metadata you only want to change in creates.io instead of |
See: https://blog.vlt.sh/blog/the-massive-hole-in-the-npm-ecosystem And #7194 will force us to use these fields from Cargo.toml. |
I just rediscovered #3167, which basically describes the same thing. Let's move the discussion over there to not have two duplicate issues :) |
Currently Cargo doesn't allow the metadata to be separately updated. This doesn't seem right (as the semantic versioning only concerns about the public API and the metadata is not a part of the public API).
In order to fix this issue, the publish endpoint (
/api/v1/crates/new
) should be adjusted to accept the metadata without the tarball (well, or have a new endpoint for that), and the server will check if the name, version, dependencies and features match to those stored before updating that. In the CLI thecargo publish
command should ask for the metadata update when the version hasn't been changed.The text was updated successfully, but these errors were encountered: