mirror of
https://github.com/haskell/haskell-language-server.git
synced 2024-09-11 16:56:14 +03:00
Update URLs after move to haskell github org (haskell/ghcide#950)
This commit is contained in:
parent
5d0e8a3cb5
commit
1f4c0c3d39
@ -351,7 +351,7 @@ More details in [bench/README](bench/README.md)
|
||||
|
||||
The teams behind this project and the [`haskell-ide-engine`](https://github.com/haskell/haskell-ide-engine#readme) have agreed to join forces under the [`haskell-language-server` project](https://github.com/haskell/haskell-language-server), see the [original announcement](https://neilmitchell.blogspot.com/2020/01/one-haskell-ide-to-rule-them-all.html). The technical work is ongoing, with the likely model being that this project serves as the core, while plugins and integrations are kept in the [`haskell-language-server` project](https://github.com/haskell/haskell-language-server).
|
||||
|
||||
The code behind `ghcide` was originally developed by [Digital Asset](https://digitalasset.com/) as part of the [DAML programming language](https://github.com/digital-asset/daml). DAML is a smart contract language targeting distributed-ledger runtimes, based on [GHC](https://www.haskell.org/ghc/) with custom language extensions. The DAML programming language has [an IDE](https://webide.daml.com/), and work was done to separate off a reusable Haskell-only IDE (what is now `ghcide`) which the [DAML IDE then builds upon](https://github.com/digital-asset/daml/tree/master/compiler/damlc). Since that time, there have been various [non-Digital Asset contributors](https://github.com/digital-asset/ghcide/graphs/contributors), in addition to continued investment by Digital Asset. The project has been handed over to Haskell.org as of September 2020.
|
||||
The code behind `ghcide` was originally developed by [Digital Asset](https://digitalasset.com/) as part of the [DAML programming language](https://github.com/digital-asset/daml). DAML is a smart contract language targeting distributed-ledger runtimes, based on [GHC](https://www.haskell.org/ghc/) with custom language extensions. The DAML programming language has [an IDE](https://webide.daml.com/), and work was done to separate off a reusable Haskell-only IDE (what is now `ghcide`) which the [DAML IDE then builds upon](https://github.com/digital-asset/daml/tree/master/compiler/damlc). Since that time, there have been various [non-Digital Asset contributors](https://github.com/haskell/ghcide/graphs/contributors), in addition to continued investment by Digital Asset. The project has been handed over to Haskell.org as of September 2020.
|
||||
|
||||
The Haskell community [has](https://github.com/DanielG/ghc-mod) [various](https://github.com/chrisdone/intero) [IDE](https://github.com/rikvdkleij/intellij-haskell) [choices](http://leksah.org/), but the one that had been gathering momentum is [`haskell-ide-engine`](https://github.com/haskell/haskell-ide-engine#readme). Our project owes a debt of gratitude to the `haskell-ide-engine`. We reuse libraries from their ecosystem, including [`hie-bios`](https://github.com/mpickering/hie-bios#readme) (a likely future environment setup layer in `haskell-ide-engine`), [`haskell-lsp`](https://github.com/alanz/haskell-lsp#readme) and [`lsp-test`](https://github.com/bubba/lsp-test#readme) (the `haskell-ide-engine` [LSP protocol](https://microsoft.github.io/language-server-protocol/) pieces). We make heavy use of their contributions to GHC itself, in particular the work to make GHC take string buffers rather than files.
|
||||
|
||||
|
@ -115,7 +115,7 @@ This can happen if you have a GHC compiled without GHC library support. This se
|
||||
|
||||
## Symbol’s value as variable is void: capability
|
||||
|
||||
As described [here](https://github.com/emacs-lsp/lsp-mode/issues/770#issuecomment-483540119) and [here](https://github.com/emacs-lsp/lsp-mode/issues/517#issuecomment-445448700), the default installation of `lsp-mode`, `lsp-ui`, `lsp-ui-mode` and `lsp-haskell` as described in [ghcide's "Using with Emacs" section](https://github.com/digital-asset/ghcide/#using-with-emacs) may result in the following error message:
|
||||
As described [here](https://github.com/emacs-lsp/lsp-mode/issues/770#issuecomment-483540119) and [here](https://github.com/emacs-lsp/lsp-mode/issues/517#issuecomment-445448700), the default installation of `lsp-mode`, `lsp-ui`, `lsp-ui-mode` and `lsp-haskell` as described in [ghcide's "Using with Emacs" section](https://github.com/haskell/ghcide/#using-with-emacs) may result in the following error message:
|
||||
|
||||
```
|
||||
Symbol’s value as variable is void: capability
|
||||
@ -132,7 +132,7 @@ find ~/.emacs.d -name '*.elc' -exec rm {} \;
|
||||
|
||||
## Docker stack builds
|
||||
|
||||
You're likely to see `ghcide: (ExitFailure 1,"","")`. Because ghcide can't get at the ghc installed inside Docker, your best bet is to `stack exec ghcide` and make sure `ghcide` is installed within the container. Full details at [issue 221](https://github.com/digital-asset/ghcide/issues/221).
|
||||
You're likely to see `ghcide: (ExitFailure 1,"","")`. Because ghcide can't get at the ghc installed inside Docker, your best bet is to `stack exec ghcide` and make sure `ghcide` is installed within the container. Full details at [issue 221](https://github.com/haskell/ghcide/issues/221).
|
||||
|
||||
## stty error on Windows + Stack
|
||||
|
||||
|
@ -126,7 +126,7 @@ main = do
|
||||
hSetEncoding stderr utf8
|
||||
|
||||
putStrLn $ "Ghcide setup tester in " ++ dir ++ "."
|
||||
putStrLn "Report bugs at https://github.com/digital-asset/ghcide/issues"
|
||||
putStrLn "Report bugs at https://github.com/haskell/ghcide/issues"
|
||||
|
||||
putStrLn $ "\nStep 1/4: Finding files to test in " ++ dir
|
||||
files <- expandFiles (argFiles ++ ["." | null argFiles])
|
||||
|
@ -123,7 +123,7 @@ loadSessionWithOptions SessionLoadingOptions{..} dir = do
|
||||
res <- findCradle v
|
||||
-- Sometimes we get C:, sometimes we get c:, and sometimes we get a relative path
|
||||
-- try and normalise that
|
||||
-- e.g. see https://github.com/digital-asset/ghcide/issues/126
|
||||
-- e.g. see https://github.com/haskell/ghcide/issues/126
|
||||
res' <- traverse makeAbsolute res
|
||||
return $ normalise <$> res'
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
-- | This module exists to circumvent a compile time exception on Windows with
|
||||
-- Stack and GHC 8.10.1. It's just been pulled out from Development.IDE.Session.
|
||||
-- See https://github.com/digital-asset/ghcide/pull/697
|
||||
-- See https://github.com/haskell/ghcide/pull/697
|
||||
module Development.IDE.Session.VersionCheck (ghcVersionChecker) where
|
||||
|
||||
import Data.Maybe
|
||||
|
@ -151,7 +151,7 @@ fileExistsRules :: ClientCapabilities -> VFSHandle -> Rules ()
|
||||
fileExistsRules ClientCapabilities{_workspace} vfs = do
|
||||
-- Create the global always, although it should only be used if we have fast rules.
|
||||
-- But there's a chance someone will send unexpected notifications anyway,
|
||||
-- e.g. https://github.com/digital-asset/ghcide/issues/599
|
||||
-- e.g. https://github.com/haskell/ghcide/issues/599
|
||||
addIdeGlobal . FileExistsMapVar =<< liftIO (newVar [])
|
||||
|
||||
extras <- getShakeExtrasRules
|
||||
|
@ -260,7 +260,7 @@ priorityFilesOfInterest = Priority (-2)
|
||||
-- We currently parse the module both with and without Opt_Haddock, and
|
||||
-- return the one with Haddocks if it -- succeeds. However, this may not work
|
||||
-- for hlint, and we might need to save the one without haddocks too.
|
||||
-- See https://github.com/digital-asset/ghcide/pull/350#discussion_r370878197
|
||||
-- See https://github.com/haskell/ghcide/pull/350#discussion_r370878197
|
||||
-- and https://github.com/mpickering/ghcide/pull/22#issuecomment-625070490
|
||||
getParsedModuleRule :: Rules ()
|
||||
getParsedModuleRule = defineEarlyCutoff $ \GetParsedModule file -> do
|
||||
@ -651,7 +651,7 @@ loadGhcSession = do
|
||||
let cutoffHash =
|
||||
case optShakeFiles opts of
|
||||
-- optShakeFiles is only set in the DAML case.
|
||||
-- https://github.com/digital-asset/ghcide/pull/522#discussion_r428622915
|
||||
-- https://github.com/haskell/ghcide/pull/522#discussion_r428622915
|
||||
Just {} -> ""
|
||||
-- Hash the HscEnvEq returned so cutoff if it didn't change
|
||||
-- from last time
|
||||
|
@ -541,7 +541,7 @@ shakeRestart IdeState{..} acts =
|
||||
)
|
||||
-- It is crucial to be masked here, otherwise we can get killed
|
||||
-- between spawning the new thread and updating shakeSession.
|
||||
-- See https://github.com/digital-asset/ghcide/issues/79
|
||||
-- See https://github.com/haskell/ghcide/issues/79
|
||||
(\() -> do
|
||||
(,()) <$> newSession shakeExtras shakeDb acts)
|
||||
|
||||
|
@ -549,7 +549,7 @@ ghcExtensions :: Map.HashMap T.Text Extension
|
||||
ghcExtensions = Map.fromList . filter notStrictFlag . map ( ( T.pack . flagSpecName ) &&& flagSpecFlag ) $ xFlags
|
||||
where
|
||||
-- Strict often causes false positives, as in Data.Map.Strict imports.
|
||||
-- See discussion at https://github.com/digital-asset/ghcide/pull/638
|
||||
-- See discussion at https://github.com/haskell/ghcide/pull/638
|
||||
notStrictFlag (name, _) = name /= "Strict"
|
||||
|
||||
suggestModuleTypo :: Diagnostic -> [(T.Text, [TextEdit])]
|
||||
|
@ -87,7 +87,7 @@ getDocumentationsTryGhc env mod sources names = do
|
||||
unwrap _ n = mkSpanDocText n
|
||||
|
||||
mkSpanDocText name =
|
||||
pure (SpanDocText (getDocumentation sources name)) <*> getUris name
|
||||
SpanDocText (getDocumentation sources name) <$> getUris name
|
||||
|
||||
-- Get the uris to the documentation and source html pages if they exist
|
||||
getUris name = do
|
||||
|
@ -2572,7 +2572,7 @@ safeTests :: TestTree
|
||||
safeTests =
|
||||
testGroup
|
||||
"SafeHaskell"
|
||||
[ -- Test for https://github.com/digital-asset/ghcide/issues/424
|
||||
[ -- Test for https://github.com/haskell/ghcide/issues/424
|
||||
testSessionWait "load" $ do
|
||||
let sourceA =
|
||||
T.unlines
|
||||
@ -2601,7 +2601,7 @@ thTests :: TestTree
|
||||
thTests =
|
||||
testGroup
|
||||
"TemplateHaskell"
|
||||
[ -- Test for https://github.com/digital-asset/ghcide/pull/212
|
||||
[ -- Test for https://github.com/haskell/ghcide/pull/212
|
||||
testSessionWait "load" $ do
|
||||
let sourceA =
|
||||
T.unlines
|
||||
@ -2647,7 +2647,7 @@ thTests =
|
||||
_ <- createDoc "B.hs" "haskell" sourceB
|
||||
return ()
|
||||
, thReloadingTest
|
||||
-- Regression test for https://github.com/digital-asset/ghcide/issues/614
|
||||
-- Regression test for https://github.com/haskell/ghcide/issues/614
|
||||
, thLinkingTest
|
||||
, testSessionWait "findsTHIdentifiers" $ do
|
||||
let sourceA =
|
||||
@ -3454,7 +3454,7 @@ simpleMultiTest2 = testCase "simple-multi-test2" $ runWithExtraFiles "multi" $ \
|
||||
|
||||
ifaceTests :: TestTree
|
||||
ifaceTests = testGroup "Interface loading tests"
|
||||
[ -- https://github.com/digital-asset/ghcide/pull/645/
|
||||
[ -- https://github.com/haskell/ghcide/pull/645/
|
||||
ifaceErrorTest
|
||||
, ifaceErrorTest2
|
||||
, ifaceErrorTest3
|
||||
|
Loading…
Reference in New Issue
Block a user