commercialhaskell / stackage

Stable Haskell package sets: vetted consistent packages from Hackage
https://www.stackage.org/
MIT License
530 stars 805 forks source link

[ghc-9.10] Cabal-3.12 #7547

Open juhp opened 3 weeks ago

juhp commented 3 weeks ago

Heads-up for ghc-9.10 (current nightly is still 9.8)

Cabal-3.12.0.0 (changelog) is out of bounds for:

Cabal-syntax-3.12.0.0 (changelog) is out of bounds for:

Mikolaj commented 3 weeks ago

Hi! I'm not sure how to interpret this ticket, but OOI, why does it mention Cabal-3.12.0.0 instead of Cabal-3.12.1.0 (or Cabal-3.14.0.0 for that matter)?

andreasabel commented 3 weeks ago

@Mikolaj The problem is that GHC 9.10.1 ships the 3.12.0.0 edition of Cabal:

$ ghc-pkg-9.10 list | grep Cabal
    Cabal-3.12.0.0
    Cabal-syntax-3.12.0.0

And there is no such edition for cabal-install.

Not sure how to proceed here.

One option would be to wait for GHC 9.10.2 which hopefully ships the 3.12.1.0 edition, but a release does not seem imminent judging from the milestone: https://gitlab.haskell.org/ghc/ghc/-/milestones/399#tab-issues This would mean postponing the bump of the nightly snapshot to 9.10 for an unknown amount of time.

Can cabal-install-3.12.1.0 be built and work with Cabal-3.12.0.0?
(Seems unlikely, but does not hurt to ask.)

peti commented 3 weeks ago

cabal2spec-2.7.1 is fixed on Hackage in revision 1.

juhp commented 3 weeks ago

I don't think cabal-install is a real blocker for bumping Nightly - we didn't have it in nightly before 9.8.3 was released either. Though everything being equal I suppose I would prefer to start with 9.10.2, which might appear before long? (edit: Okay I had only looked at the pending Backports, on the Milestone page there does seem to be a lot left)

Though I can lament the "instability" of cabal-install and stack in Stackage - it seems a never ending battle/dance to have them available: I wish upstreams were more aware of this, though it sounds like stack HEAD might be okay for 9.10 nightly (it dropped out with 9.8.3).

Mikolaj commented 3 weeks ago

Oh, I see.

Can cabal-install-3.12.1.0 be built and work with Cabal-3.12.0.0?

We'd need to double-check in cabal-install-3.12.1.0 and Cabal-3.12.1.0 changelogs, but I guess there should be no problem running cabal-install-3.12.1.0 with Cabal-3.12.0.0, once the deps are revised (on Hackage or locally). The changelog for cabal-install-3.12.1.0 even says "this is the first release of cabal-install that is fully compatible with Cabal 3.12.0.0 as released with GHC 9.10.1". @ulysses4ever, what do you think?

tek commented 3 weeks ago

revised polysemy and polysemy-plugin

ulysses4ever commented 3 weeks ago

@Mikolaj

there should be no problem running cabal-install-3.12.1.0 with Cabal-3.12.0.0,

Indeed, I just tried it, and, at least, it builds.

Normally the tool is tightly coupled with the library and doesn't guarantee to build with a mismatched version, that's why we bump the lower bounds almost unconsciously. But that does feel a little restrictive, perhaps. I complained about that myself recently to @Kleidukos (I can't remember where and find a link), and he said that's how it's supposed to be. So, I'd be interested to hear what he says about the problem Stackage runs into.

mrkkrp commented 3 weeks ago

Bumped the bounds via a revision for ormolu-0.7.4.0.

ysangkok commented 3 weeks ago

Fourmolu 0.16.2.0 supports Cabal 3.12, so it just needs to be bumped, see #7449