Skip to content

Conversation

@stefanvanburen
Copy link
Member

This adds a RELEASE.md file that describes the release process in detail, and also adds automation for updating the CHANGELOG in the release workflow to reduce manual steps.

Now, the publish workflow will create two commits: one will update the CHANGELOG, swapping out "Unreleased" for the new tag, and adding a new "Unreleased" section above it. It commits those changes, then continues on to npm run package <version>, which creates another commit, which are both pushed directly to main.

This adds a RELEASE.md file that describes the release process in
detail, and also adds automation for updating the CHANGELOG in the
release workflow to reduce manual steps.

Now, the publish workflow will create two commits: one will update the
CHANGELOG, swapping out "Unreleased" for the new tag, and adding a new
"Unreleased" section above it. It commits those changes, then continues
on to `npm run package <version>`, which creates another commit, which
are both pushed directly to `main`.
Comment on lines +5 to +14
ifeq ($(UNAME_OS),Darwin)
# Explicitly use the "BSD" sed shipped with Darwin. Otherwise if the user has a
# different sed (such as gnu-sed) on their PATH this will fail in an opaque
# manner. /usr/bin/sed can only be modified if SIP is disabled, so this should
# be relatively safe.
SED_I := /usr/bin/sed -i ''
endif
ifeq ($(UNAME_OS),Linux)
SED_I := sed -i
endif
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lifted this from connect-go, which is a bit more in-depth than ours, since we've wired up some more automation (and have fewer moving parts to consider).

Comment on lines +45 to 48
make updatechangelog VERSION=${{ github.event.release.tag_name }}
git add CHANGELOG.md
git commit -m "Update CHANGELOG.md to version ${{ github.event.release.tag_name }}"
npm run package ${{ github.event.release.tag_name }}
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was a little tempted to do away with the CHANGELOG.md altogether and just rely on us documenting our releases, but at least the VS Code Marketplace pulls in the CHANGELOG.md from the bundle, so I guess we ought to populate it :).

stefanvanburen added a commit to stefanvanburen/connect-go that referenced this pull request Jan 28, 2026
Noticed this while borrowing the [RELEASE.md approach in vscode-buf][1],
thanks!

[1]: bufbuild/vscode-buf#553

Signed-off-by: Stefan VanBuren <[email protected]>
@stefanvanburen
Copy link
Member Author

I'm going to get this merged, but we don't have a need for a release to go out shortly. Happy to help troubleshoot/diagnose when we do need to make a release if this causes trouble.

@stefanvanburen stefanvanburen merged commit 9319c44 into main Jan 30, 2026
6 checks passed
@stefanvanburen stefanvanburen deleted the svanburen/release branch January 30, 2026 17:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants