OneCx portal UI libraries
OneCX Portal UI Libs is using https://semantic-release.gitbook.io/semantic-release[semantic-release]for packages release. In this repository the following branches are important in context of making new releases:
- main - contains source code for
latest
distribution tag. - develop - contains source code for
rc
distribution tag with features for future release of OneCX.
The main
branch contains the source code for the latest
distribution tag of OneCX libraries. In order to release new version of libs, use create-release
action to run the release workflow for main branch.
Depending on the commits included for a release in the main
branch, the version of the latest
distribution tag varies. Below, a list of example version changes is presented:
- Release fix commit - The patch version increments (e.g.,
5.1.3
→5.1.4
). - Release feat commit - The minor version increments (e.g.,
5.1.3
→5.2.0
). - Release commit with breaking change - The major version increments (e.g.,
5.1.3
→6.0.0
). - Release changes merged from pre-release branch - The major version increments (e.g.,
5.1.3
→6.0.0
).
The https://semantic-release.gitbook.io/semantic-release[semantic-release] allows to create pre-releases. In this repository, develop
branch should contain source code which could be released as a release candidate.
In order to release new version of pre-release (rc
distribution tag) of OneCX libraries, use create-release
action to run the release workflow for develop branch.
Depending on the commits included for a release in the develop
branch, the version of the rc
distribution tag varies. Below, a list of example version changes is presented:
- Release fix commit - The patch version increments (e.g.,
6.0.0-rc.3
→6.0.0-rc.4
). - Release feat commit - The minor version increments (e.g.,
6.0.0-rc.3
→6.0.0-rc.4
). - Release commit with breaking change - The major version increments (e.g.,
6.0.0-rc.3
→7.0.0-rc.1
). - Release changes merged from pre-release branch - The major version increments (e.g.,
6.0.0-rc.3
→7.0.0-rc.1
).
To find out more on pre-releases with semantic-release, please refer https://semantic-release.gitbook.io/semantic-release/recipes/release-workflow/pre-releases[here].
In some cases, there might be a requirement to make a change directly on a main branch (e.g., urgent fix for a client). In that scenario, the following should happen:
- Change is prepared on the
main
branch - Libs are released via the
main
branch - The
main
branch is merged intodevelop
branch - Libs pre-release is released via the
develop
branch