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

Automatic refreshing of GHC versions #5

Open
tomsmeding opened this issue Feb 1, 2023 · 2 comments
Open

Automatic refreshing of GHC versions #5

tomsmeding opened this issue Feb 1, 2023 · 2 comments
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@tomsmeding
Copy link
Collaborator

Currently the workers just make the host .ghcup directory available in the containers, meaning that it's up to the worker host administrator to install new GHC versions in ghcup whenever they get released. (Furthermore, said administrator should remember to install ubuntu-compatible ones, if the host OS is not ubuntu.)

It would be nice to have some sort of automatic installation of new GHCs, including cleanup of older minor versions. Perhaps this should also mean that the worker has its own separate .ghcup directory?

@tomsmeding tomsmeding added enhancement New feature or request help wanted Extra attention is needed good first issue Good for newcomers labels Feb 1, 2023
@tomsmeding
Copy link
Collaborator Author

It may also be nice to auto-refresh prerelease GHC versions using the ghcup functionality described here. However, two blockers for that:

  • Should make sure to get the right prereleases yaml file, seems the filename seems to be ghcup-version-tagged
  • Prereleases should be marked in the interface, and they shouldn't make the GHC version dropdown super wide

@tomsmeding
Copy link
Collaborator Author

Possible extension to this (suggested by @Kleidukos): have some spec (json?) that gives a list of ghc versions including a list of exposed packages and a freeze file for each, and have the playground automatically install/remove ghcup ghc versions according to that list, and build/remove template projects according to that list. Then we have a nice declarative system to manage ghc versions across workers, and we also avoid the problem of there being potentially different library versions across the workers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant