There's been some discussion brought up about versioning as part of the JDK
17 thread for Artemis so I wanted to break it out into another thread.

That thread made it apparent that the project doesn't really have any
guidelines on how we do versions so I think it would be a good idea to
decide on our versioning policy going forward and what we are allowed to
change between major/minor/patch releases. We don't have to actually adopt
SemVer 2.0 but it's a good starting point for discussion.

As a good example on another project, I'm also on the PMC for Apache
Accumulo and we have a policy defined for long term releases and we also
adopted SemVer 2.0 and have a well documented policy on it:
https://accumulo.apache.org/contributor/versioning

Accumulo has also defined the public API and what is actually guaranteed to
change only in accordance with SemVer 2.0: https://accumulo.apache.org/api/
Any code outside the public API does not need to follow SEMVER and can
change in any release. This reduces the burden because trying to be super
strict for all code would be pretty hard to do and not necessary.

Thoughts?

Reply via email to