Proposal: packages in GHC should have different versions from hackage if the packages differ
Henning Thielemann
lemming at henning-thielemann.de
Mon Oct 15 16:48:20 CEST 2012
I opened the following ticket [1] about the versioning of packages shipped
with GHC, but was told to start a discussion first. I hope
libraries at haskell.org is the right place to do that.
[1] http://hackage.haskell.org/trac/ghc/ticket/6053
Let me repeat the issue description here:
I try to compile a package with many dependencies using GHC-7.5.20120426
in order to check whether #5970 is resolved. This turns out to be
difficult because this temporary GHC version seems to use packages with
the same version as their counterparts on Hackage but different content.
For example GHC-7.5.20120426 is bundled with unix-2.5.1.0 and
bytestring-0.10.0.0. However the unix-2.5.1.0 on Hackage excludes
bytestring-0.10.0.0. Thus cabal-install refuses to install something that
depends on unix-2.5.1.0.
Another example: Both GHC-7.4.1 and GHC-7.5.20120426 are bundled with
base-4.5.0.0. However in GHC-7.5, Num is no longer superclass of Bits. I
think such a change requires a version bump to base-4.6.
In my opinion the condition should be that if you publish a package on
Hackage then there should not be a package with the same version but
different content somewhere else. Thus I propose that package versions are
increased immediately in the repository according to the PVP if something
is changed. That's how I handle versioning for my private packages, too.
More information about the Libraries
mailing list