fix(release): move publish = false out of Cargo.toml - #8
Merged
Merged
Conversation
release-plz reported "nothing to release" after the release PR landed, so v0.1.0 was never tagged and no release was created. `publish = false` in Cargo.toml makes release-plz drop the package from the release set outright; neither `git_only` nor `git_release_enable` overrides it. The same flag in release-plz.toml means what was wanted: skip `cargo publish`, still tag and still create the GitHub release. Confirmed on the merge commit itself — with the flag in Cargo.toml the dry run says "nothing to release"; with it moved, the same commit reports "creation of tag 'v0.1.0'" and "creation of git release", and no registry upload step at all. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UioWbXWdwtt6NLSqDpHcmT
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The release PR merged but nothing was tagged and no release was created. The
releasejob reported success and loggednothing to release.Cause
publish = falseinCargo.tomlmakes release-plz drop the package from the release set entirely. Neithergit_onlynorgit_release_enableoverrides it — the package never reaches the point where those matter.The same flag in
release-plz.tomlmeans what was intended: skipcargo publish, still create the tag, still create the GitHub release.Evidence
Three dry runs of the real
release-plzbinary against the merge commit itself (678442a), changing one thing at a time:publish = falsein Cargo.toml (what shipped)nothing to releasecreation of tag 'v0.1.0',creation of git release,cargo registry uploadcreation of tag 'v0.1.0',creation of git release— no registry upload stepThe third is what we want: tagging and the GitHub release happen, and
cargo publishis not merely skipped but never part of the plan.The tradeoff, stated plainly
publish = falseinCargo.tomlwas a hard guard:cargo publishrefuses outright. Removing it means a deliberatecargo publishis no longer blocked by cargo itself. Nothing automated will do it — release-plz will not, and no CI job runs it — but the belt-and-braces guard at the manifest level is gone.There is no configuration that keeps both. If you would rather keep the manifest guard, the alternative is dropping release-plz's tagging and cutting tags by hand, which gives up the point of the release train.
What happens when this merges
The push to
mainrunsrelease.ymlagain. This timereleasetagsv0.1.0, creates the GitHub release, setsreleases_created=true, andbinariesbuilds and uploadsnanokvm-v0.1.0-x86_64-unknown-linux-gnu.tar.gzplus its.sha256.Verified through the CI container before pushing — all eight steps pass.
🤖 Generated with Claude Code
https://claude.ai/code/session_01UioWbXWdwtt6NLSqDpHcmT