-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Allow publishing crates with nightly features #5603
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
Conversation
(rust_highfive has picked a reviewer for you, use r? to override) |
90f34f7
to
65a3e85
Compare
65a3e85
to
39a3709
Compare
ping @rust-lang/cargo, @joshtriplett and @aturon :) This is blocking clippy folks right now I think (@oli-obk has more details). I personally am 100% fine with allowing publishing crates with unstable features, but I want to make sure the team is OK with this as well :) |
@matklad I agree with this move and your rationale. My only concern would be for unstable Cargo features that affect the publication process/metadata, but we can handle that case-by-case. |
Double checked that current unstable features do not affect publication, and it seems to be the case. Moreover, any feature which affects metadata/publication needs some special handling from crates.io, so, in some sense, such features are crates.io features and not Cargo features. @bors r+ |
📌 Commit 39a3709 has been approved by |
Allow publishing crates with nightly features closes #5427. cc @rust-lang/cargo: I remember a vigorous debate over publishing crates with nightly Cargo features, but I can't recollect our exact plan of action. The discussion is logged here: https://paper.dropbox.com/doc/Unstable-Cargo-features-JBYMdsUYcO3FyW8Ubkjoz. I think we just need to allow to publish crates with unstable cargo features, for the same reason we allow unstable rust features: you need explicit opt-in, even for deps. This is covered by Cargo tests: https://github.com/rust-lang/cargo/blob/9f097787b04b06cdde4fc42b26a531b22c1b37a6/tests/testsuite/cargo_features.rs#L115-L215. I am not sure if we have ever implemented crates.io side of validation?
☀️ Test successful - status-appveyor, status-travis |
closes #5427.
cc @rust-lang/cargo: I remember a vigorous debate over publishing crates with nightly Cargo features, but I can't recollect our exact plan of action. The discussion is logged here: https://paper.dropbox.com/doc/Unstable-Cargo-features-JBYMdsUYcO3FyW8Ubkjoz.
I think we just need to allow to publish crates with unstable cargo features, for the same reason we allow unstable rust features: you need explicit opt-in, even for deps. This is covered by Cargo tests:
cargo/tests/testsuite/cargo_features.rs
Lines 115 to 215 in 9f09778
I am not sure if we have ever implemented crates.io side of validation?