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

transformers-compat-0.3.3.4 incompatible with transformers-0.3.0.0 from latest HP #5

Closed
Blaisorblade opened this issue Jul 13, 2014 · 5 comments

Comments

@Blaisorblade
Copy link

I'm working around ekmett/lens#458 by installing transformers-compat, but the latest version refuses to install, unless I manually provide -f three:

$ cabal install -v --dry-run --one-shot transformers-compat-0.3.3.4 -f three
Reading available packages...
Choosing modular solver.
Resolving dependencies...
In order, the following would be installed:
transformers-compat-0.3.3.4 +three (new version)

I've later found this is documented in
https://github.com/ekmett/transformers-compat/commit/v0.3.3.4, but that seems a bit too little. Also, that's not the default behavior I get:

$ cabal install -v --dry-run --one-shot transformers-compat
Reading available packages...
Choosing modular solver.
Resolving dependencies...
In order, the following would be installed:
transformers-0.4.1.0 (new version)
transformers-compat-0.3.3.4 (new version)
$ cabal install -v --dry-run --one-shot transformers-compat-0.3.3.4 transformers-0.3.0.0
Reading available packages...
Choosing modular solver.
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: transformers-compat-0.3.3.4 (user goal)
next goal: transformers (user goal)
rejecting: transformers-0.4.1.0 (global constraint requires ==0.3.0.0)
rejecting: transformers-0.3.0.0/installed-ff2..., 0.3.0.0 (conflict:
transformers-compat-0.3.3.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, 0.4.0.0 (global constraint
requires ==0.3.0.0)
Dependency tree exhaustively searched.
$ cabal install -v --dry-run --one-shot transformers-compat transformers-0.3.0.0
Reading available packages...
Choosing modular solver.
Resolving dependencies...
In order, the following would be installed:
transformers-compat-0.3.3.3 (latest: 0.3.3.4) (new version)
@robertmassaioli
Copy link

Ran into this problem temporarily. Including some other dependencies made the problem go away but not sure why. But this is a pretty annoying problem when it happens.

@benkolera
Copy link

@robertmassaioli

FWIW, I just hit this issue because I had other dependency problems which seemed to confuse the solver into thinking that it was transformers-compat & transformers that were breaking things.

I installed transformers-compat with -f three and resolved my other conflicts. After everything built successfully I deleted and initialised the sandbox and everything installed just fine without passing the flag to transformers-compat.

It's annoying that this error comes up as a red-herring, but it's nice to know that it doesn't break a package with a sane dependency set. :)

@pthariensflame
Copy link

Running into this problem with GHC 7.8.4 and the transformers installed as part of it. Glad I found this thread, but it should probably be documented somewhere more prominent.

@Blaisorblade
Copy link
Author

A relevant discussion might be the following one — if you still have this issue, please document the version of cabal-install you're using, since apparently transformers-compat runs into cabal completeness bugs when constructing the build plan (I'm confused whether the bugs only happen without --reorder-goals):
haskell/cabal#1855 (comment)
haskell/cabal#1855 (comment)

@RyanGlScott
Copy link
Collaborator

Indeed, this is simply a cabal-install issue. As haskell/cabal#1855 (comment) notes, modern cabal-install (version 1.22 and up) shouldn't have this problem, and if you're using an older version, you should be using the 1.20.0.3 or 1.18.0.5 patch releases.

I don't know what transformers-compat can do about this, so I'll close this issue.

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

5 participants