Skip to content
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

Haskell extension can't figure out LLVM version on macOS #667

Open
stefanscheidt opened this issue Aug 5, 2022 · 9 comments
Open

Haskell extension can't figure out LLVM version on macOS #667

stefanscheidt opened this issue Aug 5, 2022 · 9 comments

Comments

@stefanscheidt
Copy link

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
@stefanscheidt
Copy link
Author

The issues does not occur when using GHC 9.2.2 instead of GHC 8.10.7.

@fendor
Copy link
Collaborator

fendor commented Aug 8, 2022

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.

@stefanscheidt
Copy link
Author

stefanscheidt commented Aug 8, 2022

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.

@fendor
Copy link
Collaborator

fendor commented Aug 8, 2022

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.

@stefanscheidt
Copy link
Author

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.

@fendor
Copy link
Collaborator

fendor commented Aug 8, 2022

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 :)

@stefanscheidt
Copy link
Author

OK. Thank you so much for your effort!

@curiosdevcookie
Copy link

PATH="/opt/homebrew/Cellar/llvm@12/12.0.1_1/bin:$PATH"

… did it for me :-D

@sprinklight
Copy link

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants