haskell / haskell/cabal

Solver "rejecting" message is too verbose

Open
#4,251 7 comments 0 reactions 1 assignee Claimed by @erikd View on GitHub
cabal-install: solver type: enhancement
Dominant language
Haskell
Stars
1.7k
Forks
750
Avg merge
4d 3h
Merged PRs (30d)
28

Description

I recently ran into a solver error which was due to my index not being sufficiently up to date (I had updated a Git checkout which specified a bound requiring a version of a package which did not exist at all). Here's the message I got:

```
cabal: Could not resolve dependencies:
trying: cabal-testsuite-1.25.0.0 (user goal)
next goal: aeson (dependency of cabal-testsuite-1.25.0.0)
rejecting: aeson-1.0.2.1, aeson-1.0.2.0, aeson-1.0.1.0, aeson-1.0.0.0,
aeson-0.11.2.1, aeson-0.11.2.0, aeson-0.11.1.4, aeson-0.11.1.3,
aeson-0.11.1.2, aeson-0.11.1.1, aeson-0.11.1.0, aeson-0.11.0.0, aeson-0.9.0.1,
aeson-0.9.0.0, aeson-0.8.1.1, aeson-0.8.1.0, aeson-0.8.0.2, aeson-0.7.0.6,
aeson-0.7.0.4, aeson-0.6.2.1, aeson-0.6.2.0, aeson-0.6.1.0, aeson-0.6.0.2,
aeson-0.6.0.1, aeson-0.6.0.0, aeson-0.5.0.0, aeson-0.4.0.1, aeson-0.4.0.0,
aeson-0.3.2.14, aeson-0.3.2.13, aeson-0.3.2.12, aeson-0.3.2.11,
aeson-0.3.2.10, aeson-0.3.2.9, aeson-0.3.2.8, aeson-0.3.2.7, aeson-0.3.2.6,
aeson-0.3.2.5, aeson-0.3.2.4, aeson-0.3.2.3, aeson-0.3.2.2, aeson-0.3.2.1,
aeson-0.3.2.0, aeson-0.3.1.1, aeson-0.3.1.0, aeson-0.3.0.0, aeson-0.2.0.0,
aeson-0.1.0.0, aeson-0.10.0.0, aeson-0.8.0.1, aeson-0.8.0.0, aeson-0.7.0.5,
aeson-0.7.0.3, aeson-0.7.0.2, aeson-0.7.0.1, aeson-0.7.0.0 (conflict:
cabal-testsuite => aeson==1.1.*)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: cabal-testsuite (65), aeson (57)
```

In terms of "information communicated to me", this is totally backwards. Here are the important pieces of information I want to know:

* What my constraint is, and where it came from (`cabal-testsuite => aeson==1.1.*`)
* That there doesn't exist any version of aeson which fulfills this constraint. I don't need a list of every version in the index

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.