| Newsgroups |
gmane.comp.java.junit.user |
| Message-ID |
<[email protected]> |
Hi JUniters,
In light of the ongoing discussion about backward compatibility, it may
be worth considering the adoption of semantic versioning.
http://semver.org/
In semantic versioning, only major releases are allowed to introduce
breaking changes.
Thus, given the ongoing discussion, if JUnit wants to comply with
semantic versioning, the new release should be called 5.0 and not 4.12.
In relation to deprecation: Semver requires the addition of deprecation
tags first (as done correctly by JUnit), followed by the removal of the
methods or classes in a major release (which now incorrectly is
scheduled for a minor release).
As another point, semver also typically uses three numbers,
major.minor.patch.
So far JUnit releases have not been very frequent, but if the junit
teams wants to increase the frequency of bug fix releases, having an
explicit version number for that would be useful too.
This would call for naming the new release 5.0.0.
Yet an alternative is to continue with 4.x for now, yet postpone (to
some point in the future) the introduction of breaking changes to the
upcoming 5.x. (I think this is what Henrik Kaipe is arguing for).
Cheers,
Arie
------------------------------------
Posted by: Arie van Deursen <[email protected]>
------------------------------------