user1698641
user1698641

Reputation: 211

How to find installed reverse dependencies of a package in cabal

I need to install newest base package but cabal does not let me to do it

cabal install base --reinstall
Resolving dependencies...
cabal: Could not resolve dependencies:
next goal: base (user goal)
rejecting: base-4.8.2.0, 4.8.1.0, 4.8.0.0, 4.7.0.2, 4.7.0.1, 4.7.0.0, 4.6.0.1,
4.6.0.0, 4.5.1.0, 4.5.0.0, 4.4.1.0, 4.4.0.0, 4.3.1.0, 4.3.0.0, 4.2.0.2,
4.2.0.1, 4.2.0.0, 4.1.0.0, 4.0.0.0 (only already installed instances can be
used)
rejecting: base-3.0.3.2 (conflict: base => base>=4.0 && <4.3)
rejecting: base-3.0.3.1 (conflict: base => base>=4.0 && <4.2)
Dependency tree exhaustively searched.

So I think that when I unregister the dependencies which are holding this package to the old version I can do it

ghc-pkg unregister some_annoying_package

But how can I find these packages. I found only

cabal-db revdeps base

which gives me all the dependencies form hackage not just the installed one.

Upvotes: 1

Views: 310

Answers (1)

user1698641
user1698641

Reputation: 211

Updating compiler updated the base package. As explained by user2407038:

You cannot reinstall base with cabal. If you need to update base, you must update your compiler version. In general, if you do ghc-pkg unregister it will first tell you what will be broken by this (and hence, the dependencies which you need to unregister to unregister ) but this doesn't apply in this case.

Upvotes: 1

Related Questions