@@ -171,9 +171,11 @@ release-tag-main version:
171171 git tag " v{{version}}"
172172 git push origin " v{{version}}"
173173
174- # Create the GitHub release for the pushed tag, generating notes from commits.
175- # The tag push above already started release.yml; this just publishes the
176- # release object so cargo-dist can attach artifacts to it.
174+ # Manual recovery only. Normally cargo-dist's `host` job in release.yml creates
175+ # the GitHub release as part of its upload step; calling this from release-prepare
176+ # would race that job ("release with the same tag name already exists"). Use this
177+ # only when cargo-dist's host job didn't create the release (e.g. CI was disabled
178+ # or failed before the host step).
177179release-create-tag version :
178180 gh release create v{{ version}} --generate-notes --target main --title " v{{ version}} "
179181
@@ -211,8 +213,7 @@ release-prepare version yes="0":
211213 echo " 3. Push branch + open PR (review checkpoint)"
212214 echo " 4. Merge PR via 'gh pr merge --squash --delete-branch'"
213215 echo " 5. Tag the merge commit on main and push the tag"
214- echo " 6. Create GitHub release v{{version}}"
215- echo " 7. Wait for release.yml CI to attach artifacts"
216+ echo " 6. Wait for release.yml CI (cargo-dist creates the GitHub release + attaches artifacts)"
216217 echo
217218 read -r -p " Continue? [y/N] " response
218219 [[ " $response " =~ ^[Yy]$ ]] || { echo " Aborted." ; exit 1; }
@@ -237,7 +238,6 @@ release-prepare version yes="0":
237238 just release-open-pr {{version}}
238239 just release-merge-pr {{version}}
239240 just release-tag-main {{version}}
240- just release-create-tag {{version}}
241241 just release-wait-ci {{version}}
242242 echo
243243 echo " Phase 1 complete. Inspect the release at:"
0 commit comments