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

Prevent extra-deps / packages from overriding GHCJS boot packages #1486

Closed
mgsloan opened this issue Dec 10, 2015 · 4 comments
Closed

Prevent extra-deps / packages from overriding GHCJS boot packages #1486

mgsloan opened this issue Dec 10, 2015 · 4 comments

Comments

@mgsloan
Copy link
Contributor

mgsloan commented Dec 10, 2015

Related to ghcjs/ghcjs#434

@tolysz
Copy link
Collaborator

tolysz commented Dec 10, 2015

My solution would be to:
redo ghcjs-boot with the extra packages set if they are used in the boot; then filter them from the extra section in stack.yaml
Still looking hard how to boot ghcjs purely on the packages from stackage (+ patches);

For sure we might need some extra resolver just for booting ghcjs-boot-lts-3.17.yaml
So we can keep sane collections of bootable set.

This will require splitting the setup phase into 2 sections:

  1. install ghcjs
  2. boot it with a suitable -B directory.

@mgsloan
Copy link
Contributor Author

mgsloan commented Dec 12, 2015

@tolysz Thanks for the input. I should have made the issue clearer.

The idea is to detect the circumstance where something bad will happen due to using an unpatched ghcjs package, and error out in this case. It might need to be just a noisy warning when it's a local package, though, as the user might have a patched version in that case.

@mgsloan
Copy link
Contributor Author

mgsloan commented Dec 14, 2015

Here's how I think this should work:

  • Ensure that the patched packages (+ deps) come from the global DB. This is the list from this closed PR. Throw errors if they're found in other DBs.
  • Throw errors if the user attempts to override these packages with hackage versions. Perhaps warn when they attempt to override some other way (local package, git repo)?
  • Allow any boot package to differ from the version specified by the snapshot. This means that you can use the booted ghcjs-base without having it in your packages list.

I haven't fully thought out the ramifications of this change. In particular, the case of installing a custom ghcjs-base and updating the other deps seems tricky. Should be workable one way or another, though.

@snoyberg
Copy link
Contributor

snoyberg commented Feb 4, 2020

The next version of Stack will no longer have GHCJS support, closing.

@snoyberg snoyberg closed this as completed Feb 4, 2020
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

3 participants