Skip to content

Support for GHC-9.12.x? #4499

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

Closed
mouse07410 opened this issue Feb 16, 2025 · 12 comments
Closed

Support for GHC-9.12.x? #4499

mouse07410 opened this issue Feb 16, 2025 · 12 comments
Labels
type: enhancement New feature or request

Comments

@mouse07410
Copy link

Is your enhancement request related to a problem? Please describe.

GHC-9.12.1 has been around for a while, and 9.12.2 is on the horizon. It would be nice to have HLS supporting these.

Describe the solution you'd like

Added support for GHC-9.12.x. Current master doesn't seem to work because of (at least?) two dependent packages failing to compile under 9.12.1:

  • ghc-exactprint-1.10.0.0
  • ormolu-0.7.7.0

Describe alternatives you've considered

There's no alternative, except for downgrading GHC to 9.10.1. Which is not that attractive for those living on the "bleeding edge". ;-)

@eldritch-cookie
Copy link

For ghc-exactprint a version is compatible with only one major version of GHC so 1.10.0.0 only works with GHC 9.10.x
but the solution is simple just upgrade to 1.12.0.0,
however given that it is a major version upgrade it is highly likely there will be breakages that need to be fixed.
Regarding ormolu there is a newer version that has a built with that claims compability with GHC 9.12.1 which i am inclined to believe as the latest fourmolu can in fact be compiled on GHC 9.12.1

@fendor
Copy link
Collaborator

fendor commented Feb 21, 2025

There will not be binaries for 9.12.1, as the GHC 9.12.1 release is broken.

However, we are actively working on 9.12.2 support as soon as it releases.

@sohang3112
Copy link

There will not be binaries for 9.12.1, as the GHC 9.12.1 release is broken.

@fendor Can you please clarify, how is GHC 9.12.1 release "broken"?

@jhrcek
Copy link
Collaborator

jhrcek commented Feb 23, 2025

In general you can find the list of issues via GHC status page.
GHC 9.12.1 in particular has some "incorrect runtime result" issues: https://gitlab.haskell.org/ghc/ghc/-/milestones/405#tab-issues

@fendor
Copy link
Collaborator

fendor commented Feb 23, 2025

@sohang3112 I am referring to the issue https://gitlab.haskell.org/ghc/ghc/-/issues/25653. There was also this announcement: https://discourse.haskell.org/t/psa-correctness-issue-in-ghc-9-12/11204

@Jashweii
Copy link

GHC 9.12.2 has been released and added to ghcup
https://discourse.haskell.org/t/ghc-9-12-2-is-now-available/11639

@soulomoon
Copy link
Collaborator

soulomoon commented Mar 16, 2025

I’m personally very excited about this release! I can imagine that semantic tokens will be much faster now that version 9.12.2 is equipped with additional entity information for each token. We no longer need to ad-hoc search for them through various built artifacts.

Preparing to update 9.12.2.

  1. Preparing to update to 9.12.2, since ghcide-test now lift up to haskell-language-server.cabal independently. It is best to move it to a stand-along dir. Maybe also drop older ghc support too.
  2. update ghcide.
  3. build ghcide-test to test ghcide.
  4. update indivisual extensions.

@soulomoon soulomoon linked a pull request Mar 16, 2025 that will close this issue
6 tasks
@larskuhtz
Copy link

There will not be binaries for 9.12.1, as the GHC 9.12.1 release is broken.

However, we are actively working on 9.12.2 support as soon as it releases.

I don't think that it is the job of a language server to decide what version of a compiler users should use.

There are valid reasons to use experimental or even broken versions of GHC -- for testing, early integration, or development of language tools and infrastructure.

There are programming languages for which language servers are available even for pre-releases of compilers. I think, the Haskell ecosystem would benefit if projects that form part of the basic language infrastructure would be available as soon as possible for new (or even upcoming) versions of GHC.

@fendor
Copy link
Collaborator

fendor commented Mar 24, 2025

We generally try to do exactly that, to have the core of HLS running the moment a GHC version is released.
However, in this particular case, there had been a real chance that the release CI wouldn't even have succeeded, which would have been rather awkward.

Otherwise, we agree with you, and we try to have support for new GHC ASAP.

@larskuhtz
Copy link

@fendor thanks for the response. I should also mention that I am very glad that HLS exists and want to thank everybody involved for their work.

@fendor
Copy link
Collaborator

fendor commented Mar 25, 2025

Will be closed by #4527. The next HLS release will have support for GHC 9.12.2

@fendor
Copy link
Collaborator

fendor commented Mar 26, 2025

Closed by #4527

@fendor fendor closed this as completed Mar 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants