[Haskell-cafe] Can everyone please update your code to the latest
QuickCheck, Parsec, and HaXml this week? Thanks!
jeremy at n-heptane.com
Sun Mar 28 19:22:41 EDT 2010
I keep running into issues where I want to use some version of parsec,
quickcheck, haxml, etc, in my code, but my code links against a different
third party library (e.g. network) which uses a different version of the
library (e.g., parsec) than what I want to use, and that makes cabal
If I use, runhaskell Setup.hs configure, I get warnings like:
~/n-heptane/projects/haskell/web-routes/web-routes-happstack $ runhaskell
Setup.hs configure --user
Warning: This package indirectly depends on multiple versions of the same
package. This is highly likely to cause a compile failure.
package network-220.127.116.11 requires parsec-18.104.22.168
package hsemail-1.3 requires parsec-22.214.171.124
package happstack-util-0.4.3 requires parsec-126.96.36.199
package happstack-server-0.4.3 requires parsec-188.8.131.52
package web-routes-0.18 requires parsec-3.1.0
Now, the project actually builds and runs fine, because the code in network
that uses parsec and the code in my library that uses parsec do not interact
at the parsec-level at all.
But, cabal install can not handle this, because it (currently) can't *know*
that it's actually going to work.
Now, parsec and quickcheck are in the haskell platform. So, that should
drive a lot of packages to use the same versions. But what about libraries
such as HaXml which are not in the platform? Or what about this case where I
want parsec 3, even though parsec 2 is in the haskell platform?
Any ideas about what should be done? We have this problem with QuickCheck
and happstack when people try to cabal install gitit. And I am running into
the problem again with the urlt / web-routes library.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe