-
Notifications
You must be signed in to change notification settings - Fork 711
(Try to) add GHC 8.0.1 to the test-matrix #3197
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
Conversation
I suspect this is because GHC8 now prints a static CallStack... need to investigate |
That test should show actual output in addition to expected. |
Fixed. |
Anyway, the error is due to this change in GHC: https://ghc.haskell.org/trac/ghc/ticket/11256#ticket so we should just adjust the message. |
The integration tests failed with the same message as in #3059. I think it might be caused by the change to |
@grayjay as I haven't been following this too closely, what's the recommended course of action? Does Cabal need to be adapted or does |
The problem is that /cc @23Skidoo |
See #3197 (comment). (cherry picked from commit d3d781b)
#3206 fixes the integration test issue. |
@23Skidoo seems like
|
@hvr Changed the type of that warning to |
@23Skidoo I just pushed some minor fixes, and rebased this PR... maybe it works out this time :-) |
@23Skidoo now there's a few package tests failing only for GHC8 such as
but I'm not sure why the test-case fails... as it seems to behave as supposed to... PS: is it just the regexp needing updating? -- Test "new build-dep behavior", where each target gets
-- separate dependencies. This tests that an executable
-- dep does not leak into the library.
tc "BuildDeps/TargetSpecificDeps1" $ do
cabal "configure" []
r <- shouldFail $ cabal' "build" []
assertRegex "error should be in MyLibrary.hs" "^MyLibrary.hs:" r
assertRegex
"error should be \"Could not find module `Text\\.PrettyPrint\""
"Could not find module.*Text\\.PrettyPrint" r |
Yeah the regex needs updating. |
do we want a regexp that matches all GHC versions? |
I can't imagine why not. Alternately, I could ninja a fix to GHC 8 which reverts the error message to its pre GHC 8.0 behavior. |
@ezyang does the error message in GHC8 need fixing? It seemed fine to me as it is... |
I'll admit that the mention of interface files here was a bit surprising to me the first time I saw this message. |
I think for anyone who has done any modicum of Haskell development, the error is fine. For absolute beginners the mention of an interface file may be slightly confusing, but not more so than skolem variables, type classes, etc. |
@ezyang ok, but is the error-message actually accurate? i.e. does GHC really miss the |
Yes, it is in fact the |
Currently GHC 8.0 has a slightly different error message if it can't find a `.hi` file. It's not clear yet if and how we're going to change the message before GHC 8.0 final.
@23Skidoo fyi, Travis is finally green (including GHC HEAD)! |
@hvr Great! |
(Try to) add GHC 8.0.1 to the test-matrix
Merged, thanks! |
Also cherry-picked into 1.24. |
Oh well, now the 1.24 build fails with:
So for some reason
@kosmikus, do you think we're dealing with a bug in the solver here? |
I have noticed occasionaly that if Cabal/GHC doesn't remember to recompile enough of hackage-security, this situation can arise. I haven't diagnosed if it's a bug in GHC's recompilation avoidance or Cabal. If you clean out your hackage-security build that should fix the problem? |
This happens on Travis, so |
@23Skidoo iirc, the travis build script does not use Incidentally this class of failure is solved by the nix-local-build branch, since it solves for everything even if you're just running configure, so configure+build can solve and install deps. |
Should |
@dcoutts What I don't understand is why |
@23Skidoo if it's Setup configure you're using then it's not guaranteed to pick the same things as cabal install --deps did. Using cabal install --deps followed by cabal configure should pick the same (consistent) things. But Setup configure just picks the latest of everything. |
@dcoutts Thanks, that's indeed the problem. Checking now whether we can use |
And it looks like we can. |
No description provided.