-
Notifications
You must be signed in to change notification settings - Fork 163
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
add support for haskell-language-server 0.3.0.0 #716
base: develop
Are you sure you want to change the base?
Conversation
I am testing this with the obelisk example (from Having an IDE with reflex-platform is crucial. Your work is hugely appreciated!
|
c2f1d1e
to
04ba213
Compare
@ibizaman could you help I have merged your changes on top of current master (actually it doesnt matter, I have tried also v7.1.0 and v7.0.0), then did
it prints info
it works at some files, but not in others e.g. in
Q: what this error means? it's because
related code
Q: how to tell all relevant images https://imgur.com/a/i20PGnY logs haskellvscode.log |
I also have tried with
1.3.0 instead of 0.8 in this commit. Same warnings logs haskellvscode.log |
I also see other error
I think what is happening is that hie sees
and it see |
What confuses me about this sort of thing is that there is no requirement that ones project and HLS be built with at all similar package sets, right? Wouldn't it be better to just make sure HLS builds completely separately? |
@Ericson2314 I agree and I don’t think this PR introduces this. It defines the dependencies for HLP through the override but those do not trickle to the rest. At least that was not my intention. I’ll try to get back to the PR but see no point updating it forever if there is no intent to merge it. Which I would totally understand if the devs don’t want to, it’s quite a huge project to embed. |
21eca40
to
a673a1f
Compare
Adds an overlay for adding the
haskell-language-server
and its wrapper, activated by setting the argumenthlsSupport
totrue
in thereflex-platform.project
function.I got most of the boilerplate code from the (now removed)
haskell-ide-engine
support. The complicated part was finding the right set of dependencies needed to build hlp. I couldn't use the hlp nix expression available in the recent<nixpkgs>
because I needed hlp to be compiled with the ghc version provided byreflex-platform
, otherwise hlp failed on modules with template haskell code because of incompatible dynamic libraries.I chose the package versions by first using all the packages in the source of haskell-language-server then by reaching to hackage for the rest and trying to pick the latest version of the packages.
The binaries available in
nix-shell
:Also, I put up a cachix cache called
ibizaman
.I ran the wrapper inside my project that uses template haskell and it worked:
See the github action result for this commit.
Would you be interested in merging this, I’m happy to add any test and doc required.