Re:Why inbreeding is bad for your community
by dllthomas on Sunday October 28, 2012 @02:51PM
(#4709629)
I admit, not having published a haskell package yet, that I've only done a shallow reading of the PVP - is it actually incompatible with semantic versioning or orthogonal? That is, is it possible in the general case to adhere to both? If not, are they incompatible in most cases or very few?
Re:Why inbreeding is bad for your community
by aristidb on Sunday October 28, 2012 @07:28PM
(#4710332)
This is the biggest difference (quote from semver.org):
"Major version X (X.y.z | X > 0) MUST be incremented if any backwards incompatible changes are introduced to the public API. It MAY include minor and patch level changes. Patch and minor version MUST be reset to 0 when major version is incremented."
Meanwhile the PVP lets you get away with just updating the minor version there.
Re:Why inbreeding is bad for your community
by dllthomas on Monday October 29, 2012 @01:54AM
(#4711256)
Oh, I realize that PVP does not require everything semantic versioning does. It sounds like PVP requires nothing semantic versioning forbids, nor vice-versa? In which case, you could (and, I would assert, should) follow both.
One thing that is wrong is the lack of "semantic versioning". There is the Package Versioning Policy (http://www.haskell.org/haskellwiki/Package_versioning_policy), and most packages now adhere to it. Granted, its prescriptions differ from "semantic versioning", and some people disagree that Haskell packages should specify such restrictive versioning boundaries all the time.
(The PVP essentially says that for a version a.b.c.d, every change of a or b means that the API might have changed. Now it might be that most packages are not even affected by the change...)