Cut releases from the Actions tab - #14
Merged
Merged
Conversation
Releasing still meant knowing the next version, tagging by hand and getting the tag format right, which is three chances to be wrong about something a script can work out. Actions -> Release -> Run workflow now offers major, minor or patch, patch being the default. The workflow reads the last tag, works out the next version, runs both suites, tags the commit and publishes. - Version sorting is version-aware, so v10.0.0 wins over v2.9.9 rather than losing to it alphabetically, and v2.9.9 as a minor gives v2.10.0. - It refuses to run from anywhere but main, and refuses to reuse a version that already exists. - The chosen version appears in the run summary before anything is pushed. The tag-push trigger is gone: two routes to a release is one more than is useful, and a tag pushed by a workflow does not trigger workflows anyway, so it would have been a trap.
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.
Releasing still meant knowing the next version, tagging by hand and getting the
tag format right — three chances to be wrong about something a script can work
out. As asked: it should be a button.
Actions → Release → Run workflow, then choose:
patch(default)minormajorThe workflow reads the last tag, works out the next version, runs both test
suites, tags the commit and publishes with generated notes.
Details worth checking in review
--sort=-v:refname, sov10.0.0beatsv2.9.9ratherthan losing to it alphabetically. Verified against a repository with
v2.0.0,v2.9.9,v2.10.0,v10.0.0andv2.0.10: a plain sort picksv2.9.9, the version-aware sort picksv10.0.0.v2.9.9as a minorgives
v2.10.0, notv2.1.0, andv2.0.9as a patch givesv2.0.10.main, and refuses to reuse a versionthat already exists.
The tag-push trigger is removed. Two routes to a release is one more than is
useful, and a tag pushed by a workflow does not trigger other workflows, so
keeping it would have been a trap: a tag created here would silently not have
published.