SemVer Support

Status: Investigating

Sponsor User: IBM

Date of Submission: Aug 26, 2021 

Submitted by: Glen Darling

Affiliation(s): IBM

<Please fill out the above fields, and the Overview, Design and User Experience sections below for an initial review of the proposed feature.>

Scope and Signoff: (to be filled out by Chair)

Open Horizon should more completely support semantic versioning (semver). Currently oniy: "N", "N.N", and "N.N.N" semvers are supported.

Overview

I think we should fully support the current semver syntax, semver 2.0 (https://semver.org) for any resource types that have versions and are managed by Open Horizon through its REST APIs. Most especially this is needed for Services. Semver is ubiquitous in our industry and users have come to expect its flexibility so they are surprised when they see the restrictions in our limited implementation.

Design

Likely this would require multiple changes in the CLIs, APIs, file formats, and internal algorithms.

User Experience

Users often use the widely known semver syntax (e.g., "1.0.1.23" or "2.1.5-beta") only to have this rejected by Open Horizon.

Command Line Interface

(none)

External Components

(none)

Affected Components

(unknown – likely many)

Security

(none)

APIs

Likely there would be corresponding API changes.

Build, Install, Packaging

(none)

Documentation Notes

This new feature would have to be documented, of course.

Test

This new feature would have to be tested, of course.