Skip to content
This repository has been archived by the owner on Oct 7, 2020. It is now read-only.

Relax bounds of shake and use latest hie resolver #1464

Merged
merged 2 commits into from
Nov 20, 2019

Conversation

jneira
Copy link
Member

@jneira jneira commented Nov 20, 2019

  • The new bounds of shake let install it with all supported resolvers of hie so if users want to change shake.yaml to match the resolver of hie itself they will be able to do it
    • I still have kept the upper bound cause a new release of shake could break the script
  • I've changed the actual resolver to match the latest hie cause i think it will be the most common scenario and this way run the script and install hie will use the same ghc.
  • Tested with all stack-*.yaml resolvers and lts-14.14
  • Fixes Loosen restriction on shake version #1460

@jneira jneira requested a review from fendor November 20, 2019 07:44
@fendor
Copy link
Collaborator

fendor commented Nov 20, 2019

If you match the install script lts snapshots, then installation is not idempotent because hie uses a time extra dep, but the install script uses the bundled to time package.
so, everytime you run the script, the time package will be unregistered and registered repeatedly.

Edit: maybe it wasn't time, but the command stack install.hs hie-8.6.5 will always have to reinstall some package.

@jneira
Copy link
Member Author

jneira commented Nov 20, 2019

Mmm i am checking it but avoiding it changing the lts (and make users have to download two ghc's) doesnt seem the optimal solution. Moreover it will happen with the actual resolver doing a stack install.hs hie-8.6.4, right?
EDIT: The building of the script and the building of hie does not share the .stack-work

@jneira
Copy link
Member Author

jneira commented Nov 20, 2019

I've just executed stack install.hs hie-8.6.5 twice with this version and the second one didnt reinstall any package (not sure if that test trigger the behavior you described)

EDIT: I've run it twice again after deleting all .stack-work and behaviour is the same: https://gist.github.com/jneira/dfad2f9f6e066a7654c5c42e7e1720c8

@jneira
Copy link
Member Author

jneira commented Nov 20, 2019

In fact they dont share any snapshot dir:

D:\ws\haskell\haskell-ide-engine>stack  --stack-yaml install\shake.yaml path --snapshot-install-root --local-install-root
snapshot-install-root: D:\sr\snapshots\848d866f
local-install-root: D:\ws\haskell\haskell-ide-engine\install\.stack-work\install\d89a2807

D:\ws\haskell\haskell-ide-engine>stack  --stack-yaml stack-8.6.5.yaml path --snapshot-install-root --local-install-root
snapshot-install-root: D:\sr\snapshots\1049e0b6
local-install-root: D:\ws\haskell\haskell-ide-engine\.stack-work\install\4aba8338

@fendor
Copy link
Collaborator

fendor commented Nov 20, 2019

Hm, maybe it has changed because hie-install is now a custom package.

@jneira
Copy link
Member Author

jneira commented Nov 20, 2019

So you think it could be merged or there are still some concerns?

@fendor fendor merged commit d64467c into haskell:master Nov 20, 2019
@jneira jneira deleted the shake-bounds branch November 22, 2019 09:37
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Loosen restriction on shake version
2 participants