;dev: an explicit ghc 9.2 hie.yaml for HLS, the only one that works now

This commit is contained in:
Simon Michael 2023-02-15 16:23:21 -10:00
parent 7c34f08580
commit 180d690cfc
3 changed files with 54 additions and 8 deletions

View File

@ -1,14 +1,12 @@
# This can be symlinked as hie.yaml to make hls use a different ghc version
# from the default stack.yaml.
#
# Eg mac m1 users could use it to select ghc 8.10,
# until there is a ghc-9-compatible arm hls binary.
# (Though, since such a binary is relatively easy to build yourself,
# and 2-3x faster, I recommend doing that instead.)
# Symlink this as hie.yaml to make HLS use the stack yaml/ghc mentioned below.
# This works better than relying on the implicit cradle, which doesn't
# work with multi-package projects (opening a file from a second package breaks HLS).
# Circa HLS 1.9.1.0, this one (using GHC 9.4) does not work.
cradle:
stack:
stackYaml: "stack8.10.yaml"
stackYaml: "stack.yaml"
# since there is a hie.yaml, these must be listed explicitly
# (a current limitation of hls with a multi-package stack project):

47
hie-stack9.2.yaml Normal file
View File

@ -0,0 +1,47 @@
# Symlink this as hie.yaml to make HLS use the stack yaml/ghc mentioned below.
# This works better than relying on the implicit cradle, which doesn't
# work with multi-package projects (opening a file from a second package breaks HLS).
# Circa HLS 1.9.1.0, this one (using GHC 9.2) is the only one that works.
cradle:
stack:
stackYaml: "stack9.2.yaml"
# since there is a hie.yaml, these must be listed explicitly
# (a current limitation of hls with a multi-package stack project):
components:
- path: "hledger-lib/"
component: "hledger-lib:lib"
- path: "hledger-lib/test/doctests.hs"
component: "hledger-lib:test:doctest"
- path: "hledger-lib/test/unittest.hs"
component: "hledger-lib:test:unittest"
- path: "hledger/"
component: "hledger:lib"
- path: "hledger/app/"
component: "hledger:exe:hledger"
- path: "hledger/test/unittest.hs"
component: "hledger:test:unittest"
- path: "hledger/bench/"
component: "hledger:bench:bench"
- path: "hledger-ui/"
component: "hledger-ui:exe:hledger-ui"
- path: "hledger-web/"
component: "hledger-web:lib"
- path: "hledger-web/app/"
component: "hledger-web:exe:hledger-web"
- path: "hledger-web/test/"
component: "hledger-web:test:test"
- path: "bin/"
component: "hledger:lib"
- path: "tools/"
component: "hledger:lib"
# silences hls error for Shake.hs, but I think also ignores actual errors
- path: "Shake.hs"
component: "hledger:lib"

1
hie.yaml Symbolic link
View File

@ -0,0 +1 @@
hie-stack9.2.yaml