Upgrading packages/Updating to GHC 6.10

From HaskellWiki
Jump to navigation Jump to search

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

Updating to GHC 6.8 and Cabal 1.2

Cabal configuration support

Cabal API changes

Many packages that use non-default Setup.hs or Setup.lhs files need to be updated as they use Cabal APIs that have changed. In many cases new features in Cabal-1.2 allow these packages to go back to using the default Setup.hs.

A more detailed survey of the packages from the hackage collection is here: http://www.haskell.org/pipermail/libraries/2007-September/008265.html

base package split up

The base package was split up, and new dependencies are now required;

  • array
  • bytestring
  • containers
  • random
  • pretty

and more. Dealing with these is a simple matter of installing the packages from hackage, and updating the build-depends in your cabal file.

Data.ByteString api changes

module Data.ByteString.Base has been split into two. The "unsafe" functions moved to Data.ByteString.Unsafe and the others moved into Data.ByteString.Internal. The stable API going forward is all the modules exposed by the bytestring package except for the .Internal modules and the .Fusion module.

The lazy list representation type has changed.