From 859bbc87fc80c18a72e08b181e301ddb4f8dabea Mon Sep 17 00:00:00 2001 From: ioanbudea-OAI Date: Fri, 16 Oct 2026 21:47:26 +0000 Subject: [PATCH] Keep prereleases in draft until release assets finish uploading (#54716) ## Why Prereleases were published before their assets finished uploading, exposing incomplete releases. ## What changed Create new prereleases as drafts, matching stable releases, and publish them only after all asset uploads succeed. Publishing a draft emits a `published` event rather than a `prereleased` event. GitOrigin-RevId: 0d1c52038bb9b7beb4b5b9bf52f0ef4c3734de61 --- .github/workflows/rust-release.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/rust-release.yml b/.github/workflows/rust-release.yml index 3fc99ac71b..5230d40992 100644 --- a/.github/workflows/rust-release.yml +++ b/.github/workflows/rust-release.yml @@ -1775,13 +1775,10 @@ jobs: --prerelease="$PRERELEASE" ) if [[ "$exists" == false ]]; then - # Prereleases must be created directly to keep prereleased events. - draft=true - if [[ "$PRERELEASE" == true ]]; then - draft=false - fi + # Keep stable releases and prereleases private until all uploads succeed. + # Publishing a draft emits published rather than prereleased events. gh release create "$GITHUB_REF_NAME" "${release_args[@]}" \ - --draft="$draft" --verify-tag --latest=false + --draft=true --verify-tag --latest=false fi mapfile -d '' assets < <(find dist -type f -print0 | sort -z)