Re: semantic versioning & backward compatibility

"Stefan Birkner [email protected] [junit]" <[email protected]> Mon, 11 Aug 2014 21:49:34 +0200
Newsgroups gmane.comp.java.junit.user
Message-ID <CAHhYVJ5uvcZ8S7ObX2KrXr=ZWamJy7dFz3YsNhQ2moRd6v12=A@mail.gmail.com>
I like semantic versioning, too. But I think most users expect something
big if we release JUnit 5. IMHO JUnit 4 is not only the version 4.x of
JUnit. It stands for JUnit with annotations. Nevertheless, it may be worth
a try.


2014-08-11 20:07 GMT+02:00 Arie van Deursen [email protected]
[junit] <[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
>  
>