Project

General

Profile

Actions

Feature proposal #8516

open

Change version structure

Added by krileon over 3 years ago. Updated 3 months ago.

Status:
Assigned
Priority:
Normal
Assignee:
Target version:
Start date:
17 May 2021
Due date:
% Done:

0%

Estimated time:

Description

Currently build releases cannot be version checked by Joomla. This is because Joomla uses version_compare which cannot handle +build metadata. This prevents CB from moving away from its own plugin installer since we need to version check build releases.

One option is to change the version structure to a 4 digit structure as follows.

MAJOR.MINOR.PATCH.BUILD

So for example the following would be a build release.

3.0.0.1

While this will work it doesn't adhere to semver 2.0 and could cause potential issues later. Typically build metadata is done as follows.

MAJOR.MINOR.PATCH-BUILD

But this doesn't work for us since we want the build to have precedence over MAJOR.MINOR.PATCH and -BUILD behavior doesn't have precedence over stable. We're currently using the following.

MAJOR.MINOR.PATCH+build.BUILD

This doesn't work with version_compare at all since version_compare is not metadata aware. Typically you'd use the following if you want build precedence.

Current Stable: 1.0.0
Next Stable: 2.0.0
Build: 2.0.0-1

This doesn't work for us either since we'd need to know what the next stable is going to be and it might not be 2.0.0 and could be 2.0.1, etc.. Needs further testing and consideration as we need something version_compare compatible and something GIT taggable. With MAJOR.MINOR.PATCH-BUILD being the correct usage need to figure out how we want to best handle this.

Actions

Also available in: Atom PDF