diff --git a/README.md b/README.md index c5f552fbec..a9d5c4e806 100644 --- a/README.md +++ b/README.md @@ -140,7 +140,7 @@ ghcup install hls If you are using [`chocolatey`](https://chocolatey.org/) to manage your installations in windows, [you can install `haskell-language-server`](https://community.chocolatey.org/packages/haskell-language-server) with ``` choco install haskell-language-server -```` +```` ### Visual Studio Code @@ -703,6 +703,11 @@ args = ["--lsp"] ## Known limitations +### Limited GHC 9 Support +Currently, GHC 9 support in HLS is in beta stage; some features are unavailable with GHC >= 9.0.1 for the time being. +This situation is expected to be resolved in the near future after all the dependent packages support GHC 9. +See issue [#297](https://github.com/haskell/haskell-language-server/issues/297) for the supported features in GHC 9 and the status of migration progress. + ### Preprocessor HLS is not yet able to find project preprocessors, which may result in `could not execute: ` errors. This problem is tracked in https://github.com/haskell/haskell-language-server/issues/176 and originally comes from https://github.com/mpickering/hie-bios/issues/125 diff --git a/ghcide/src/Development/IDE/Main.hs b/ghcide/src/Development/IDE/Main.hs index 818feebef8..700d2e21fb 100644 --- a/ghcide/src/Development/IDE/Main.hs +++ b/ghcide/src/Development/IDE/Main.hs @@ -25,7 +25,8 @@ import qualified Data.Text as T import qualified Data.Text.IO as T import Data.Text.Lazy.Encoding (decodeUtf8) import qualified Data.Text.Lazy.IO as LT -import Development.IDE (Action, Rules, +import Development.IDE (Action, GhcVersion (..), + Rules, ghcVersion, hDuplicateTo') import Development.IDE.Core.Debouncer (Debouncer, newAsyncDebouncer) @@ -256,6 +257,11 @@ defaultMain Arguments{..} = do , optRunSubset = runSubset } caps = LSP.resClientCapabilities env + -- FIXME: Remove this after GHC 9 gets fully supported + when (ghcVersion == GHC90) $ + hPutStrLn stderr $ + "Currently, HLS supports GHC 9 only partially. " + <> "See [issue #297](https://github.com/haskell/haskell-language-server/issues/297) for more detail." initialise argsDefaultHlsConfig rules