chore(release): one-shot publish script + npm run release#76
Merged
Conversation
Add scripts/publish.sh: interactively picks major/minor/patch, bumps and tags, pushes to the dawsbot remote, creates the GitHub release with the built VSIX attached, and walks through the manual Marketplace upload. It targets the repo explicitly and includes preflight guards plus failure recovery. Wire it up as `npm run release`, and drop the old `postversion` hook so a bare `npm version` just bumps (the script now owns push/release, targeting the correct remote and repo). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
What
Adds a repeatable release flow so cutting a version is one command.
scripts/publish.sh— interactively pick major/minor/patch (shows the resulting version for each), then it bumps + commits + tags, pushes the tag todawsbot, creates the GitHub release with auto-generated notes, builds the VSIX and attaches it to the release, and finally walks through the manual VS Code Marketplace upload (prints the exact.vsixpath and opens the publisher page).npm run release— alias for the script.postversionhook — the script now owns the push/release flow and targets the correct remote/repo explicitly, so a barenpm versionjust bumps locally instead of misfiring at the upstream repo.Safety
master, clean tree, and in sync withdawsbot/masterbefore it will run.dawsbot/RelativePathby name (doesn't depend on git upstream orghdefault config).npm version --ignore-scripts) so there's no double-release.Usage
npm run release # or: ./scripts/publish.sh🤖 Generated with Claude Code