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

Need to respect buildable: False and flags for dependency tracking #50

Closed
snoyberg opened this issue May 21, 2015 · 8 comments
Closed

Comments

@snoyberg
Copy link
Contributor

I haven't tracked down exactly what the problem is yet, but somehow I'm seeing that vector-algorithms's dependency on mwc-random - which is in an executable which is off by default - is causing build failures.

@snoyberg
Copy link
Contributor Author

Looking at this in more detail: this looks like a cabal bug that @chrisdone didn't replicate, resulting in a bug. For some reason I can't comprehend, it seems that setting buildable: False on an executable is not enough to turn off its dependencies. Let me reproduce this against cabal all on its own, and then we'll likely need to replicate this bug in our codebase :(

@snoyberg
Copy link
Contributor Author

Tracked it down: haskell/cabal#2602

@snoyberg
Copy link
Contributor Author

And it's a dupe of an older one: haskell/cabal#1725

snoyberg added a commit that referenced this issue May 21, 2015
This is terrible. Cabal is half-broken: in some places it correctly
ignores buildable:False stanzas. In other places, it doesn't. Chris was
using one of the non-broken pieces of the Cabal code base, which meant
that we were (correctly) getting a smaller dependency set for some
packages. Unfortunately, this didn't jive with Cabal's broken view of
the world, which decided we didn't have all necessary dependencies
installed.

Solution: copy the (correctly implemeneted) allBuildInfo function from
Cabal and break it in the same way that the other parts of Cabal are
broken. I vomited a little in my mouth while typing that.
@snoyberg
Copy link
Contributor Author

OK, stack now (mistakenly) installs the dependencies that Cabal demands of it, making everything wrong in the world. But at least it's consistently wrong. Closing.

@ghorn
Copy link

ghorn commented May 23, 2016

Just to be clear, is this a wontfix?

@snoyberg
Copy link
Contributor Author

This is a cantfix because there's a bug upstream in Cabal. We're purposely doing something dumb because, otherwise, Cabal breaks.

@ghorn
Copy link

ghorn commented May 24, 2016

The cabal bug looks like it's fixed. Should this issue be reopened?

@mgsloan
Copy link
Contributor

mgsloan commented May 24, 2016

@ghorn Good point, I've opened #2184

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

3 participants