Skip to content

VersionManager

Benedikt Hensen edited this page Nov 27, 2018 · 2 revisions

Version Manager

In order to keep track of the development status and the feature sets which is included in the installations on different devices, GaMR uses version numbers.

Frontend Versioning Scheme

The versioning follows the following scheme:

major . minor . patch platform-abbreviation - platform-patch

The first three numbers follow the standard versioning. Behind this, there is an abbreviation for the target platform so that it is obvious from the version name. The last number which is separated from the rest by a minus is a platform specific path number. It is used for patches which are only required for one platform, e.g. adaption for this particular platform. If the main version moves on, the platform-specific patch-number is reset back to 0.

An example would be 1.5.4v-1 which shows that this is the version 1.5.4 for the HTC Vive. One platform-specific patch was applied to this version.

If the platform-patch number is 0, it is left away, e.g. 1.5.4d instead of 1.5.4d-0.

For the HoloLens-version the platform specific patch number is always 0 because it is the main development version. Any patches here are patches which are distributed over all platforms.

Abbreviations for Platforms

Platform Abbreviation
HoloLens h
Desktop (Windows UWP) d
HTC Vive v
Mobile m

If you see the abbreviation err, an error in the version recognition happened. Please report its occurrence.

Versioning for the Backend

The backend has its own version cycles and so it gets its own version number. This version number follows the standard scheme of major . minor . patch

The version manager also stores the version number of the backend with which the frontend-version was developed. In the future this might be used to check the compatibility of frontend and backend installation.

Functionality

The version manager uses Unity's version attribute in the Player Settings. This gives the major, minor and patch version number. The target platform can be set in the version manager's component. It can be found in the Consistent Managers. You should apply any settings to the version manager in the Login scene since its values are applied in production.

The version manager also shows a field where you can enter the platform-specific patch number and the backend version.

Scripts can access the full version number of the frontend which follows the scheme described above as a string in VersionManager.Instance.VersionNumber. An example for this can be found in the settings menu which displays the version number on the top bar.

See also

  • Platform Organization: Contains a description and guidelines for managing the platforms. The version numbers follow these principles.
Clone this wiki locally