GithubHelp home page GithubHelp logo

Comments (7)

Mikolaj avatar Mikolaj commented on June 10, 2024 1

I think this line means that the package depends on boot non-upgradable package ghci that happens to link against transformers==0.5.6.2, so you have to use that version of transformers, period. The tickets I linked above may shed some more light on what I wrote or prove it's incorrect altogether. I remember there is an effort (a GHC ticket, I think) to make non-upgradable package upgradable. It may be linked inside the tickets above.

from hspec.

sol avatar sol commented on June 10, 2024

@PilchardFriendly thanks for reporting this. The ghc package comes with GHC. It cannot be built from source. The same is true for other packages, most notably base.

I am not exactly sure for what reason cabal tries to build ghc on your system.

@Mikolaj do you have any input on this? Do you know if there are any related Cabal issues?

from hspec.

Mikolaj avatar Mikolaj commented on June 10, 2024

Yes, there are:

haskell/cabal#8554
haskell/cabal#8489

It's cabal's fault if your package (or any of its deps [edit; rather, including deps]) depends on both ghc and Cabal >= 3.8. Will be fixed in cabal 3.10. For now --allow-newer, etc., should help.

from hspec.

ysangkok avatar ysangkok commented on June 10, 2024

@Mikolaj Are allow-newers also intended to work when upgrading boot packages?

For example, cabal build hspec-core --constraint='transformers>=0.6' yields the error

[__5] next goal: ghc (dependency of hspec-core)
[__5] rejecting: ghc-9.4.3/installed-9.4.3 (conflict: transformers==0.6.0.4,
ghc => transformers==0.5.6.2/installed-0.5.6.2)

So far, so good, that is expected.

But if I add --allow-newer=transformers,ghci,ghc-boot to get around this error, it still fails with the same error message. This is unexpected, as I thought I was telling it to ignore any bounds on dependencies for transformers.

This is with cabal-install version 3.8.1.0.

from hspec.

Mikolaj avatar Mikolaj commented on June 10, 2024

It complains about ghc, but you say ghc-boot. These are different packages, I presume?

from hspec.

ysangkok avatar ysangkok commented on June 10, 2024

@Mikolaj even adding ghc and ghc-heap gives

 % cabal build hspec-core --constraint='transformers>=0.6' --allow-newer=transformers,ghci,ghc-boot,ghc,ghc-heap 
Resolving dependencies...
Error: cabal: Could not resolve dependencies:
[__0] trying: hspec-2.10.6 (user goal)
[__1] trying: base-4.17.0.0/installed-4.17.0.0 (dependency of hspec)
[__2] trying: QuickCheck-2.14.2 (dependency of hspec)
[__3] next goal: transformers (dependency of QuickCheck)
[__3] rejecting: transformers-0.5.6.2/installed-0.5.6.2 (constraint from
command line flag requires >=0.6)
[__3] trying: transformers-0.6.0.4
[__4] trying: hspec-core-2.10.6 (user goal)
[__5] next goal: ghc (dependency of hspec-core)
[__5] rejecting: ghc-9.4.3/installed-9.4.3 (conflict: transformers==0.6.0.4,
ghc => transformers==0.5.6.2/installed-0.5.6.2)
[__5] trying: ghc-9.4.2
[__6] next goal: ghci (dependency of ghc)
[__6] rejecting: ghci-9.4.3/installed-9.4.3 (conflict: transformers==0.6.0.4,
ghci => transformers==0.5.6.2/installed-0.5.6.2)
[__6] rejecting: ghci-8.10.2 (conflict: ghc => ghci>=9.4.2)
[__6] skipping: ghci-8.10.1, ghci-8.8.3, ghci-8.8.1, ghci-8.6.5, ghci-8.6.4,
ghci-8.6.1, ghci-8.4.4, ghci-8.4.3, ghci-8.4.2, ghci-8.4.1, ghci-8.2.2,
ghci-8.2.1, ghci-8.0.2, ghci-8.0.1 (has the same characteristics that caused
the previous version to fail: excluded by constraint '>=9.4.2' from 'ghc')
[__6] fail (backjumping, conflict set: ghc, ghci, transformers)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: hspec-core, ghc, ghci, base,
transformers, hspec, QuickCheck
Try running with --minimize-conflict-set to improve the error message.

It's this line I don't understand

[__6] rejecting: ghci-9.4.3/installed-9.4.3 (conflict: transformers==0.6.0.4,
ghci => transformers==0.5.6.2/installed-0.5.6.2)

Why is there a conflict if newer transformers are allowed?

from hspec.

sol avatar sol commented on June 10, 2024

#755 / hspec-2.10.7 addresses this.

from hspec.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.