Skip to content

Drop dependency on shake for install.hs #63

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

Closed
wants to merge 2 commits into from

Conversation

fendor
Copy link
Collaborator

@fendor fendor commented Apr 16, 2020

As discussed with @jneira, we dont need shake to build this project. It makes the installation script more complex and increases first build-time.

There can be a number of improvements build on top of it.

@fendor fendor requested a review from jneira April 16, 2020 15:42
@jneira
Copy link
Member

jneira commented Apr 16, 2020

Amazing, shake was making the script more complex and it did not give us almost nothing in exchange.
At first glance everything looks good, i'll do a deeper one asap

@fendor
Copy link
Collaborator Author

fendor commented Apr 16, 2020

No hurry, this does not need to be merged asap, since the old script works just as well :). We can backport this to hie as well to have a larger user-base :)

@nponeccop
Copy link

I'd like to have hie finally stabilized, and this change is essentially a bike shed recoloring which has happened many times. Some changes in the patch are not even absolutely necessary - it's merely changing the signatures from MonadIO m => m a to IO a with corresponding removal of liftIO plumbing. So I vote for not backporting it, so the users have a choice between a stable hie and bleeding edge his/hls

Copy link
Collaborator

@ndmitchell ndmitchell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😢 😭 - a Shake user disappears!

More seriously, whatever works best :)

@jneira
Copy link
Member

jneira commented Apr 16, 2020

Well, afaics this pr is an internal refactoring and the user facing commands have not changed so they will not be affected at all. Imo we could backport it to hie if we think it worths.

@fendor
Copy link
Collaborator Author

fendor commented Apr 16, 2020

I am not sure if this PR helps anything. Currently, there is no problem with the shake script, so maybe there is no need to update it. We can just keep this PR in the back of our heads if something ever comes up, e.g. some new feature we desperately want and shake happens to make it harder than it needs to be.
After implementing the change, we avoid like 6 dependencies... not sure if anybody would notice 6 fewer dependencies in their build-time 😄

Copy link
Collaborator

@alanz alanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no feelings about this either way, happy to land it, happy to keep it as it is.

@jneira
Copy link
Member

jneira commented Apr 16, 2020

It seems there is some problem with the args passed to the build tools:

PS D:\dev\ws\haskell\hls> stack install.hs hls-8.6.5
Options:
    Verbosity level: --verbosity=info
Synchronizing submodule url for 'ghcide'
stty: 'entrada estándar': Inappropriate ioctl for device
Could not parse 'D:\dev\ws\haskell\hls\stack---verbosity=info.yaml':
Yaml file not found: D:\dev\ws\haskell\hls\stack---verbosity=info.yaml
See http://docs.haskellstack.org/en/stable/yaml_configuration/

********************************************************************************
Building failed, Try running `stack clean` and restart the build
If this does not work, open an issue at
        https://github.com/haskell/haskell-language-engine
********************************************************************************

install.hs: readCreateProcess: stack "--stack-yaml=stack---verbosity=info.yaml" "install" "--verbosity=info" (exit 1): failed
PS D:\dev\ws\haskell\hls> .\cabal-hls-install hls-8.6.5
Resolving dependencies...
Build profile: -w ghc-8.6.5 -O1
In order, the following will be built (use -v for more details):
 - fake-package-0 (exe:script) (configuration changed)
Configuring executable 'script' for fake-package-0..
Preprocessing executable 'script' for fake-package-0..
Building executable 'script' for fake-package-0..
[1 of 1] Compiling Main             ( Main.hs, D:\dev\ws\haskell\hls\dist-newstyle\build\x86_64-windows\ghc-8.6.5\fake-package-0\x\script\build\script\script-tmp\Main.o )
Linking D:\dev\ws\haskell\hls\dist-newstyle\build\x86_64-windows\ghc-8.6.5\fake-package-0\x\script\build\script\script.exe 
...
Options:
    Verbosity level: -v1
Synchronizing submodule url for 'ghcide'

********************************************************************************
No GHC with version -v1 has been found.
Either install a fitting GHC, use the stack targets or modify the PATH variable accordingly.
********************************************************************************

script: No GHC with version -v1 has been found.
Either install a fitting GHC, use the stack targets or modify the PATH variable accordingly.
CallStack (from HasCallStack):
  error, called at src\\Cabal.hs:46:7 in hls-install-0.8.0.0-inplace:Cabal

@sir4ur0n
Copy link
Collaborator

sir4ur0n commented Jun 4, 2020

My 2 cents: I think this is a good idea to remove Shake if it's not needed. It adds unnecessary complexity while browsing/trying to install/contribute to HLS.

@jneira
Copy link
Member

jneira commented Nov 25, 2020

@fendor this has no a high priority but do you have any plans to continue it? we could mark in some way to signal it could be taken over.

@fendor
Copy link
Collaborator Author

fendor commented Nov 25, 2020

Currently, I don't have any plans to continue it. Sure, how about closing this PR, open a new issue for it and link the closed PR?

pepeiborra pushed a commit that referenced this pull request Dec 27, 2020
Delete non-ghcide options from coc.nvim example
@pepeiborra pepeiborra force-pushed the master branch 2 times, most recently from 66ada8c to d4f5d43 Compare December 29, 2020 13:34
@fendor
Copy link
Collaborator Author

fendor commented Feb 19, 2021

Closing now since out of date and no one needs this change :)

@fendor fendor closed this Feb 19, 2021
@jneira jneira reopened this Aug 13, 2021
@jneira jneira marked this pull request as draft August 13, 2021 09:41
@jneira
Copy link
Member

jneira commented Jan 31, 2022

closing as the install script is deprecated

@jneira jneira closed this Jan 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants