Skip to content
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

Questions regarding the right strategy for upgrading to ghc-9.8 #2583

Open
lucasdicioccio opened this issue Apr 23, 2024 · 0 comments
Open

Comments

@lucasdicioccio
Copy link

lucasdicioccio commented Apr 23, 2024

Hi there, I'm attempting to increase this repository to ghc-9.8.2 with an aim for a Hackage release (so that my blog-engine can be on Hackage as well) at some point before this summer (personal reasons for the deadline). I work on a fork at https://github.com/lucasdicioccio/dhall-haskell .

My patch is not ready yet but an early attempt shows:

  • a few bounds could be/would have to be relaxed
  • some deeper failures will need bound-relaxing/uploads as well (hnix for dhall-lsp-server, dhall-nix and dhall-nixpkgs)
  • some CPP will be needed to support (without warning) old imports (liftA2 being part of the class Control.Applicative)
  • some rework around (safe? -- i haven't convinced myself) calls to Prelude.head which turns a deprecation warning
  • my auto-formatting vim autocommand to fourmolu-format on save trapped me
  • some more CPP needed as megaparsec now has an additional packages

I don't mind continuing, however I'm interested to know whether:

  • are you aware of someone already on a further track than myself?
  • is there some target-compatibility level with older GHCs/megaparsec? (to cut on CPP)
  • is there some plan to fourmolu-format the code (in which case I'd rather see that done in a lockstep before xor after porting to 9.8.2 to reduce diff noise/rebase conflicts)?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant