[Haskell-cafe] Package compatibility (SemVer, PVP, ECT)

Thiago Negri evohunz at gmail.com
Fri Sep 13 05:25:20 CEST 2013


I've just read Semantic Versioning (SemVer) [1], Package Versioning Policy
(PVP) [2] and Eternal Compatibility in Theory (ECT) [3].

Is PVP the one that every package on Hackage should use?
SemVer seems to make more sense to me.

Also, ECT looks very promising, but it is dated back to 2005 and I didn't
see any package using it. Why?

If Cabal could map the package version number to the versioned module name,
there will be no need to "uglify" the client code. I mean, when I import
module A and define in dependencies "a == 1.8.3", Cabal would map that to
module A_7 and bind that to the "A" I've imported. We would be locked in
with Cabal, but that seems to be a good tradeoff.

[1] http://semver.org
[2] http://www.haskell.org/haskellwiki/Pvp
[3]
http://www.haskell.org/haskellwiki/The_Monad.Reader/Issue2/EternalCompatibilityInTheory
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130913/77e7e6c2/attachment.htm>


More information about the Haskell-Cafe mailing list