fix: retry logic for crates.io rate limits#22
Conversation
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 56644f965d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| echo " Published $crate" | ||
| return 0 | ||
| fi | ||
| if cargo publish -p "$crate" 2>&1 | grep -q "already published"; then |
There was a problem hiding this comment.
Parse publish errors without rerunning cargo publish
The retry block invokes cargo publish a second time inside the grep check, which means each failed attempt makes an extra publish request and can misclassify success as failure. If the first call fails transiently but the second call actually publishes (or if the first call uploaded and then errored), the pipeline only checks for the literal text and continues retrying, so the job can eventually fail even though the crate was already uploaded; this is especially risky in a multi-crate release because later crates won’t be published.
Useful? React with 👍 / 👎.
Closes #20