-
Notifications
You must be signed in to change notification settings - Fork 696
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
Test suite with a cyclic dependency no longer working #5200
Comments
Ah OK, this has been raised before. The fairly recent comment here #1575 (comment) says:
While using new-build failed as this comment suggests, it looks like the first part about installing things in order no longer works. Should this be considered a separate bug? |
I looked into the old-build part of this issue. I can reproduce the behavior change between cabal-install-1.24 and cabal-install-2.0 by running the following commands with GHC 8.0.2 and no package index:
cabal gives a warning when configuring
Then
The same command fails with cabal from the 2.0 branch:
The iDontWork :: MyId
iDontWork = makeId I think that the cabal-install-2.0 error message means that the type of
I think that the cyclic dependency in CouldntMatchTypeRepro is different from the most common use case in #1575, such as the I also tested the use case where the library types don't need to match by building the |
This was discovered when using stack, the relevant issue is here: commercialhaskell/stack#3892. Copying the summary from there:
After poking around it seems like stack's behaviour hasn't changed. I tried to replicate what stack does under the hood with cabal install 2.0.0.0 on that project. Using
cabal install
in themodel
dir, thencabal install
in thetesting
dir, thencabal configure --enable-tests && cabal build
in themodel
dir gives the same error as when using stack, as expected. I haven't used thenew-*
ommands much before, but making a basiccabal.project
and tryingcabal new-configure
in themodel
directory reuslts in:(I changed the names because it looks like
model
is a package already on Hackage, so didn't want to confuse the matter). Is this a supported project configuration/workflow? Will it be in the future? It felt quite natural and useful to do at the time.The text was updated successfully, but these errors were encountered: