dhall-lang / dhall-to-cabal

Compile Dhall expressions to Cabal files
MIT License
100 stars 19 forks source link

Support Cabal 2.4. #129

Closed quasicomputational closed 5 years ago

quasicomputational commented 6 years ago

This is mostly just updating the Dhall enumerations for things, fortunately.

Closes #128.

This was pretty simple: running dhall-to-cabal --print-type $TYPE > dhall/$TYPE.dhall for the affected enums worked like a charm. Should probably integrate that with dhall-to-cabal-meta.

Since Stackage won't include Cabal 2.4 for a little bit (not until GHC 8.6 is released, and probably not immediately), this probably shouldn't be merged yet; also because we've got to put allow-newer in stack.yaml since we're at the cutting edge right now.

ocharles commented 6 years ago

It looks like Stackage is already moving to Cabal 2.4: https://github.com/commercialhaskell/stackage/issues/3950

quasicomputational commented 6 years ago

Yeah, the issue is that we can't support multiple Cabal versions at once. So, e.g., we could have the situation where one of dhall-to-cabal's dependencies can't be upgraded in Stackage because of our upper bounds, but upgrading dhall-to-cabal requires upgrading Cabal, but upgrading Cabal is hard because a whole bunch of packages need to support it. That's the logic for why this shouldn't be merged until Stackage is basically already there on Cabal 2.4.

quasicomputational commented 5 years ago

Stackage's definitely moving on GHC 8.6 (and hence Cabal 2.4), so this ought to be safe to merge now.