-
-
Notifications
You must be signed in to change notification settings - Fork 506
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.
AndroidDIDE uses semantic versioning. The version numbers are automatically incremented by Nyx based on the type of conventional commits. 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.
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.