fix(release): bump plugin.json and marketplace.json on tag-push releases#124
Merged
Merged
Conversation
The 'Commit version bump' step that lands plugin.json + marketplace.json on the source branch is gated to workflow_dispatch only. On the normal tag-push trigger (git push origin vX.Y.Z, or 'gh release create' which pushes a tag), the bumped files are used in-process to build the VSIX but never committed back to main. Result: after v0.0.2 and v0.0.3 shipped via tag push, main was still at 0.0.1, and the post-release 'Update CHANGELOG.md on main' step left a dangling 'changelog/<tag>' PR each time (since main lacked the bump, that PR also did not bring the bump in). Fix: extend the post-release main-update step to re-apply the version bump against the freshly-checked-out main tree, and stage plugin.json + .github/plugin/marketplace.json alongside CHANGELOG.md in the same commit. The push (or fallback PR) now lands the bump and the changelog entry together. - Renames the step to 'Bump version files and update CHANGELOG.md on main' - Re-applies the same jq bumps used by the earlier 'Bump' step - Adds plugin.json + marketplace.json to the diff check and 'git add' - Renames the fallback PR branch from 'changelog/<tag>' to 'release/<tag>' and updates its title/body to reflect the broader scope - Prereleases (-rc.x etc.) are still skipped, matching prior behaviour Workflow file passes actionlint.
sendtoshailesh
approved these changes
May 26, 2026
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.
Why
The release workflow's
Commit version bumpstep is gated toworkflow_dispatchonly:So when a release is created the normal way — by pushing a tag (
git push origin vX.Y.Z), which is also whatgh release createdoes — the bumpedplugin.jsonand.github/plugin/marketplace.jsonare used in-process to build the VSIX but never committed back tomain.That's why after v0.0.2 and v0.0.3 shipped,
mainwas still pinned at0.0.1andCHANGELOG.mddidn't exist. The downstreamUpdate CHANGELOG.md on mainstep likely also opened achangelog/<tag>PR each time that nobody merged.The drift on
mainis being corrected separately in #123.What
Rework the post-release main-update step so it lands the version bump and the changelog entry in a single commit on
main, regardless of whether the release was triggered by tag-push orworkflow_dispatch.Update CHANGELOG.md on main→Bump version files and update CHANGELOG.md on maingit checkout -B changelog-update origin/main, re-apply the samejqbumps used by the earlierBump plugin.json and marketplace.jsonstep against the freshly-checked-outmaintree.git add, and commit message to coverplugin.json+.github/plugin/marketplace.json.changelog/<tag>torelease/<tag>and broaden its title + body.workflow_dispatchflow continues to commit the bump + tag from the dispatching branch before VSIX assembly (the earlier step is untouched). The new step is idempotent there —git diff --quietskips when there's nothing to land.-rc.xetc.) remain skipped on the main-bump.Validation
Full end-to-end validation needs a tag-push release; the natural next opportunity is the next time we cut a tag.