2

Trying to install criterion, I run into troubles with other packages that I rely on wanting to be reinstalled. Reinstalling them breaks everything (I've tried).

$ cabal install criterion
Resolving dependencies...
In order, the following would be installed:
Glob-0.7.5 (new package)
abstract-deque-0.3 (new package)
abstract-par-0.3.3 (new package)
blaze-builder-0.4.0.1 (new package)
cereal-0.4.1.1 (new package)
erf-2.0.0.0 (new package)
ieee754-0.7.6 (new package)
hastache-0.6.1 (new package)
monad-par-extras-0.3.3 (new package)
parallel-3.2.0.6 (new package)
primitive-0.5.4.0 (latest: 0.6) (new version)
vector-0.10.12.3 (reinstall) changes: primitive-0.6 -> 0.5.4.0
aeson-0.8.0.2 +old-locale (reinstall) changes: mtl-2.1.3.1 -> 2.2.1
cassava-0.4.2.2 (new package)
mwc-random-0.13.3.2 (new package)
monad-par-0.3.4.7 (new package)
vector-algorithms-0.6.0.3 (new package)
vector-binary-instances-0.2.1.0 (new package)
vector-th-unbox-0.2.1.2 (new package)
math-functions-0.1.5.2 (new package)
statistics-0.13.2.3 (new package)
criterion-1.1.0.0 (new package)
cabal: The following packages are likely to be broken by the reinstalls:
yaml-0.8.10.1
stylish-haskell-0.5.11.2
hashtables-1.2.0.2
haskell-docs-4.2.5
Use --force-reinstalls if you want to install anyway.

Now, how do I find out whether to blame criterion for this (for using too old dependencies) or the other packages (for not being updated enough)?

Artem Shitov
  • 277
  • 1
  • 7
Fredrik Karlsson
  • 485
  • 8
  • 21

1 Answers1

5

Neither. That's just how it works; a package built with a library version as a dependency might get incompatible very quickly. The number of possible combinations is just too great.

You have two options, basically:

AndrewC
  • 32,300
  • 7
  • 79
  • 115
Bartek Banachewicz
  • 38,596
  • 7
  • 91
  • 135