Out of curiosity, have you tried using cabal-dev? It's far from a panacea, but it does mitigate library version issues. And, AFAIK, it's getting rolled into cabal proper Real Soon Now (see: http://hackage.haskell.org/trac/hackage/wiki/SandboxedBuilds... ).