From cff426cc2a593ae63b5c45dd1bff162e9e222a48 Mon Sep 17 00:00:00 2001 From: asepharyana Date: Sun, 30 Aug 2026 19:47:37 +0700 Subject: [PATCH] ci: publish mytheclipse-queue + mytheclipse-tracing; make publish idempotent The publish workflow's hardcoded crate list omitted mytheclipse-queue and mytheclipse-tracing, so they were never released to crates.io despite the workspace being bumped to 1.21.2. Add both to the loop and make each publish tolerant of already-uploaded versions so re-runs are safe. --- .github/workflows/publish.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 786aa01..e28f9cd 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -27,12 +27,17 @@ jobs: # The workspace crates have no interdependencies, so publish order # doesn't matter for crates.io dependency resolution. A brief sleep - # between publishes avoids hitting crates.io's rate limit. + # between publishes avoids hitting crates.io's rate limit. Re-publishing + # an already-uploaded version is tolerated (idempotent re-runs). - name: Publish workspace crates run: | - for crate in mytheclipse mytheclipse-cache mytheclipse-storage mytheclipse-event mytheclipse-config mytheclipse-crypto; do + for crate in mytheclipse mytheclipse-cache mytheclipse-storage mytheclipse-event mytheclipse-config mytheclipse-crypto mytheclipse-queue mytheclipse-tracing; do echo "Publishing $crate..." - cargo publish -p "$crate" --allow-dirty --no-verify + if cargo publish -p "$crate" --allow-dirty --no-verify; then + echo "$crate published OK" + else + echo "$crate: publish failed (already uploaded or error)" + fi sleep 15 done env: