Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Commonalities release versioning #307

Open
eric-murray opened this issue Sep 30, 2024 · 3 comments
Open

Commonalities release versioning #307

eric-murray opened this issue Sep 30, 2024 · 3 comments
Labels
subproject management Indicating issues with subproject repository or release management process

Comments

@eric-murray
Copy link
Collaborator

Problem description
The current proposal for the "name" (i.e. version) of the next Commonalities release is "0.5.0". The issues with using semantic versioning for Commonalities documentation are:

  • Using semantic versioning with major version 0 rather begs the question as to when the Commonalities documentation will become "stable". There are no agreed criteria that would result in a major version bump.
  • The release is a set of documents and artifacts that may have their own separate release number. Using semantic versioning for both the release as a whole and documents within may cause confusion if and when these version numbers diverge.

Expected action
Herbert has made a proposal in Release Management to adopt the same release notation as is used for sub-projects, decoupling the release version number from the separate version number (if any) of the included documents and artifacts. If this proposal was adopted, then the next release (likely an "alpha") would be named r2.1, with subsequent versions resulting in a minor version bump until the final version for the next meta-release is declared.

This proposal should be discussed within Commonalities

Additional context
API (sub-project) release numbering rules are documented here

@eric-murray eric-murray added the subproject management Indicating issues with subproject repository or release management process label Sep 30, 2024
@rartych
Copy link
Collaborator

rartych commented Oct 2, 2024

The version of Commonalities can be indicated in the VERSION file in the main folder of the repository.
Specific artifacts can be additionally versioned according to needs in the content of the respective files.

@tanjadegroot Am I right that the release version number is decoupled from meta-release process?
If so, then the next Commonalities release should start from r1.1.

@eric-murray
Copy link
Collaborator Author

@rartych
For sub-projects, the major version number refers to the meta-release. So 1 is Fall24, 2 is Spring25 and so on.

To my mind, Commonalities (and ICM) should adopt the same approach. So Commonalities (pre-)releases for the Spring25 meta-release should be numbered r2.x. That way, it will be known that the "final" Commonalities release for a given meta-release will be the highest minor version for the associated meta-release major version number, even though the final minor version cannot be set in advance and can always be updated (e.g. patch releases to fix documentation errors).

@eric-murray
Copy link
Collaborator Author

@rartych
Turns out I was wrong about the relationship between the major version number and the meta-release. So the major version is bumped only after an API has been included in a meta-release, but is not bumped if an API is not included in a meta-release. So any new API for the next meta-release would be r1.y, whereas APIs that were in the Fall24 meta-release would be r2.y.

Commonalities was part of the last meta-release, but did not use the rx.y notation. So indeed I think we do need to start at r1.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
subproject management Indicating issues with subproject repository or release management process
Projects
None yet
Development

No branches or pull requests

2 participants