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-language-server: init at 0.1.0.0 #91279
haskell-language-server: init at 0.1.0.0 #91279
Conversation
Hey @GuillaumeDesforges, cool that you are working on this. I am a bit apprehensive about deploying a software for which the developers intentionally decided not to do a release yet. Especially since we might expected additional maintenance overhead. But that‘s not on me to decide. I‘d actually love to test hls, so why not.^^ I will just give you a bit of feedback inline. I hope that‘s okay even if this is still WIP. Feel free to ignore. |
btw. can you please make haskell PRs against the haskell-updates branch? It will get merged into master once a week, if we are sure that everything works fine. |
Thanks for the review @maralorn , it is always appreciated ! As it is a WIP PR I might not apply everything right now (since it's still changing/moving around a lot) but once it stabilizes I will properly do all the above. Let's keep things clean! |
5b1f99d
to
f6fe619
Compare
@maralorn Sorry to bother you, but it seems like https://gist.github.com/GuillaumeDesforges/7da3253decd1e5b3ac8776cd0f184747
|
Can‘t say that I have encountered this one before. I mean the general issue is the difference between cabal v1-build (which uses dist) and cabal v2-build (which uses dist-newstyle). So maybe you can fix this by using |
I'm not sure if it is a Nixpkgs issue (for instance related to a cabal version/haskell wrapping voodoo) or an issue from lsp-test itself. It seems to work, let's squash and go |
58be0bc
to
53cf823
Compare
53cf823
to
90e9a40
Compare
Rebased |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@GuillaumeDesforges Thanks for working on this!
I think this is looking pretty good. I left a few comments on things to fix up, but in general this is looking good.
pkgs/development/tools/haskell/haskell-language-server/default.nix
Outdated
Show resolved
Hide resolved
Thanks @cdepillabout for the feedback, will do it right away 👍 |
808f974
to
d36627d
Compare
Lost a lot of time when trying to automate the update process since cabal2nix was not fetching the same revision of the ghcide fork as the one used by hls, but now this looks pretty good! |
@GuillaumeDesforges Thank you for putting so much work into this! I have compiled and tested this on a project of mine with neovim+coc.nvim. Works like a charm. We should probably do something like #89450 for haskell-language-server, too. I have also tried running the |
I'm open to suggestions, but I think this can be done in another PR so that this "step" is closed and I can move on in my life ;) |
By all means. Let‘s do that in a later PR. |
@GrahamcOfBorg build haskellPackages.haskell-language-server |
pkgs/development/tools/haskell/haskell-language-server/update.sh
Outdated
Show resolved
Hide resolved
@GuillaumeDesforges This looks good! Thanks for going back and forth with us so much on this. @maralorn Thanks for your reviews as well. |
Thank you very much for your time and comments, I learned a lot doing this PR :) |
this package doesn't build for ghc 8.10.1 btw:
|
It would be needed to make overrides in all the different GHC configurations. It is true I only tested 8.8.3 (current "main" GHC on nixpkgs) |
Well that concrete issue seems likely to be solvable with one simple jailbreak and is an easy upstream issue. |
@poscat0x04 If it's an upper bound issue, could you please report to upstream? |
this is the corresponding upstream issue: lspitzner/brittany#269 |
If it is bound to be fixed, we can just wait for upstream to fix. |
Seems broken on GHC 8.6.5:
|
@414owen at the time ghc 8.8 came out no one had ever heard of the haskell-language-server project. So I am not sure if it is very reasonable to expect this to work. That being said. Maybe you wanna try with "pkgs.haskell.lib.doJailbreak"? |
Cool, I'll give it a shot. |
I definitly have to test on the different available GHCs, for now I only developped the expression for 8.6.5. My apologies for the lack of clarity about that. |
@GuillaumeDesforges sure thing. This line is all it took to get it to build on 8.6.5. |
Motivation for this change
Add haskell-language-server to nixpkgs
https://github.com/haskell/haskell-language-server
Things done (after WIP)
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)