haskell / haskell/cabal

requiring consistent package dependencies can give surprising results

Open
#504 3 comments 0 reactions 0 assignees View on GitHub
cabal-install: solver old-milestone: ⊥ type: enhancement
Dominant language
Haskell
Stars
1.7k
Forks
750
Avg merge
4d 3h
Merged PRs (30d)
28

Description

(Imported from [Trac #511](http://hackage.haskell.org/trac/hackage/ticket/511), reported by guest on 2009-02-27)

I tried running this command:

sudo cabal install test-framework test-framework-hunit test-framework-quickcheck test-framework-quickcheck2

However, Cabal barfed with:

Resolving dependencies...

cabal: cannot configure test-framework-quickcheck-0.2.1. It requires
QuickCheck >=1.1 && <2
For the dependency on QuickCheck >=1.1 && <2 there are these packages:
QuickCheck-1.1.0.0 and QuickCheck-1.2.0.0. However none of them are available.
QuickCheck-1.1.0.0 was excluded because QuickCheck-2.1.0.1 was selected
instead
QuickCheck-1.1.0.0 was excluded because test-framework-quickcheck2-0.2.1
requires QuickCheck >=2.1.0.0
QuickCheck-1.2.0.0 was excluded because QuickCheck-2.1.0.1 was selected
instead
QuickCheck-1.2.0.0 was excluded because test-framework-quickcheck2-0.2.1
requires QuickCheck >=2.1.0.0
This seems to be because the quickcheck and quickcheck2 providers for test-framework by design depend on disjoint versions of `QuickCheck?`. This should not confuse cabal install, since installing the packages sequentially in any order works fine:

sudo cabal install test-framework test-framework-hunit test-framework-quickcheck

sudo cabal install test-framework-quickcheck2

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.