[dev] versions, .horde.yml and correct tagging

Ralf Lang lang at b1-systems.de
Tue Feb 23 13:00:42 UTC 2021


Hello,

on the weekend I worked a bit on the composer release toolchain in my
version of horde-components.
Good news is I think it works ;)

Bad news is I am a little unsure about versioning.

What I found out:

Current release branch FRAMEWORK_5_2 has:

.horde.yml

release: 5.2.24

api: 5.2.0

state:

release: stable

api: stable
version:

Application.php has

public $version = '6.0.0-git';


current master branch has:

.horde.yml

release: 6.0.0

api: 6.0.0

state:

release: beta

api: beta
version:

Application.php has

public $version = '6.0.0-git';

public $version = '5.2.24';

The latest tagged version is: 5.2.23


Similar pattern for imp:
Version master is 7.0.0, version Framework_5_2 is 6.2.28, latest tagged version is 6.2.27

So I understand: New major revision of the framework = new major revision of all libraries/apps, regardless of actual feature progress or bc break.

The complicated part comes with alpha/beta/rc releases as I did not yet find good examples of .horde.yml for these.

If I build a testing FRAMEWORK_6_0 branch and release, it would look like this:

In the first iteration, FRAMEWORK_6_0 would be a clone from master, plus two release related commits

The first tagged version would be "version 6.0.0" and the tag would be 6.0.0beta1, the $version string in the app would be 6.0.0beta1
The version on the branch would be "version 6.0.0" (as we would still be in beta counting), the $version string would be 6.0.0beta2 as a next tag would be 6.0.0beta2.

As soon as releases hit stable, the tip of branch would always be one patch level ahead of the latest tag.


-- 
Ralf Lang
Linux Consultant / Developer
Tel.: +49-170-6381563
Mail: lang at b1-systems.de
B1 Systems GmbH
Osterfeldstraße 7 / 85088 Vohburg / http://www.b1-systems.de
GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537



More information about the dev mailing list