Upgrading packages/Updating to GHC 6.10
From HaskellWiki
(→Updating to GHC 6.10 and Cabal 1.6) |
|||
| Line 2: | Line 2: | ||
If you maintain a Haskell package this is for you. | If you maintain a Haskell package this is for you. | ||
| - | |||
For older versions of this document: | For older versions of this document: | ||
* [[/Updating to GHC 6.8]] | * [[/Updating to GHC 6.8]] | ||
| - | + | '''Updating to GHC 6.10 and Cabal 1.6''' | |
| - | + | When upgrading to GHC 6.10, any of your packages that worked against | |
| + | the base-3 library will continue to work. GHC 6.10 provides both the old | ||
| + | base-3 library and the new base-4. | ||
| - | + | To ensure your old code continues to work, you can have the code compile | |
| - | + | and link against base-3, and then, over time, migrate code to the base-4 | |
| + | series. | ||
| - | === cabal-install=== | + | == Adding base-3 constraints == |
| + | |||
| + | How to do this depends on how you build your Haskell code. We'll start | ||
| + | with the most simplistic build mechanisms. cabal-install, the most | ||
| + | sophisticated tool, will sort this all out for you anyway, so things | ||
| + | should change. | ||
| + | |||
| + | === ghc --make === | ||
| + | |||
| + | Force use of package base-3 when using --make, | ||
| + | |||
| + | ghc --make --package base-3.0.3.0 | ||
===runhaskell === | ===runhaskell === | ||
| - | + | If you build your packages with the 'runhaskell Setup.hs configure' | |
| - | + | method, then you can force the use of base-3, | |
| + | |||
| + | --constraint="base<4" | ||
| + | |||
| + | === cabal-install=== | ||
| + | |||
| + | No change required. Should it be necessary to override, use | ||
| + | |||
| + | --constraint="base<4" | ||
| - | + | == Changes in base 4 == | |
| + | * Exceptions | ||
[[Category:Libraries]] | [[Category:Libraries]] | ||
Revision as of 04:06, 9 October 2008
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:
Updating to GHC 6.10 and Cabal 1.6
When upgrading to GHC 6.10, any of your packages that worked against the base-3 library will continue to work. GHC 6.10 provides both the old base-3 library and the new base-4.
To ensure your old code continues to work, you can have the code compile and link against base-3, and then, over time, migrate code to the base-4 series.
Contents |
1 Adding base-3 constraints
How to do this depends on how you build your Haskell code. We'll start with the most simplistic build mechanisms. cabal-install, the most sophisticated tool, will sort this all out for you anyway, so things should change.
1.1 ghc --make
Force use of package base-3 when using --make,
ghc --make --package base-3.0.3.0
1.2 runhaskell
If you build your packages with the 'runhaskell Setup.hs configure' method, then you can force the use of base-3,
--constraint="base<4"
1.3 cabal-install
No change required. Should it be necessary to override, use
--constraint="base<4"
2 Changes in base 4
- Exceptions
