-
-
Notifications
You must be signed in to change notification settings - Fork 368
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
Support for GHC-9.0 #297
Comments
STATUS
upstream packages that should be updated to being buildable with ghc-9.0.4, to build hls-plugin-api alone
//cc @Kleidukos |
The release candidate has been uploaded: https://www.haskell.org/ghc/blog/20201229-ghc-9.0.1-rc1-released.html |
Now that ghc 9.0.1 has been released, maybe we should bump up the priority? |
Yeah, but i guess it will be a complex change, given we are totally tied to ghc |
As the module structure of the |
We have already a compat module in ghcide but it does not export everything we need and it is misused in some code regions (for example i did not use in hlint puglin until recently) |
I've started a branch to give a quick try to ghc-9.0.1. I am afraid that only trying to build
With this in a
So the build type setup of lens is preventing the build. Not sure how to avoid it in the call site. So we have to wait or patch upstream packages. If we would try to install ghcide or hls with plugins the list of pending packages will be interminable so let's start with this one. |
You can try |
A tiny step towards haskell#297
I've managed to get
to the same file. You can check out this branch: https://github.com/anka-213/haskell-language-server/tree/ghc-9.0.1-with-lsp-1.2 It combines #1635 with #1631 in addition to modifying |
@anka-213 In case it could help, i had a WIP branch over hls here: https://github.com/jneira/haskell-language-server/tree/ghc-9.0.1 |
@jneira is there a downside to allowing _all_the packages "newer"? |
You could get bad versions that might break the build, out of established bounds in .cabal files so it is advisable to restrict them as much as possible |
I've managed to get
Does anyone know what that could be caused by? |
For some reason, changing this env <- runGhc (Just libDir) getSession to this env <- runGhc (Just libDir) $ do df <- getSessionDynFlags; setSessionDynFlags df; getSession worked. The function But it is still very far from functional and I get new difficult-to debug errors. :/ |
I've opened #2131 to:
|
|
Support for fourmolu with #2254 |
FWIW, GHC 9.2.1 is now released: https://discourse.haskell.org/t/ghc-9-2-1-released/3527 |
Should this issue be closed, as HLS 1.4.0 seems to support GHC-9.0.1? |
@mouse07410 There are still a few plugins that doesn’t support GHC-9.0.1 yet, as can be seen in the checklist. |
|
Part of the configuration code: #2473, I closed that to be non-blocking to others. The plugin for brittany process would be open to continuation after #297. |
Seems |
Unfortunately hlint requires ghc-lib-parser |
Yes, I noticed that shortly after and filed an issue for |
I think we have fully supported ghc-9.0. |
State of support
Has ghc-9.0 support
ghcide
haskell-language-server
hls-haddock-comments-plugin
hls-hlint-plugin
hls-importlens-plugin
hls-pragmas-plugin
hls-retrie-plugin
hls-eval-plugin
Eval plugin: support ghc 9.0.1 #1997hls-module-name-plugin
- Actually builds just fine. Was accidentally disabledhls-class-plugin
- Class plugin bump up #2475hls-refine-imports-plugin
- All deps buildhls-splice-plugin
- All deps buildhls-tactic-plugin
expectFailIfGhc9
functionFormatters
hls-floskell-plugin
hls-ormolu-plugin
- Support added with Switch to ghc-lib-parser-9.0.1.xxx tweag/ormolu#688hls-brittany-plugin
- Blocked upstream by brittany:ghc-lib-parser (Support for ghc-9.0.1 lspitzner/brittany#352)hls-fourmolu-plugin
- Bump Fourmolu to 0.4 #2254hls-stylish-haskell-plugin
blocked upstream byBuild system and CI
stack-9.0.1.yaml
- Disables not-yet-working plugins and fetches upstream patchescabal-ghc901.project
- Used for disabling the not yet working plugins and fetching upstream patchesflake.nix
- Needs to fetch upstream patches and disable not-yet-working plugins (nix: add support for ghc 9.0.1 #1995).circleci/config.yml
.github/workflows/test.yml
- Uses the custom cabal.project and disables tests for non-working plugins. Needs to be updated when more plugins gain ghc-9.0.1 support.github/workflows/build.yml
- The release script is not updated to make a ghc-9.0.1 release yet (PR Add ghc-9.0.1 to the build release script #1940)mergify.io
We should probably make it manditory for PRs to successfully build/test on ghc-9.0.1 as wellDependencies which needs updates and hackage release
Dependencies needed to inlcude brittany in hackage for 9.0:
The text was updated successfully, but these errors were encountered: