Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Min constraint on mtl breaks LTS Haskell and causes cabal hell #15

Closed
mwu-tow opened this issue Oct 14, 2015 · 5 comments
Closed

Min constraint on mtl breaks LTS Haskell and causes cabal hell #15

mwu-tow opened this issue Oct 14, 2015 · 5 comments

Comments

@mwu-tow
Copy link

mwu-tow commented Oct 14, 2015

The change resulting from #14 broke my builds.
I use stack and lts-2.22 resolver (latest available for GHC 7.8.4). The lts-2.22 contains:
MonadRandom 0.3.0.2
mtl 2.1.3.1

Overriding mtl requires bumping transformers as well (GHC 7.8.4 ships 0.3.0.0) and that breaks compilation of ghc-mtl-1.2.1.0 and causes warnings about packages depending on multiple version of the same package and that things will likely explode. Well, I haven't been able to fix this on my side.

Please consider reverting the mtl constraint at least on MonadRandom 0.3.0.2 to fix the LTS.

@byorgey
Copy link
Owner

byorgey commented Oct 14, 2015

Yikes, I'm so sorry. I was convinced that MonadRandom would not actually build with mtl-2.1. When I relax the lower bound on mtl and try to build with mtl-2.1, this is what I get:

$ cabal install --dry-run --constraint='mtl < 2.2'
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: MonadRandom-0.4 (user goal)
next goal: mtl (dependency of MonadRandom-0.4)
rejecting: mtl-2.2.1, 2.2.0.1, 2.2 (global constraint requires <2.2)
trying: mtl-2.1.3.1
trying: transformers-compat-0.4.0.4 (dependency of MonadRandom-0.4)
next goal: transformers (dependency of MonadRandom-0.4)
rejecting: transformers-0.4.2.0/installed-c1a..., 0.4.3.0, 0.4.2.0, 0.4.1.0
(conflict: mtl => transformers==0.3.*)
rejecting: transformers-0.3.0.0 (conflict: transformers-compat-0.4.0.4:three
=> transformers>=0.4.1 && <0.5)
rejecting: transformers-0.2.2.1, 0.2.2.0, 0.2.1.0, 0.2.0.0, 0.1.4.0, 0.1.3.0,
0.1.1.0, 0.1.0.1, 0.1.0.0, 0.0.1.0, 0.0.0.0 (conflict: MonadRandom =>
transformers>=0.3 && <0.5)
rejecting: transformers-0.4.0.0 (conflict: mtl => transformers==0.3.*)
Dependency tree exhaustively searched.

Now I am really confused.

@byorgey
Copy link
Owner

byorgey commented Oct 14, 2015

Hmm, but you're right that it does work with mtl-2.1 when building with stack on lts-2.22. I will revise the lower bound to include mtl-2.1.

@byorgey
Copy link
Owner

byorgey commented Oct 14, 2015

New revisions with mtl-2.1 as a lower bound are now published. Let me know if this fixes things for you.

@mwu-tow
Copy link
Author

mwu-tow commented Oct 14, 2015

Yes, it fixes my issues. Thank you for the prompt reaction.

@byorgey
Copy link
Owner

byorgey commented Oct 14, 2015

Great, no problem.

@byorgey byorgey closed this as completed Oct 14, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants