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

Publishing cargo verification #12567

Open
ehuss opened this issue Aug 26, 2023 · 1 comment
Open

Publishing cargo verification #12567

ehuss opened this issue Aug 26, 2023 · 1 comment
Labels
A-testing-cargo-itself Area: cargo's tests S-needs-design Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.

Comments

@ehuss
Copy link
Contributor

ehuss commented Aug 26, 2023

Cargo's CI should verify that its packages can build before being published.

Cargo is published to crates.io with --no-verify, in part because the publishing system isn't prepared for doing verification. However, that would also only verify for one platform.

Ever since switching cargo to a workspace, we've had problems with workspace feature unification causing problems that aren't discovered until after cargo is published (#12017, #12565). Our CI can't detect these issues because all tests are done with feature unification.

Unfortunately cargo package can't be used due to version bumps of local dependencies (#9260).

I'm not sure if or how this could be fixed without changes to cargo itself.

@ehuss ehuss added A-testing-cargo-itself Area: cargo's tests S-needs-design Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted. labels Aug 26, 2023
@epage
Copy link
Contributor

epage commented Dec 4, 2024

Unsure why I didn't recommend this before but cargo-hack (which we already use for MSRV verification) is able to run Cargo commands on packages in isolation and can automatically enumerate feature combintions.

Granted, once someone implements the non-unified version of #14774, we can use that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-testing-cargo-itself Area: cargo's tests S-needs-design Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.
Projects
None yet
Development

No branches or pull requests

2 participants