📦 NEW: Add release management using Semantic Release#1
Open
michaelborn wants to merge 2 commits intohomestar9:masterfrom
Open
📦 NEW: Add release management using Semantic Release#1michaelborn wants to merge 2 commits intohomestar9:masterfrom
michaelborn wants to merge 2 commits intohomestar9:masterfrom
Conversation
This github action adds a Semantic Release workflow to the github actions commit. On push, Semantic Release will: 1. Read all commits since the last release version 2. Inspect the commit messages using the `EmojiLogCommitParser` 3. Set the new version number based on the parsed commits (more later) 4. Push the new release to ForgeBox 5. Create a new release on Github The version number is set using a combination of Emoji Log and Semantic Versioning: 1. Commits beginning with `‼ BREAKING` will bump the major version and reset the minor and patch version. (`X.0.0`) 2. Commits beginning with `📦 NEW:` will bump the minor version and reset the patch version. (`0.X.0`) 3. All other commits will bump the patch version. (`0.0.X`)
It's important to keep a box.json in place for integration with forgebox. For example, the `version` property is used when automating releases, and the `repository`, `slug`, and `name` are all used (among others) when showing the package in ForgeBox.
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.
This PR adds:
box.jsonfor forgebox integrationfor automating releases using Semantic Release, ForgeBox, and the Emoji Log commit standard.
How To Configure:
GH_TOKENand paste the access token you grabbed in step 1.FORGEBOX_TOKENand paste the forgebox token.Daily Use
From now on, by using the Emoji Log plugin you will get proper Semantic Versioning for your package, automated releases, and super-sweet release notes formatted with emoji headings! 🚀 Each new commit and push to the master branch will trigger a new release 📦 . Most of those releases will be minor or patch releases, but any
‼ BREAKINGcommit will trigger a major release. This ensures that users pinned to a specific major version (likerememberMe^1.0.0) will get all the updates for that major version without jumping to the next major version and having to deal with a breaking change. (More on versioning below.)How It Works:
On push, Semantic Release will:
EmojiLogCommitParserHow Are the Release Version Numbers Determined?
The version number is set using a combination of Emoji Log and Semantic Versioning:
‼ BREAKINGwill bump the major version and reset the minor and patch version. (X.0.0)📦 NEW:will bump the minor version and reset the patch version. (0.X.0)0.0.X)