[Haskell-cafe] Versioning of libraries bundled with GHC pre-releases

Ben Gamari ben at well-typed.com
Tue Jan 16 18:35:18 UTC 2018

TL;DR. We propose to start following the PVP for core libraries shipped
       with GHC alpha release. Let us know what you think.

Hello everyone,

GHC has recently been reworking its release policy, increasing the
release cadence to two releases per year. We hope that this change
facilitates earlier and more thorough testing of GHC. Of course,
a compiler is worth little if no real-world packages can be built with

Historically library maintainers have been reluctant to offer releases
claiming compatibility with pre-release GHCs due to the lax versioning
guarantees offered by such pre-releases. Specifically, changes to
libraries shipped with GHC pre-releases have historically not had
proper distinct version numbers, causing unnecessary breakage for
released code (e.g. [1]).

To make maintainers feel more at ease with releasing libraries
compatible with GHC alpha releases, we propose to start using the
Package Versioning Policy (PVP) [2] to version GHC's core libraries with
each alpha release. That is, libraries which are not source-identical
will get at very least a minor bump with each alpha release.

By "core libraries" we mean the set of:

 * base
 * template-haskell
 * integer-gmp
 * integer-simple
 * hpc
 * ghci
 * ghc-compact
 * all GHC dependencies not maintained by GHC HQ
 * ghc-prim
 * ghc-boot
 * ghc-boot-th

Following the PVP will allow maintainers to safely release libraries to
Hackage without fear that they will break when the final GHC 8.4.1
release is made, easing the testing process for everyone.

If you have an opinion one way or another on this matter please do share
it on this list.


- Ben

[1] https://github.com/tibbe/hashable/issues/143
[2] https://pvp.haskell.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180116/17005389/attachment.sig>

More information about the Haskell-Cafe mailing list