vscode-haskell
vscode-haskell copied to clipboard
Haskell extension can't figure out LLVM version on macOS
Your environment
Which OS do you use:
macOS 12.5 (21G72) on Apple Silicon M1
Steps to reproduce
Create simple "hello-cabal" project as described here, open VS Code with Haskell Extension from terminal via code ., opening Main.hs in VSCode
Expected behaviour
HLS should work.
Actual behaviour
HLS Extension shows a problem:
Failed to parse result of calling cabal
Failed command: cabal --builddir=/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c v2-repl --with-compiler /Users/stefanscheidt/.cache/hie-bios/wrapper-b54f81dea4c0e6d1626911c526bc4e36 --with-hc-pkg /Users/stefanscheidt/.cache/hie-bios/ghc-pkg-6a65c19ae905dbcea0cb8a9889f57773 hello-cabal:exe:hello-cabal
Build profile: -w ghc-8.10.7 -O1
In order, the following will be built (use -v for more details):
- hello-cabal-0.1.0.0 (lib) (first run)
- hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)
Preprocessing library for hello-cabal-0.1.0.0..
Building library for hello-cabal-0.1.0.0..
[1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )
<no location info>: error:
Warning: Couldn't figure out LLVM version!
Make sure you have installed LLVM between [9 and 13)
ghc: could not execute: opt
cabal: Failed to build hello-cabal-0.1.0.0 (which is required by
exe:hello-cabal from hello-cabal-0.1.0.0).
Process Environment:
HIE_BIOS_GHC: /Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc
HIE_BIOS_GHC_ARGS: -B/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7
In the terminal, cabal build works.
For that I had to do a brew install llvm@12 and added /opt/homebrew/opt/llvm@12/bin to PATH (in .zshrc)
Until then, a got Couldn't figure out LLVM version! in the Terminal, too
Include debug information
Execute in the root of your project the command haskell-language-server-wrapper --debug . and paste the logs here (you can find the executable location here):
Debug output:
No 'hie.yaml' found. Try to discover the project type!
Run entered for haskell-language-server-wrapper(haskell-language-server-wrapper) Version 1.7.0.0 aarch64 ghc-9.2.2
Current directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
Operating system: darwin
Arguments: ["--debug","."]
Cradle directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
Cradle type: Cabal
Tool versions found on the $PATH
cabal: 3.6.2.0
stack: 2.7.5
ghc: 8.10.7
Consulting the cradle to get project GHC version...
Project GHC version: 8.10.7
haskell-language-server exe candidates: ["haskell-language-server-8.10.7","haskell-language-server"]
Launching haskell-language-server exe at:/Users/stefanscheidt/.ghcup/bin/haskell-language-server-8.10.7
2022-08-05T21:07:01.460232Z | Info | No log file specified; using stderr.
2022-08-05T21:07:01.460489Z | Info | haskell-language-server version: 1.7.0.0 (GHC: 8.10.7) (PATH: /Users/stefanscheidt/.ghcup/hls/1.7.0.0/lib/haskell-language-server-1.7.0.0/bin/haskell-language-server-8.10.7)
2022-08-05T21:07:01.460846Z | Info | Directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
2022-08-05T21:07:01.461006Z | Info | Logging heap statistics every 60.00s
ghcide setup tester in /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal.
Report bugs at https://github.com/haskell/haskell-language-server/issues
Step 1/4: Finding files to test in /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
Found 2 files
Step 2/4: Looking for hie.yaml files that control setup
Found 1 cradle
()
Step 3/4: Initializing the IDE
2022-08-05T21:07:01.463101Z | Debug | Initializing exports map from hiedb
2022-08-05T21:07:01.463332Z | Debug | Shake session initialized
Step 4/4: Type checking the files
2022-08-05T21:07:01.463379Z | Debug | Done initializing exports map from hiedb. Size: 0
2022-08-05T21:07:01.463919Z | Info | Cradle path: src/MyLib.hs
2022-08-05T21:07:01.463963Z | Warning | No [cradle](https://github.com/mpickering/hie-bios#hie-bios) found for src/MyLib.hs.
Proceeding with [implicit cradle](https://hackage.haskell.org/package/implicit-hie).
You should ignore this message, unless you see a 'Multi Cradle: No prefixes matched' error.
2022-08-05T21:07:01.465660Z | Debug | Cradle: Cradle {cradleRootDir = "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal", cradleOptsProg = CradleAction: Cabal}
2022-08-05 23:07:01.821242 [ThreadId 42] INFO hie-bios: Build profile: -w ghc-8.10.7 -O1
2022-08-05 23:07:01.821684 [ThreadId 42] INFO hie-bios: In order, the following will be built (use -v for more details):
2022-08-05 23:07:01.821705 [ThreadId 42] INFO hie-bios: - hello-cabal-0.1.0.0 (lib) (first run)
2022-08-05 23:07:01.865833 [ThreadId 42] INFO hie-bios: Preprocessing library for hello-cabal-0.1.0.0..
2022-08-05T21:07:02.295702Z | Debug | Session loading result: Right (ComponentOptions {componentOptions = ["-fbuilding-cabal-package","-O0","-outputdir","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-odir","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-hidir","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-stubdir","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-i","-i/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-isrc","-i/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/autogen","-i/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/global-autogen","-I/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/autogen","-I/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/global-autogen","-I/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build","-optP-include","-optP/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/autogen/cabal_macros.h","-this-unit-id","hello-cabal-0.1.0.0-inplace","-hide-all-packages","-Wmissing-home-modules","-no-user-package-db","-package-db","/Users/stefanscheidt/.cabal/store/ghc-8.10.7/package.db","-package-db","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/packagedb/ghc-8.10.7","-package-db","/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/package.conf.inplace","-package-id","base-4.14.3.0","-XHaskell2010","MyLib","-hide-all-packages"], componentRoot = "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal", componentDependencies = ["hello-cabal.cabal","cabal.project","cabal.project.local"]},"/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7")
2022-08-05T21:07:02.338412Z | Info | Interface files cache directory: /Users/stefanscheidt/.cache/ghcide/hello-cabal-0.1.0.0-inplace-49911b2222638d588f95afbea26ded335c3265d7
2022-08-05T21:07:02.338554Z | Info | Making new HscEnv. In-place unit ids: [hello-cabal-0.1.0.0-inplace]
2022-08-05T21:07:02.342362Z | Debug | New component cache HscEnvEq: (([],Just HscEnvEq 5),fromList [("cabal.project",Nothing),("cabal.project.local",Nothing),("hello-cabal.cabal",Just 2022-08-05 18:20:51.23484617 UTC)])
2022-08-05T21:07:02.343252Z | Debug | Known files updated:
fromList [(TargetFile NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/src/MyLib.hs",fromList ["/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/src/MyLib.hs"]),(TargetModule MyLib,fromList ["/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/src/MyLib.hs"])]
2022-08-05T21:07:02.343437Z | Debug | Finished build session
AsyncCancelled
2022-08-05T21:07:02.343472Z | Debug | Restarting build session due to new component
Action Queue: [User TypeCheck]
Keys: [GetKnownTargets; , GhcSessionIO; ]
Aborting previous build session took 0.00s
2022-08-05T21:07:02.343704Z | Debug | Getting hlint ideas for NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T21:07:02.344496Z | Debug | Getting hlint ideas for NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/src/MyLib.hs"
2022-08-05T21:07:02.422707Z | Info | Cradle path: app/Main.hs
2022-08-05T21:07:02.424039Z | Warning | No [cradle](https://github.com/mpickering/hie-bios#hie-bios) found for app/Main.hs.
Proceeding with [implicit cradle](https://hackage.haskell.org/package/implicit-hie).
You should ignore this message, unless you see a 'Multi Cradle: No prefixes matched' error.
2022-08-05T21:07:02.425814Z | Debug | Cradle: Cradle {cradleRootDir = "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal", cradleOptsProg = CradleAction: Cabal}
2022-08-05 23:07:02.78264 [ThreadId 122] INFO hie-bios: Build profile: -w ghc-8.10.7 -O1
2022-08-05 23:07:02.782737 [ThreadId 122] INFO hie-bios: In order, the following will be built (use -v for more details):
2022-08-05 23:07:02.782756 [ThreadId 122] INFO hie-bios: - hello-cabal-0.1.0.0 (lib) (first run)
2022-08-05 23:07:02.782774 [ThreadId 122] INFO hie-bios: - hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)
2022-08-05 23:07:02.826696 [ThreadId 122] INFO hie-bios: Preprocessing library for hello-cabal-0.1.0.0..
2022-08-05 23:07:02.826817 [ThreadId 122] INFO hie-bios: Building library for hello-cabal-0.1.0.0..
2022-08-05 23:07:02.884995 [ThreadId 122] INFO hie-bios: [1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )
2022-08-05 23:07:02.917357 [ThreadId 120] INFO hie-bios:
2022-08-05 23:07:02.917426 [ThreadId 120] INFO hie-bios: <no location info>: error:
2022-08-05 23:07:02.917451 [ThreadId 120] INFO hie-bios: Warning: Couldn't figure out LLVM version!
2022-08-05 23:07:02.917467 [ThreadId 120] INFO hie-bios: Make sure you have installed LLVM between [9 and 13)
2022-08-05 23:07:02.921826 [ThreadId 120] INFO hie-bios: ghc: could not execute: opt
2022-08-05 23:07:02.929924 [ThreadId 120] INFO hie-bios: cabal: Failed to build hello-cabal-0.1.0.0 (which is required by
2022-08-05 23:07:02.929987 [ThreadId 120] INFO hie-bios: exe:hello-cabal from hello-cabal-0.1.0.0).
2022-08-05 23:07:02.930004 [ThreadId 120] INFO hie-bios:
2022-08-05T21:07:02.937502Z | Debug | Session loading result: Left [CradleError {cradleErrorDependencies = ["hello-cabal.cabal","cabal.project","cabal.project.local"], cradleErrorExitCode = ExitFailure 1, cradleErrorStderr = ["Failed to parse result of calling cabal","Failed command: cabal --builddir=/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c v2-repl --with-compiler /Users/stefanscheidt/.cache/hie-bios/wrapper-b54f81dea4c0e6d1626911c526bc4e36 --with-hc-pkg /Users/stefanscheidt/.cache/hie-bios/ghc-pkg-6a65c19ae905dbcea0cb8a9889f57773 hello-cabal:exe:hello-cabal","Build profile: -w ghc-8.10.7 -O1\nIn order, the following will be built (use -v for more details):\n - hello-cabal-0.1.0.0 (lib) (first run)\n - hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)\nPreprocessing library for hello-cabal-0.1.0.0..\nBuilding library for hello-cabal-0.1.0.0..\n[1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )\n","\n<no location info>: error:\n Warning: Couldn't figure out LLVM version!\n Make sure you have installed LLVM between [9 and 13)\nghc: could not execute: opt\ncabal: Failed to build hello-cabal-0.1.0.0 (which is required by\nexe:hello-cabal from hello-cabal-0.1.0.0).\n\n","","Process Environment:","HIE_BIOS_GHC: /Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc","HIE_BIOS_GHC_ARGS: -B/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7"]}]
2022-08-05T21:07:02.938616Z | Info | updateFileDiagnostics published different from new diagnostics - file diagnostics: File: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
Hidden: no
Range: 1:1-2:1
Source: cradle
Severity: DsError
Message:
Failed to parse result of calling cabal
Failed command: cabal
--builddir=/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c
v2-repl --with-compiler
/Users/stefanscheidt/.cache/hie-bios/wrapper-b54f81dea4c0e6d1626911c526bc4e36 --with-hc-pkg
/Users/stefanscheidt/.cache/hie-bios/ghc-pkg-6a65c19ae905dbcea0cb8a9889f57773
hello-cabal:exe:hello-cabal
Build profile: -w ghc-8.10.7 -O1
In order, the following will be built (use -v for more details):
- hello-cabal-0.1.0.0 (lib) (first run)
- hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)
Preprocessing library for hello-cabal-0.1.0.0..
Building library for hello-cabal-0.1.0.0..
[1 of 1] Compiling MyLib ( src/MyLib.hs,
/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o,
/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o
)
<no location info>: error:
Warning: Couldn't figure out LLVM version!
Make sure you have installed LLVM between [9 and 13)
ghc: could not execute: opt
cabal: Failed to build hello-cabal-0.1.0.0 (which is required by
exe:hello-cabal from hello-cabal-0.1.0.0).
Process Environment:
HIE_BIOS_GHC: /Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc
HIE_BIOS_GHC_ARGS: -B/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7
2022-08-05T21:07:02.954621Z | Debug | Finished: User TypeCheck Took: 0.61s
2022-08-05T21:07:02.955586Z | Debug | Finished: GetHie Took: 0.00s
2022-08-05T21:07:02.955836Z | Debug | Finished: GenerateCore Took: 0.00s
2022-08-05T21:07:02.956034Z | Debug | LOOKUP UP PERSISTENT FOR: GetModSummaryWithoutTimestamps
2022-08-05T21:07:02.956320Z | Debug | LOOKUP UP PERSISTENT FOR: GhcSessionDeps
Files that failed:
* /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
Completed (1 file worked, 1 file failed)
Paste the contents of extension specific log, you can check instructions about how to find it here
Extension log:
2022-08-05 20:53:24.1260000 [client] DEBUG Environment variables:
2022-08-05 20:53:24.1260000 [client] DEBUG PATH: /Users/stefanscheidt/.local/bin:/Users/stefanscheidt/local/bin:/usr/local/bin:/usr/local/sbin:/Users/stefanscheidt/.sdkman/candidates/scalacli/current/bin:/Users/stefanscheidt/.sdkman/candidates/sbt/current/bin:/Users/stefanscheidt/.sdkman/candidates/maven/current/bin:/Users/stefanscheidt/.sdkman/candidates/kotlin/current/bin:/Users/stefanscheidt/.sdkman/candidates/java/current/bin:/Users/stefanscheidt/.sdkman/candidates/gradle/current/bin:/Users/stefanscheidt/.pyenv/shims:/Users/stefanscheidt/.pyenv/bin:/Users/stefanscheidt/.cabal/bin:/Users/stefanscheidt/.ghcup/bin:/opt/homebrew/opt/llvm@12/bin:/opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/stefanscheidt/.cargo/bin
2022-08-05 20:53:24.1260000 [client] INFO Finding haskell-language-server
2022-08-05 20:53:24.1270000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.1300000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.1300000 [client] INFO Executing 'ghcup --no-verbose upgrade' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.3230000 [client] DEBUG Execution of 'ghcup --no-verbose upgrade' terminated with code 0
2022-08-05 20:53:24.3230000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.3260000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.3260000 [client] INFO Executing 'ghcup --no-verbose list -t hls -c installed -r' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.3720000 [client] DEBUG Execution of 'ghcup --no-verbose list -t hls -c installed -r' terminated with code 0
2022-08-05 20:53:24.3720000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.3740000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.3740000 [client] INFO Executing 'ghcup --no-verbose list -t cabal -c installed -r' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.4190000 [client] DEBUG Execution of 'ghcup --no-verbose list -t cabal -c installed -r' terminated with code 0
2022-08-05 20:53:24.4190000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.4230000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.4230000 [client] INFO Executing 'ghcup --no-verbose list -t stack -c installed -r' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.4720000 [client] DEBUG Execution of 'ghcup --no-verbose list -t stack -c installed -r' terminated with code 0
2022-08-05 20:53:24.4740000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.4760000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.4770000 [client] INFO Executing 'ghcup --no-verbose whereis hls 1.7.0.0' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.4970000 [client] DEBUG Execution of 'ghcup --no-verbose whereis hls 1.7.0.0' terminated with code 0
2022-08-05 20:53:24.4970000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.4990000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.4990000 [client] INFO Executing 'ghcup --no-verbose whereis cabal 3.6.2.0' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.5190000 [client] DEBUG Execution of 'ghcup --no-verbose whereis cabal 3.6.2.0' terminated with code 0
2022-08-05 20:53:24.5190000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.5210000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.5210000 [client] INFO Executing 'ghcup --no-verbose whereis stack 2.7.5' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.5520000 [client] DEBUG Execution of 'ghcup --no-verbose whereis stack 2.7.5' terminated with code 0
2022-08-05 20:53:24.5540000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:24.5560000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:24.5560000 [client] INFO Executing 'ghcup --no-verbose run --hls 1.7.0.0 --cabal 3.6.2.0 --stack 2.7.5 --install' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:24.6020000 [client] DEBUG Execution of 'ghcup --no-verbose run --hls 1.7.0.0 --cabal 3.6.2.0 --stack 2.7.5 --install' terminated with code 0
2022-08-05 20:53:24.6020000 [client] INFO Working out the project GHC version. This might take a while...
2022-08-05 20:53:24.6020000 [client] INFO Executing 'haskell-language-server-wrapper --project-ghc-version' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.2340000 [client] DEBUG Execution of 'haskell-language-server-wrapper --project-ghc-version' terminated with code 0
2022-08-05 20:53:26.2340000 [client] INFO The GHC version for the project or file: 8.10.7
2022-08-05 20:53:26.4580000 [client] INFO Platform constants: Darwin, A_ARM64
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.4.0 compatible with GHC Versions: 8.10.7
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.5.0 compatible with GHC Versions: 8.10.7
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.5.1 compatible with GHC Versions: 8.10.7
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.6.0.0 compatible with GHC Versions: 8.10.7
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.6.1.0 compatible with GHC Versions: 8.10.7
2022-08-05 20:53:26.4580000 [client] DEBUG HLS 1.7.0.0 compatible with GHC Versions: 8.10.7,9.0.2,9.2.1,9.2.2
2022-08-05 20:53:26.4590000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:26.4630000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:26.4640000 [client] INFO Executing 'ghcup --no-verbose list -t hls -c installed -r' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.5310000 [client] DEBUG Execution of 'ghcup --no-verbose list -t hls -c installed -r' terminated with code 0
2022-08-05 20:53:26.5310000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:26.5330000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:26.5330000 [client] INFO Executing 'ghcup --no-verbose whereis bindir' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.5540000 [client] DEBUG Execution of 'ghcup --no-verbose whereis bindir' terminated with code 0
2022-08-05 20:53:26.5540000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:26.5560000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:26.5560000 [client] INFO Executing 'ghcup --no-verbose whereis hls 1.7.0.0' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.5770000 [client] DEBUG Execution of 'ghcup --no-verbose whereis hls 1.7.0.0' terminated with code 0
2022-08-05 20:53:26.5770000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:26.5780000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:26.5790000 [client] INFO Executing 'ghcup --no-verbose whereis ghc 8.10.7' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.5990000 [client] DEBUG Execution of 'ghcup --no-verbose whereis ghc 8.10.7' terminated with code 0
2022-08-05 20:53:26.5990000 [client] INFO Checking for ghcup installation
2022-08-05 20:53:26.6010000 [client] INFO found ghcup at ghcup
2022-08-05 20:53:26.6010000 [client] INFO Executing 'ghcup --no-verbose run --hls 1.7.0.0 --cabal 3.6.2.0 --stack 2.7.5 --ghc 8.10.7 --install' in cwd '/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal'
2022-08-05 20:53:26.6590000 [client] DEBUG Execution of 'ghcup --no-verbose run --hls 1.7.0.0 --cabal 3.6.2.0 --stack 2.7.5 --ghc 8.10.7 --install' terminated with code 0
2022-08-05 20:53:26.6590000 [client] INFO Activating the language server in working dir: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal (the workspace folder)
2022-08-05 20:53:26.6600000 [client] INFO run command: /Users/stefanscheidt/.ghcup/tmp/ghcup-ghc-8.10.7_cabal-3.6.2.0_hls-1.7.0.0_stack-2.7.5/haskell-language-server-wrapper --lsp -d
2022-08-05 20:53:26.6600000 [client] INFO debug command: /Users/stefanscheidt/.ghcup/tmp/ghcup-ghc-8.10.7_cabal-3.6.2.0_hls-1.7.0.0_stack-2.7.5/haskell-language-server-wrapper --lsp -d
2022-08-05 20:53:26.6600000 [client] INFO server environment variables:
2022-08-05 20:53:26.6600000 [client] INFO PATH=/Users/stefanscheidt/.ghcup/tmp/ghcup-ghc-8.10.7_cabal-3.6.2.0_hls-1.7.0.0_stack-2.7.5:/opt/homebrew/opt/llvm@12/bin:/Users/stefanscheidt/.local/bin:/Users/stefanscheidt/local/bin:/usr/local/bin:/usr/local/sbin:/Users/stefanscheidt/.sdkman/candidates/scalacli/current/bin:/Users/stefanscheidt/.sdkman/candidates/sbt/current/bin:/Users/stefanscheidt/.sdkman/candidates/maven/current/bin:/Users/stefanscheidt/.sdkman/candidates/kotlin/current/bin:/Users/stefanscheidt/.sdkman/candidates/java/current/bin:/Users/stefanscheidt/.sdkman/candidates/gradle/current/bin:/Users/stefanscheidt/.pyenv/shims:/Users/stefanscheidt/.pyenv/bin:/Users/stefanscheidt/.cabal/bin:/Users/stefanscheidt/.ghcup/bin:/opt/homebrew/opt/llvm@12/bin:/opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/stefanscheidt/.cargo/bin
2022-08-05 20:53:26.6600000 [client] DEBUG document selector patten: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/**/*
2022-08-05 20:53:26.6610000 [client] INFO Starting language server
No 'hie.yaml' found. Try to discover the project type!
Run entered for haskell-language-server-wrapper(haskell-language-server-wrapper) Version 1.7.0.0 aarch64 ghc-9.2.2
Current directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
Operating system: darwin
Arguments: ["--lsp","-d"]
Cradle directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
Cradle type: Cabal
Tool versions found on the $PATH
cabal: 3.6.2.0
stack: 2.7.5
ghc: 8.10.7
Consulting the cradle to get project GHC version...
Project GHC version: 8.10.7
haskell-language-server exe candidates: ["haskell-language-server-8.10.7","haskell-language-server"]
Launching haskell-language-server exe at:/Users/stefanscheidt/.ghcup/tmp/ghcup-ghc-8.10.7_cabal-3.6.2.0_hls-1.7.0.0_stack-2.7.5/haskell-language-server-8.10.7
2022-08-05T20:53:30.568531Z | Info | No log file specified; using stderr.
2022-08-05T20:53:30.568780Z | Info | haskell-language-server version: 1.7.0.0 (GHC: 8.10.7) (PATH: /Users/stefanscheidt/.ghcup/hls/1.7.0.0/lib/haskell-language-server-1.7.0.0/bin/haskell-language-server-8.10.7)
2022-08-05T20:53:30.569087Z | Info | Directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
2022-08-05T20:53:30.569221Z | Info | Starting (haskell-language-server) LSP server...
GhcideArguments {argsCommand = LSP, argsCwd = Nothing, argsShakeProfiling = Nothing, argsTesting = False, argsExamplePlugin = False, argsDebugOn = True, argsLogFile = Nothing, argsThreads = 0, argsProjectGhcVersion = False}
PluginIds: [ pragmas
, floskell
, fourmolu
, tactics
, ormolu
, stylish-haskell
, rename
, retrie
, brittany
, callHierarchy
, class
, haddockComments
, eval
, importLens
, qualifyImportedNames
, refineImports
, moduleName
, hlint
, splice
, alternateNumberFormat
, selectionRange
, changeTypeSignature
, ghcide-hover-and-symbols
, ghcide-code-actions-imports-exports
, ghcide-code-actions-type-signatures
, ghcide-code-actions-bindings
, ghcide-code-actions-fill-holes
, ghcide-completions
, ghcide-type-lenses
, ghcide-core
, LSPRecorderCallback ]
2022-08-05T20:53:30.570735Z | Info | Logging heap statistics every 60.00s
2022-08-05T20:53:30.607063Z | Info | Staring LSP server...
If you are seeing this in a terminal, you probably should have run WITHOUT the --lsp option!
2022-08-05T20:53:30.608226Z | Info | Started LSP server in 0.00s
2022-08-05T20:53:31.020447Z | Debug | Setting initial dynflags...
2022-08-05T20:53:31.021881Z | Debug | shouldRunSubset: True
2022-08-05T20:53:31.021966Z | Debug | Initializing exports map from hiedb
2022-08-05T20:53:31.022186Z | Info | Registering IDE configuration: IdeConfiguration {workspaceFolders = fromList [NormalizedUri (-2163893293831948536) "file:///Users/stefanscheidt/Code/Learning/Haskell/hello-cabal"], clientSettings = hashed Nothing}
2022-08-05T20:53:31.024143Z | Debug | Done initializing exports map from hiedb. Size: 0
2022-08-05T20:53:31.025305Z | Debug | Shake session initialized
2022-08-05T20:53:31.025448Z | Debug | Configuration changed: Object (fromList [("haskell",Object (fromList [("checkProject",Bool True),("formattingProvider",String "ormolu"),("ghcupExecutablePath",String ""),("indentationRules",Object (fromList [("enabled",Bool True)])),("logFile",String ""),("manageHLS",String "GHCup"),("maxCompletions",Number 40.0),("metadataURL",String ""),("openDocumentationInHackage",Bool True),("openSourceInHackage",Bool True),("plugin",Object (fromList [("alternateNumberFormat",Object (fromList [("globalOn",Bool True)])),("callHierarchy",Object (fromList [("globalOn",Bool True)])),("changeTypeSignature",Object (fromList [("globalOn",Bool True)])),("class",Object (fromList [("globalOn",Bool True)])),("eval",Object (fromList [("config",Object (fromList [("diff",Bool True),("exception",Bool False)])),("globalOn",Bool True)])),("ghcide-code-actions-bindings",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-fill-holes",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-imports-exports",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-type-signatures",Object (fromList [("globalOn",Bool True)])),("ghcide-completions",Object (fromList [("config",Object (fromList [("autoExtendOn",Bool True),("snippetsOn",Bool True)])),("globalOn",Bool True)])),("ghcide-hover-and-symbols",Object (fromList [("hoverOn",Bool True),("symbolsOn",Bool True)])),("ghcide-type-lenses",Object (fromList [("config",Object (fromList [("mode",String "always")])),("globalOn",Bool True)])),("haddockComments",Object (fromList [("globalOn",Bool True)])),("hlint",Object (fromList [("codeActionsOn",Bool True),("config",Object (fromList [("flags",Array [])])),("diagnosticsOn",Bool True)])),("importLens",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True)])),("moduleName",Object (fromList [("globalOn",Bool True)])),("pragmas",Object (fromList [("codeActionsOn",Bool True),("completionOn",Bool True)])),("qualifyImportedNames",Object (fromList [("globalOn",Bool True)])),("refineImports",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True)])),("rename",Object (fromList [("config",Object (fromList [("crossModule",Bool False)])),("globalOn",Bool True)])),("retrie",Object (fromList [("globalOn",Bool True)])),("splice",Object (fromList [("globalOn",Bool True)])),("tactics",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True),("config",Object (fromList [("auto_gas",Number 4.0),("hole_severity",Null),("max_use_ctor_actions",Number 5.0),("proofstate_styling",Bool True),("timeout_duration",Number 2.0)])),("hoverOn",Bool True)]))])),("promptBeforeDownloads",String "true"),("releasesDownloadStoragePath",String ""),("releasesURL",String ""),("serverEnvironment",Object (fromList [("PATH",String "/opt/homebrew/opt/llvm@12/bin:$PATH")])),("serverExecutablePath",String ""),("serverExtraArgs",String ""),("toolchain",Object (fromList [])),("trace",Object (fromList [("client",String "debug"),("server",String "messages")])),("upgradeGHCup",Bool True)]))])
2022-08-05T20:53:31.025745Z | Debug | Finished build session
AsyncCancelled
2022-08-05T20:53:31.025762Z | Debug | Restarting build session due to config change
Action Queue: []
Keys: [GetClientSettings; ]
Aborting previous build session took 0.00s
[Info - 10:53:31 PM] haskell-language-server version: 1.7.0.0 (GHC: 8.10.7) (PATH: /Users/stefanscheidt/.ghcup/hls/1.7.0.0/lib/haskell-language-server-1.7.0.0/bin/haskell-language-server-8.10.7)
2022-08-05T20:53:31.026009Z | Debug | Set files of interest to: fromList [(NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs",Modified {firstOpen = True})]
2022-08-05T20:53:31.026612Z | Debug | Finished build session
AsyncCancelled
2022-08-05T20:53:31.026615Z | Debug | Restarting build session due to /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs (modified)
Action Queue: []
Keys: [ GetModificationTime; /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
, IsFileOfInterest; /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
, GetClientSettings; ]
Aborting previous build session took 0.00s
2022-08-05T20:53:31.026719Z | Debug | Opened text document: file:///Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
2022-08-05T20:53:31.027036Z | Debug | Getting hlint ideas for NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T20:53:31.027364Z | Info | Cradle path: app/Main.hs
2022-08-05T20:53:31.027444Z | Warning | No [cradle](https://github.com/mpickering/hie-bios#hie-bios) found for app/Main.hs.
Proceeding with [implicit cradle](https://hackage.haskell.org/package/implicit-hie).
You should ignore this message, unless you see a 'Multi Cradle: No prefixes matched' error.
[Info - 10:53:31 PM] Directory: /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal
[Info - 10:53:31 PM] Starting (haskell-language-server) LSP server...
GhcideArguments {argsCommand = LSP, argsCwd = Nothing, argsShakeProfiling = Nothing, argsTesting = False, argsExamplePlugin = False, argsDebugOn = True, argsLogFile = Nothing, argsThreads = 0, argsProjectGhcVersion = False}
PluginIds: [ pragmas
, floskell
, fourmolu
, tactics
, ormolu
, stylish-haskell
, rename
, retrie
, brittany
, callHierarchy
, class
, haddockComments
, eval
, importLens
, qualifyImportedNames
, refineImports
, moduleName
, hlint
, splice
, alternateNumberFormat
, selectionRange
, changeTypeSignature
, ghcide-hover-and-symbols
, ghcide-code-actions-imports-exports
, ghcide-code-actions-type-signatures
, ghcide-code-actions-bindings
, ghcide-code-actions-fill-holes
, ghcide-completions
, ghcide-type-lenses
, ghcide-core
, LSPRecorderCallback ]
[Info - 10:53:31 PM] Logging heap statistics every 60.00s
[Info - 10:53:31 PM] Staring LSP server...
If you are seeing this in a terminal, you probably should have run WITHOUT the --lsp option!
[Info - 10:53:31 PM] Started LSP server in 0.00s
Setting initial dynflags...
shouldRunSubset: True
Initializing exports map from hiedb
[Info - 10:53:31 PM] Registering IDE configuration: IdeConfiguration {workspaceFolders = fromList [NormalizedUri (-2163893293831948536) "file:///Users/stefanscheidt/Code/Learning/Haskell/hello-cabal"], clientSettings = hashed Nothing}
Done initializing exports map from hiedb. Size: 0
Shake session initialized
Configuration changed: Object (fromList [("haskell",Object (fromList [("checkProject",Bool True),("formattingProvider",String "ormolu"),("ghcupExecutablePath",String ""),("indentationRules",Object (fromList [("enabled",Bool True)])),("logFile",String ""),("manageHLS",String "GHCup"),("maxCompletions",Number 40.0),("metadataURL",String ""),("openDocumentationInHackage",Bool True),("openSourceInHackage",Bool True),("plugin",Object (fromList [("alternateNumberFormat",Object (fromList [("globalOn",Bool True)])),("callHierarchy",Object (fromList [("globalOn",Bool True)])),("changeTypeSignature",Object (fromList [("globalOn",Bool True)])),("class",Object (fromList [("globalOn",Bool True)])),("eval",Object (fromList [("config",Object (fromList [("diff",Bool True),("exception",Bool False)])),("globalOn",Bool True)])),("ghcide-code-actions-bindings",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-fill-holes",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-imports-exports",Object (fromList [("globalOn",Bool True)])),("ghcide-code-actions-type-signatures",Object (fromList [("globalOn",Bool True)])),("ghcide-completions",Object (fromList [("config",Object (fromList [("autoExtendOn",Bool True),("snippetsOn",Bool True)])),("globalOn",Bool True)])),("ghcide-hover-and-symbols",Object (fromList [("hoverOn",Bool True),("symbolsOn",Bool True)])),("ghcide-type-lenses",Object (fromList [("config",Object (fromList [("mode",String "always")])),("globalOn",Bool True)])),("haddockComments",Object (fromList [("globalOn",Bool True)])),("hlint",Object (fromList [("codeActionsOn",Bool True),("config",Object (fromList [("flags",Array [])])),("diagnosticsOn",Bool True)])),("importLens",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True)])),("moduleName",Object (fromList [("globalOn",Bool True)])),("pragmas",Object (fromList [("codeActionsOn",Bool True),("completionOn",Bool True)])),("qualifyImportedNames",Object (fromList [("globalOn",Bool True)])),("refineImports",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True)])),("rename",Object (fromList [("config",Object (fromList [("crossModule",Bool False)])),("globalOn",Bool True)])),("retrie",Object (fromList [("globalOn",Bool True)])),("splice",Object (fromList [("globalOn",Bool True)])),("tactics",Object (fromList [("codeActionsOn",Bool True),("codeLensOn",Bool True),("config",Object (fromList [("auto_gas",Number 4.0),("hole_severity",Null),("max_use_ctor_actions",Number 5.0),("proofstate_styling",Bool True),("timeout_duration",Number 2.0)])),("hoverOn",Bool True)]))])),("promptBeforeDownloads",String "true"),("releasesDownloadStoragePath",String ""),("releasesURL",String ""),("serverEnvironment",Object (fromList [("PATH",String "/opt/homebrew/opt/llvm@12/bin:$PATH")])),("serverExecutablePath",String ""),("serverExtraArgs",String ""),("toolchain",Object (fromList [])),("trace",Object (fromList [("client",String "debug"),("server",String "messages")])),("upgradeGHCup",Bool True)]))])
Finished build session
AsyncCancelled
Restarting build session due to config change
Action Queue: []
Keys: [GetClientSettings; ]
Aborting previous build session took 0.00s
Set files of interest to: fromList [(NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs",Modified {firstOpen = True})]
Finished build session
AsyncCancelled
Restarting build session due to /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs (modified)
Action Queue: []
Keys: [ GetModificationTime; /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
, IsFileOfInterest; /Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
, GetClientSettings; ]
Aborting previous build session took 0.00s
Opened text document: file:///Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs
Getting hlint ideas for NormalizedFilePath "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
[Info - 10:53:31 PM] Cradle path: app/Main.hs
[Warn - 10:53:31 PM] No [cradle](https://github.com/mpickering/hie-bios#hie-bios) found for app/Main.hs.
Proceeding with [implicit cradle](https://hackage.haskell.org/package/implicit-hie).
You should ignore this message, unless you see a 'Multi Cradle: No prefixes matched' error.
2022-08-05T20:53:31.029854Z | Debug | Cradle: Cradle {cradleRootDir = "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal", cradleOptsProg = CradleAction: Cabal}
Cradle: Cradle {cradleRootDir = "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal", cradleOptsProg = CradleAction: Cabal}
2022-08-05 22:53:31.405271 [ThreadId 100] INFO hie-bios: Build profile: -w ghc-8.10.7 -O1
2022-08-05 22:53:31.407397 [ThreadId 100] INFO hie-bios: In order, the following will be built (use -v for more details):
2022-08-05 22:53:31.407434 [ThreadId 100] INFO hie-bios: - hello-cabal-0.1.0.0 (lib) (first run)
2022-08-05 22:53:31.407462 [ThreadId 100] INFO hie-bios: - hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)
2022-08-05 22:53:31.448348 [ThreadId 100] INFO hie-bios: Preprocessing library for hello-cabal-0.1.0.0..
2022-08-05 22:53:31.44847 [ThreadId 100] INFO hie-bios: Building library for hello-cabal-0.1.0.0..
2022-08-05 22:53:31.506358 [ThreadId 100] INFO hie-bios: [1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )
2022-08-05 22:53:31.528952 [ThreadId 98] INFO hie-bios:
2022-08-05 22:53:31.529034 [ThreadId 98] INFO hie-bios: <no location info>: error:
2022-08-05 22:53:31.529056 [ThreadId 98] INFO hie-bios: Warning: Couldn't figure out LLVM version!
2022-08-05 22:53:31.529074 [ThreadId 98] INFO hie-bios: Make sure you have installed LLVM between [9 and 13)
2022-08-05 22:53:31.533603 [ThreadId 98] INFO hie-bios: ghc: could not execute: opt
2022-08-05 22:53:31.561435 [ThreadId 98] INFO hie-bios: cabal: Failed to build hello-cabal-0.1.0.0 (which is required by
2022-08-05 22:53:31.561495 [ThreadId 98] INFO hie-bios: exe:hello-cabal from hello-cabal-0.1.0.0).
2022-08-05 22:53:31.561521 [ThreadId 98] INFO hie-bios:
2022-08-05T20:53:31.571935Z | Debug | Session loading result: Left [CradleError {cradleErrorDependencies = ["hello-cabal.cabal","cabal.project","cabal.project.local"], cradleErrorExitCode = ExitFailure 1, cradleErrorStderr = ["Failed to parse result of calling cabal","Failed command: cabal --builddir=/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c v2-repl --with-compiler /Users/stefanscheidt/.cache/hie-bios/wrapper-b54f81dea4c0e6d1626911c526bc4e36 --with-hc-pkg /Users/stefanscheidt/.cache/hie-bios/ghc-pkg-6a65c19ae905dbcea0cb8a9889f57773 hello-cabal:exe:hello-cabal","Build profile: -w ghc-8.10.7 -O1\nIn order, the following will be built (use -v for more details):\n - hello-cabal-0.1.0.0 (lib) (first run)\n - hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)\nPreprocessing library for hello-cabal-0.1.0.0..\nBuilding library for hello-cabal-0.1.0.0..\n[1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )\n","\n<no location info>: error:\n Warning: Couldn't figure out LLVM version!\n Make sure you have installed LLVM between [9 and 13)\nghc: could not execute: opt\ncabal: Failed to build hello-cabal-0.1.0.0 (which is required by\nexe:hello-cabal from hello-cabal-0.1.0.0).\n\n","","Process Environment:","HIE_BIOS_GHC: /Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc","HIE_BIOS_GHC_ARGS: -B/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7"]}]
Session loading result: Left [CradleError {cradleErrorDependencies = ["hello-cabal.cabal","cabal.project","cabal.project.local"], cradleErrorExitCode = ExitFailure 1, cradleErrorStderr = ["Failed to parse result of calling cabal","Failed command: cabal --builddir=/Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c v2-repl --with-compiler /Users/stefanscheidt/.cache/hie-bios/wrapper-b54f81dea4c0e6d1626911c526bc4e36 --with-hc-pkg /Users/stefanscheidt/.cache/hie-bios/ghc-pkg-6a65c19ae905dbcea0cb8a9889f57773 hello-cabal:exe:hello-cabal","Build profile: -w ghc-8.10.7 -O1\nIn order, the following will be built (use -v for more details):\n - hello-cabal-0.1.0.0 (lib) (first run)\n - hello-cabal-0.1.0.0 (exe:hello-cabal) (first run)\nPreprocessing library for hello-cabal-0.1.0.0..\nBuilding library for hello-cabal-0.1.0.0..\n[1 of 1] Compiling MyLib ( src/MyLib.hs, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.o, /Users/stefanscheidt/.cache/hie-bios/dist-hello-cabal-b49d5427e1331885a092143adbfd1f2c/build/aarch64-osx/ghc-8.10.7/hello-cabal-0.1.0.0/build/MyLib.dyn_o )\n","\n<no location info>: error:\n Warning: Couldn't figure out LLVM version!\n Make sure you have installed LLVM between [9 and 13)\nghc: could not execute: opt\ncabal: Failed to build hello-cabal-0.1.0.0 (which is required by\nexe:hello-cabal from hello-cabal-0.1.0.0).\n\n","","Process Environment:","HIE_BIOS_GHC: /Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc","HIE_BIOS_GHC_ARGS: -B/Users/stefanscheidt/.ghcup/ghc/8.10.7/lib/ghc-8.10.7"]}]
2022-08-05T20:53:31.572831Z | Debug | LOOKUP UP PERSISTENT FOR: GetParsedModule
2022-08-05T20:53:31.572878Z | Debug | Finished: Outline Took: 0.53s
2022-08-05T20:53:31.573078Z | Debug | LOOKUP UP PERSISTENT FOR: GetModSummaryWithoutTimestamps
2022-08-05T20:53:31.573139Z | Debug | LOOKUP UP PERSISTENT FOR: GhcSessionDeps
LOOKUP UP PERSISTENT FOR: GetParsedModule
Finished: Outline Took: 0.53s
LOOKUP UP PERSISTENT FOR: GetModSummaryWithoutTimestamps
LOOKUP UP PERSISTENT FOR: GhcSessionDeps
2022-08-05T20:53:32.349202Z | Debug | src/Ide/Plugin/Eval/CodeLens.hs:127:15 "fp" "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T20:53:32.349308Z | Debug | Finished: codeLens.GhcSession Took: 0.00s
src/Ide/Plugin/Eval/CodeLens.hs:127:15 "fp" "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T20:53:32.349596Z | Debug | LOOKUP UP PERSISTENT FOR: GetParsedModuleWithComments
Finished: codeLens.GhcSession Took: 0.00s
2022-08-05T20:53:32.349636Z | Debug | Finished: ModuleName.ghcSession Took: 0.00s
LOOKUP UP PERSISTENT FOR: GetParsedModuleWithComments
2022-08-05T20:53:32.349648Z | Debug | Finished: Wingman.getIdeDynflags.GetModSummaryWithoutTimestamps Took: 0.00s
Finished: ModuleName.ghcSession Took: 0.00s
2022-08-05T20:53:32.349672Z | Debug | LOOKUP UP PERSISTENT FOR: MinimalImports
2022-08-05T20:53:32.349687Z | Debug | Finished: codeLens.TypeCheck Took: 0.00s
Finished: Wingman.getIdeDynflags.GetModSummaryWithoutTimestamps Took: 0.00s
2022-08-05T20:53:32.349714Z | Debug | LOOKUP UP PERSISTENT FOR: GetEvalComments
LOOKUP UP PERSISTENT FOR: MinimalImports
2022-08-05T20:53:32.349905Z | Debug | Finished: codeLens.GetBindings Took: 0.00s
Finished: codeLens.TypeCheck Took: 0.00s
2022-08-05T20:53:32.349951Z | Debug | Finished: Took: 0.00s
2022-08-05T20:53:32.349991Z | Debug | LOOKUP UP PERSISTENT FOR: RefineImports
LOOKUP UP PERSISTENT FOR: GetEvalComments
2022-08-05T20:53:32.349993Z | Debug | Finished: codeLens.GetGlobalBindingTypeSigs Took: 0.00s
Finished: codeLens.GetBindings Took: 0.00s
Finished: Took: 0.00s
LOOKUP UP PERSISTENT FOR: RefineImports
Finished: codeLens.GetGlobalBindingTypeSigs Took: 0.00s
2022-08-05T20:53:32.350086Z | Debug | Finished: eval.GetParsedModuleWithComments Took: 0.00s
2022-08-05T20:53:32.350288Z | Debug | Finished: RefineImports Took: 0.00s
Finished: eval.GetParsedModuleWithComments Took: 0.00s
Finished: RefineImports Took: 0.00s
2022-08-05T20:53:44.458989Z | Debug | src/Ide/Plugin/Eval/CodeLens.hs:127:15 "fp" "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T20:53:44.459234Z | Debug | Finished: RefineImports Took: 0.00s
src/Ide/Plugin/Eval/CodeLens.hs:127:15 "fp" "/Users/stefanscheidt/Code/Learning/Haskell/hello-cabal/app/Main.hs"
2022-08-05T20:53:44.459238Z | Debug | Finished: Wingman.getIdeDynflags.GetModSummaryWithoutTimestamps Took: 0.00s
2022-08-05T20:53:44.459276Z | Debug | Finished: Took: 0.00s
2022-08-05T20:53:44.459295Z | Debug | Finished: codeLens.GhcSession Took: 0.00s
2022-08-05T20:53:44.459325Z | Debug | Finished: codeLens.TypeCheck Took: 0.00s
2022-08-05T20:53:44.459348Z | Debug | Finished: codeLens.GetBindings Took: 0.00s
Finished: RefineImports Took: 0.00s
2022-08-05T20:53:44.459352Z | Debug | Finished: ModuleName.ghcSession Took: 0.00s
2022-08-05T20:53:44.459365Z | Debug | Finished: eval.GetParsedModuleWithComments Took: 0.00s
Finished: Wingman.getIdeDynflags.GetModSummaryWithoutTimestamps Took: 0.00s
2022-08-05T20:53:44.459403Z | Debug | Finished: codeLens.GetGlobalBindingTypeSigs Took: 0.00s
Finished: Took: 0.00s
Finished: codeLens.GhcSession Took: 0.00s
Finished: codeLens.TypeCheck Took: 0.00s
Finished: codeLens.GetBindings Took: 0.00s
Finished: ModuleName.ghcSession Took: 0.00s
Finished: eval.GetParsedModuleWithComments Took: 0.00s
Finished: codeLens.GetGlobalBindingTypeSigs Took: 0.00s
2022-08-05T20:54:30.572036Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:54:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T20:55:30.573875Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:55:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T20:56:30.575122Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:56:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T20:57:30.577202Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:57:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T20:58:30.579089Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:58:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T20:59:30.580896Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 10:59:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T21:00:30.582956Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 11:00:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T21:01:30.585406Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 11:01:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
2022-08-05T21:02:30.587069Z | Info | Live bytes: 0.00MB Heap size: 0.00MB
[Info - 11:02:30 PM] Live bytes: 0.00MB Heap size: 0.00MB
The issues does not occur when using GHC 9.2.2 instead of GHC 8.10.7.
Hi! Thank you for the bug report.
~~Is this specific to the haskell extension? E.g. can build your project with cabal and ghc-8.10.7 in the terminal?~~
Very curious, the PATH seems to be correct, and the cli invocation succeeds...
Ok, I am theory crafting right now, maybe the location of opt is determined from the location of GHC (which is something we override) passed to cabal for 8.10.7? I can try to reproduce, locally.
First: Thanks for the super quick response!
Second: Just to make sure: It works on the command line when adding /opt/homebrew/opt/llvm@12/bin to the PATH, which I did in .zshrc. I opened the project in VS Code via code .. As a maybe irrelevant info: on Intel hardware, homebrew stuff resides in /usr/local, if this makes any difference.
When using GHC 9.2.2, everything (cabal build and cabal run) works fine (as far as I can see) on the command line and in VS Code even without adding /opt/homebrew/opt/llvm@12/bin to the PATH.
FYI: I'm a total beginner in Haskell and the whole tooling stuff (ghcup, ghc, ghci, hls, cabal, stack) and my experience is only based on GHCUp First steps, thus I may not be able to provide deeper info. I was using GHC 8.10.7 instead of 9.2.2 as it was listed as recommended by ghcup.
Your information is quite thorough, thank you very much!
Ah, interesting, the PATH variable shown in the vscode extension output looks like this:
/Users/stefanscheidt/.ghcup/tmp/ghcup-ghc-8.10.7_cabal-3.6.2.0_hls-1.7.0.0_stack-2.7.5
/opt/homebrew/opt/llvm@12/bin
/Users/stefanscheidt/.local/bin
/Users/stefanscheidt/local/bin
/usr/local/bin
/usr/local/sbin
/Users/stefanscheidt/.sdkman/candidates/scalacli/current/bin
/Users/stefanscheidt/.sdkman/candidates/sbt/current/bin
/Users/stefanscheidt/.sdkman/candidates/maven/current/bin
/Users/stefanscheidt/.sdkman/candidates/kotlin/current/bin
/Users/stefanscheidt/.sdkman/candidates/java/current/bin
/Users/stefanscheidt/.sdkman/candidates/gradle/current/bin
/Users/stefanscheidt/.pyenv/shims
/Users/stefanscheidt/.pyenv/bin
/Users/stefanscheidt/.cabal/bin
/Users/stefanscheidt/.ghcup/bin
/opt/homebrew/opt/llvm@12/bin
/opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin
/opt/homebrew/bin
/opt/homebrew/sbin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Users/stefanscheidt/.cargo/bin
so the PATH /opt/llvm@12/bin seems to be missing.
Maybe you can fix it by adding that path to your PATH variable? Like here: https://github.com/haskell/vscode-haskell#stackcabalghc-can-not-be-found
{
"haskell.serverEnvironment": {
"PATH": "/opt/llvm@12/bin:$PATH"
}
}
You can modify the serverEnvironment by opening settings > Haskell > serverEnvironment.
Hi. Sorry, but there is no path /opt/llvm@12/bin. llvm ver. 12 is installed to /opt/homebrew/opt/llvm@12, and /opt/homebrew/opt/llvm@12/bin is on the path.
By the way I already tried to add /opt/homebrew/opt/llvm@12 to the server environment path explicitly with no success.
Ah, I just misread the path you showed, because it line-breaks on my screen in an unfortunate way. Ok, then you will have to wait for me to reproduce it, no idea what is going wrong :)
OK. Thank you so much for your effort!
PATH="/opt/homebrew/Cellar/llvm@12/12.0.1_1/bin:$PATH"
… did it for me :-D
Hello, I met this question too, and I solved it.
For some reasons I switch to ghc 8.10.x and I have checked that I installed llvm@12 by command brew list, and I export PATH to the .zshrc , but ghc still throw error.
LINK
Eventually, I found this discussion did work, adding -fllvm to ghc-option succeed.