
Aha! I think I know why this happens. The latest versions of ansi-terminal and hspec do not work together. Cabal picks the latest ansi-terminal (0.6) first, then the latest hspec that doesn't conflict with this choice is 0.3.0. I can confirm this by the following: $ cabal install hspec ansi-terminal --dry-run -v Reading available packages... Choosing modular solver. Resolving dependencies... In order, the following would be installed: HUnit-1.2.5.1 (new package) ansi-terminal-0.5.5.1 (new package) hspec-expectations-0.3.0.3 (new package) random-1.0.1.1 (new package) QuickCheck-2.5.1.1 (new package) setenv-0.1.0 (new package) silently-1.2.4.1 (new package) transformers-0.3.0.0 (new package) hspec-1.4.3 (new package) When hspec comes before ansi-terminal, the latest version for hspec is selected and an older version of ansi-terminal is used. Maybe cabal-install should backtrack more and pick a *more optimal *set of latest versions, I don't know. If this is desired, a proximity of the selected versions to the latest available versions might be a good measure. Best, Ozgur