Back to Knowledege base

Understanding Product Versioning

Understanding the new versioning scheme for Xi-Batch Legacy and Xi-Text Legacy

Version Number Format

Xi Software now uses semantic versioning (semver) standard with the format:

MAJOR.MINOR.PATCH+BUILD

Example: 1.7.0+6654775c

MAJOR version (1) : Significant changes, possible breaking compatibility

MINOR version (7) : New features, backwards compatible

PATCH version (0) : Bug fixes, no new features

BUILD suffix (+6654775c) : Git commit hash identifying exact source code state

Product Naming

Products include _legacy suffix to indicate sunset status:

xibatch_legacy : Xi-Batch maintenance releases

xitext_legacy : Xi-Text maintenance releases

xiutil_legacy : Xi-Util utility programs

The legacy designation indicates these versions receive maintenance and support but are not the primary development focus.

Distribution File Naming

Distribution archives follow this structure:

CPU-MFR-OSNAME-PRODUCT-BLEND-VERSION.tar.gz

Example Xi-Batch:

x86_64-linux-rockylinux9.3-xibatch_legacy-standard-1.7.0+6654775c.tar.gz

Example Xi-Text:

x86_64-linux-rockylinux9.3-xitext_legacy-standard-1.24.0+6654775c.tar.gz

Naming Components

CPU architecture (x86_64) : Processor type - x86_64, aarch64, parisc, powerpc, sparc

Manufacturer/OS family (linux) : Operating system family - linux, hp-ux, aix, solaris

OS name (rockylinux9.3) : Specific distribution and version

Product (xibatch_legacy) : Which Xi Software product

Blend (standard) : Build variant - "standard" or custom blend name

Version (1.7.0+6654775c) : Semantic version with build identifier

Extract Folder Format

Archives extract to directory named:

PRODUCT-BLEND-VERSION

The build suffix is excluded from directory name.

Examples:

  • xibatch_legacy-standard-1.7.0/
  • xitext_legacy-standard-1.24.0/
  • xiutil_legacy-standard-1.0.3/

Why Versioning Changed

Platform diversity : Linux distributions vary in libraries and system configurations

Build traceability : Build suffix identifies exact source code and build time

Automated builds : Standardised naming enables automated build and test processes

Industry alignment : Follows established versioning standards (semver)

Customer clarity : Clear identification of product, platform, and variant

Checking Installed Version

Use the whatvn utility to display version information:

Xi-Batch:

bash

whatvn /usr/spool/progs/btsched

Xi-Text:

bash

whatvn /usr/spool/progs/spshed

Output displays product name, version number, build date, and platform.

Version Compatibility

Within same MAJOR version : Minor and patch updates are compatible. No migration needed.

Example: Upgrading from 1.6.5 to 1.7.0 requires only stopping service, installing new binaries, restarting.

Between MAJOR versions : May require migration. Follow migration procedures documented in Administrator Guide.

Example: Moving from 0.x to 1.x would require data export/import.

Identifying Custom Builds

Standard blend : Unmodified release suitable for general use

Custom blend name : Specific configuration for customer requirements

Custom blends appear in filename:

x86_64-linux-rockylinux9.3-xibatch_legacy-customername-1.7.0+6654775c.tar.gz

Contact Xi Software support to request custom blends or verify blend requirements.

Build Suffix Interpretation

The build suffix (e.g., +6654775c) is the Git commit SHA-1 hash. This enables:

Exact source identification : Trace build to specific source code state

Rebuild verification : Confirm rebuild produces identical binaries

Support diagnosis : Xi Software support can identify precise code version

Quality tracking : Link reported issues to specific builds

Multiple Builds of Same Version

The version number (1.7.0) represents the code version. Multiple builds of the same code have different build suffixes:

  • 1.7.0+6654775c - Original release
  • 1.7.0+8a9b1234 - Rebuilt for different platform

Both contain identical code (version 1.7.0) but were built at different times or for different targets.

Automated Licence Renewal
Script-based licence management for Internet-connected systems