Repository navigation
Keep release.sh's DRY_RUN out of the release checks - #844
Merged
Merged
Conversation
make release hands scripts/release.sh DRY_RUN=false, and release.sh ran make release-check with it still exported. test-sync-skills reads a DRY_RUN of its own and accepts only unset, local or remote, so every make release failed its checks before tagging. Run the checks without it.
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.
Problem
make release VERSION=x.y.zfails its pre-flight checks before tagging. Thereleasetarget runsDRY_RUN=$(DRY_RUN) scripts/release.sh, sorelease.shhasDRY_RUN=falsein its environment, and it runsmake release-checkwith that still exported.test-sync-skills(added in #708, after v0.11.0) reads aDRY_RUNof its own forscripts/sync-skills.sh, accepts only unset,localorremote, and refusesfalse:Running
make release-checkon its own passes, which is why this only shows up at release time. v0.12.0 hit it and was cut by runningscripts/release.sh 0.12.0directly, whereDRY_RUNis a shell variable rather than an exported one.Solution
release.shruns the checks asenv -u DRY_RUN make release-check. Its ownDRY_RUNkeeps working for the steps it gates (Nix update, plugin stamp, tag, push).With
DRY_RUN=falseexported asmake releasedoes,make test-sync-skillsfails 20 assertions before this change and none after.🤖 Generated with Claude Code
Summary by cubic
Fixes
make releasefailing its pre-flight checks right before tagging.make releaseexportsDRY_RUN=falseintorelease.sh, which passed it on tomake release-check;test-sync-skillsreads that variable and only accepts unset,local, orremote, sofalseaborted the run. Checks now run asenv -u DRY_RUN make release-check.release.sh's ownDRY_RUNstill controls the Nix update, plugin stamp, tag, and push steps.Written for commit 8215a0e. Summary will update on new commits.