-
-
Couldn't load subscription status.
- Fork 24
Versioning
The AndroidIDE version numbers are incremented automatically based on the commit messages and the previous releases. This is achieved using the Nyx project. Nyx is a powerful, flexible and extremely configurable semantic release tool.
AndroidIDE uses semantic versioning. The version numbers are automatically incremented by Nyx based on the type of conventional commits and previous release. Specifically :
-
fixcommits increment the PATCH version number. -
featcommits increment the MINOR version number. - ANY type of commit with a
BREAKING CHANGEupdate the MAJOR version number.
For example, if the previous release's version name was v2.5.3-beta and then the new version will be:
-
v3.0.0-beta- if at least one commit has aBREAKING CHANGE. -
v2.6.0-beta- if there are no breaking changes and least one commit has typefeat. -
v2.5.4-beta- if there are no breaking changes, nofeatcommits and at least one commit has typefix.
The release version names specified in the following format :
v[MAJOR].[MINOR].[PATCH]-[PRE-RELEASE]
For example : v2.5.3-beta.
The CI builds contain additional information in their version names. This makes it easier for us to know the exact version for debug builds and fix issues faster :
v[MAJOR].[MINOR].[PATCH]-[PRE-RELEASE].[RELEASE-TYPE].[REVISION]+branch.[BRANCH-NAME].commit.[SHORT-COMMIT-HASH].timestamp.[TIMESTAMP]
For example : v2.5.3-beta.internal.1+branch.dev.commit.41779f3.timespamp.[...]
Nyx is configured using the .nyx.yml file located in AndroidIDE project's root directory. A detailed documentation about using Nyx is available on the project's site.
The Nyx Gradle plugin is applied to the settings.gradle.kts file and the configuration file is set by configuring the NyxExtension. Read the Nyx documentation for more details.