You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
This is motivated by this issue in cargo-release.
cargo-release allows automated publishing of a workspace, but it runs into problems where if two interdependent crates are published too short after each other, the publish might fail.
Say e.g. crate A is to be published with version 1.0.0 and crate B is to be published with 1.0.0 as well, where crate B depends on crate A, version 1.0.0.
If we simply run cargo publish for crate A first, and then immediately after the process terminates run cargo publish for crate B, then then the publish of B might fail because crate A does not exist yet with 1.0.0.
Describe the solution you'd like
Instead of repeatedly trying to publish crate B until it is successful, it would be nice to be able to query crates.io for whatever condition crate A needs to fulfil to have crate B published. Alternatively it would be nice to have the API call that does the publishing only return after crate A is completely published.
Describe alternatives you've considered
Waiting a fixed number of seconds between publishes: Sometimes crates.io takes longer than the constant, and then the second publish still fails. When setting the constant very large, it becomes tedious to wait for publishing a few crates.
Just retrying the publish: While that likely would work, it is not a very nice solution.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
This is motivated by this issue in cargo-release.
cargo-release allows automated publishing of a workspace, but it runs into problems where if two interdependent crates are published too short after each other, the publish might fail.
Say e.g. crate A is to be published with version 1.0.0 and crate B is to be published with 1.0.0 as well, where crate B depends on crate A, version 1.0.0.
If we simply run cargo publish for crate A first, and then immediately after the process terminates run cargo publish for crate B, then then the publish of B might fail because crate A does not exist yet with 1.0.0.
Describe the solution you'd like
Instead of repeatedly trying to publish crate B until it is successful, it would be nice to be able to query crates.io for whatever condition crate A needs to fulfil to have crate B published. Alternatively it would be nice to have the API call that does the publishing only return after crate A is completely published.
Describe alternatives you've considered
Waiting a fixed number of seconds between publishes: Sometimes crates.io takes longer than the constant, and then the second publish still fails. When setting the constant very large, it becomes tedious to wait for publishing a few crates.
Just retrying the publish: While that likely would work, it is not a very nice solution.
The text was updated successfully, but these errors were encountered: