Upgrading packages

From HaskellWiki
Revision as of 23:44, 23 October 2016 by Gbaz (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

A list of things that need updating when porting packages to newer library/cabal versions.

If you maintain a Haskell package this is for you. For older versions of this document:

Most new tips for fixing build failures are tracked at https://github.com/haskell-infra/hackage-trustees/blob/master/cookbook.md

This page only tracks updates through 7.0 and earlier.

Updating to GHC 7.0

When upgrading to GHC 7.0, any of your packages that worked against the base-3 library will need to be updated to the base-4.

Compatibility with older GHC

Use cabal's conditional thingy, checking on impl(ghc >= x.yz). E.g:

   ghc-options:         -Wall -fexcess-precision -funbox-strict-fields
   if impl(ghc >= 6.12)
       ghc-options:     -fno-warn-unused-do-bind