ghcup-hs/TODO.md

1.3 KiB

TODOs and Remarks

Now

  • print-system-reqs

  • set proper ghcup URL

Cleanups

  • avoid alternative for IO
  • don't use Excepts?

Maybe

  • maybe: changelog Show the changelog of a GHC release (online)

  • OS faking

  • sign the JSON? (Or check gpg keys?)

  • testing (especially distro detection -> unit tests)

  • hard cleanup command?

Later

  • static builds and host ghcup
  • do bootstrap-haskell with new ghcup
  • add support for RC/alpha/HEAD versions
  • check for updates on start
  • use plucky or oops instead of Excepts

Questions

  • how to figure out tools (currently not done, but when setting ghc symlinks, removes all previous tools before symlinking requested version to avoid stale tools that only exist for one version)
  • handling of SIGTERM and SIGUSR
  • installing musl on demand?
  • redo/rethink how tool tags works
  • mirror support
  • check for new version on start
  • tarball tags as well as version tags?
  • installing multiple versions in parallel?
  • how to version and extend the format of the downloads file? Compatibility?
  • how to propagate updates? Automatically? Might solve the versioning problem
  • interactive handling when distro doesn't exist and we know the tarball is incompatible?
  • ghcup-with wrapper to execute a command with a given ghc in PATH?
  • maybe add deprecation notice into JSON