Skip to content

[DEVOPS] Add automated release workflow - #12

Open
chriwo wants to merge 1 commit into
mainfrom
task/workflow-release
Open

chriwo wants to merge 1 commit into
mainfrom
task/workflow-release

Conversation

@chriwo

@chriwo chriwo commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

The repository had no release automation. Tags had to be created and pushed by hand, and the release notes written in the GitHub UI. Nothing verified that a version number was well-formed or that it had not been released before, and the contents of the notes depended on whoever happened to cut the release.

The new workflow runs on demand from the Actions tab and takes the version number as its only input. It rejects a malformed number and one that is already tagged, refuses to run outside main, collects the commits since the previous release into Features, Bugfixes and Tasks sections, creates the tag and publishes the GitHub Release. A version with a suffix such as 4.1.0-beta.1 is published as a prerelease and does not replace the current stable release. Stable releases list everything since the last stable one, including what already shipped in intermediate betas, while each beta lists only its own changes.

Tag names carry no leading "v". The old v3.0.0 and v3.0.1 tags stay as they are, but every new release uses the plain number and so matches the 1.0.x, 2.0.0 and 4.0.0 tags.

The repository had no release automation. Tags had to be created and
pushed by hand, and the release notes written in the GitHub UI. Nothing
verified that a version number was well-formed or that it had not been
released before, and the contents of the notes depended on whoever
happened to cut the release.

The new workflow runs on demand from the Actions tab and takes the
version number as its only input. It rejects a malformed number and one
that is already tagged, refuses to run outside main, collects the
commits since the previous release into Features, Bugfixes and Tasks
sections, creates the tag and publishes the GitHub Release. A version
with a suffix such as 4.1.0-beta.1 is published as a prerelease and
does not replace the current stable release. Stable releases list
everything since the last stable one, including what already shipped in
intermediate betas, while each beta lists only its own changes.

Tag names carry no leading "v". The old v3.0.0 and v3.0.1 tags stay as
they are, but every new release uses the plain number and so matches
the 1.0.x, 2.0.0 and 4.0.0 tags.
@chriwo
chriwo requested review from SomeBdyElse and s12r September 24, 2026 08:16
@chriwo chriwo self-assigned this Sep 24, 2026
@chriwo
chriwo requested a review from d-s-codappix October 5, 2026 06:05
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.

1 participant