[Haskell-beginners] Why does Haskell PVP have two values for the major version? "A.B..." and a couple other questions

Zach Moazeni zach.lists at gmail.com
Tue Dec 16 00:38:19 UTC 2014


Hello,

Forgive me if this is a frequently asked question, I've searched the web
and can't find an answer.

What is the history that led up to the PVP
<https://www.haskell.org/haskellwiki/Package_versioning_policy> specifying
two values as the major version?

I come from other tools that primarily use http://semver.org/ (or a
variant) and I'm confused in what cases I should bump "A" but not "B" (or
bump "B" but not "A")?

A concrete example: If I make backwards incompatible changes to a package
whose latest version is 1.0.x, should the next version be 2.0.x or 1.1.x?
What sorts of things should I consider for choosing 2.0 over 1.1 and vice
versa?


Another question, by far most packages I have encountered either lead with
a 0 or a 1 for "A". Does that have some bearing on the long term stability
that package users should expect in the future?

Finally, if "1.0.x.." is meant to convey a level of long term support, does
"B" get rarely used? Since "C" version bumps to include backwards
compatible additions, and "D"+ for backwards compatible bug fixes. (I know
"D" isn't technically a PVP category, I'm just relating it to the patch
version of semver).

Thanks for your help!
-Zach
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/beginners/attachments/20141215/858c0f25/attachment-0001.html>


More information about the Beginners mailing list