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

Add setting for multiple hie versions #31

Closed
alanz opened this issue Dec 1, 2017 · 7 comments
Closed

Add setting for multiple hie versions #31

alanz opened this issue Dec 1, 2017 · 7 comments

Comments

@alanz
Copy link
Collaborator

alanz commented Dec 1, 2017

The hie executable is built based on a particular GHC version, and as it uses the GHC API and loads the project using it, the hie GHC and project GHC must match.

hie can now be built for GHC 8.0.2, 8.2.1 and 8.2.2.

Provide a client-side setting to choose a specific hie executable for a project.

@nponeccop
Copy link

Do you want it to be similar to hlintOn in https://github.com/alanz/vscode-hie-server/blob/master/package.json#L79 ? Note that we can define enums in JSON schema.

@Tehnix
Copy link
Contributor

Tehnix commented Dec 5, 2017

I was wondering, as to make as little coupling to any editor, would it make sense for hie itself actually be a wrapper for hie-x.y.z, which is tied to the GHC version it was built for? Then hie would do its best to hit the right GHC version and then tunnel everything to that binary, while the editor configuration would then be for forcing a particular version? 🤔

My goal is in general to pack as much of the functionality in hie itself, so we don't loose any of the advantage we are seeing of editor plugins for hie being little more than "how to start the executable in with this particular LSP plugin".

@alanz
Copy link
Collaborator Author

alanz commented Dec 5, 2017

I see this eventually being handled on the server side. But in the interim the low hanging fruit is to do it in the client, like the hlint on/off setting

@nponeccop
Copy link

I'll take a look

@stellarhoof
Copy link

Wouldn't providing a package and requiring it to be built locally with stack solve this issue? If it's included in the stack snapshots it'd choose the right package automatically. Is it because we shouldn't assume someone uses stack?

@nponeccop
Copy link

nponeccop commented Dec 19, 2017

I don't see how inclusion in stack snapshot helps us. And there are custom/local snapshots. And we need one hie per GHC. Requiring to rebuild hie whenever I change 9.14 to 9.15 and accumulation of some 20 versions of statically linked hie.exe and its dependencies are not good either.

@alanz
Copy link
Collaborator Author

alanz commented Jan 24, 2018

Closed (as good enough) via haskell/haskell-ide-engine#447 and #41

@alanz alanz closed this as completed Jan 24, 2018
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