fix(release): make --dry-run truly non-mutating
The dry-run gate was at the bottom of the script, after version bump, lockfile update, CHANGELOG sync, build, and the chore(release) commit had already run — so a dry-run left the local repo with a stray version commit that had to be reset. Move the gate to right after the version selection so dry-run shows the full preview (changesets, proposed version, override prompt) and exits before mutating anything. Drop the now-dead late check and the redundant DRY_RUN short-circuit in confirm(). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -86,7 +86,7 @@ This will trigger `release.yml` to build binaries and create a GitHub Release. N
|
||||
| `pnpm changeset status` | Check pending changesets |
|
||||
| `pnpm release` | Local interactive release: previews changesets, lets you accept or override the proposed version, then bumps + builds + publishes + tags |
|
||||
| `pnpm release --yes` | Same, but auto-accepts the proposed version and skips the final confirmation |
|
||||
| `pnpm release --dry-run` | Walks through the same preview/version-selection flow without publishing or pushing |
|
||||
| `pnpm release --dry-run` | Preview only — show changesets, proposed version, and prompt for override, then exit before any file/git/npm changes |
|
||||
| `pnpm release:version` | Apply changesets and bump versions (used by CI) |
|
||||
| `pnpm --filter @runfusion/fusion build:exe` | Build binary for current platform |
|
||||
| `pnpm --filter @runfusion/fusion build:exe -- --target <target>` | Cross-compile for a specific platform |
|
||||
|
||||
Reference in New Issue
Block a user