Skip to content
This repository was archived by the owner on Oct 18, 2024. It is now read-only.

Versioning

Akash Yadav edited this page Sep 19, 2023 · 3 revisions

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.

Basics

AndroidDIDE uses semantic versioning. The version numbers are automatically incremented by Nyx based on the type of conventional commits. Specifically :

  • fix commits increment the PATCH version number.
  • feat commits increment the MINOR version number.
  • ANY type of commit with a BREAKING CHANGE update the MAJOR version number.

Version name format

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.[...]

Configuration

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.

Clone this wiki locally