The GHC project and GHCup are now closer than they were in the past to being able to produce conveniently-installable nightlies of GHC. As this comes closer to being a reality, I’d like to reach out a bit to the community to find out what uses of nightlies will bring the most value so that we can make sure that the final design supports as many peoples’ and companies’ needs as possible.
First, a few things that aren’t on the table for the very first iteration of this practice:
- Nightly releases of tools that aren’t part of a standard GHC bindist, like HLS, will not be included
- Initially, nightly builds will lack profiling libraries and a few other useful things
- Other important tools, like
stack
andcabal
, may or may not support the nightly releases - Nightlies are not initially guaranteed for all architectures and OSes every night
Some of these things may be able to happen in the not-so-far future, but it seems better to build on what’s already available rather than block until everything is perfect.
Here are a few different use cases that I can imagine for nightly builds:
- Convenient setup of CI that tests against the nightly and head.hackage
- Companies can test specific nightlies to help the GHC team assess the impact of compiler changes on large code bases that are not open-source, but are nonetheless important
- Users who are eagerly awaiting new features can easily test them and provide feedback before they appear in a release
- Maintainers of libraries can more easily follow GHC development, hopefully reducing the lag time between a compiler release and widespread adoption
My question for you is the following: how could you use nightlies of GHC to improve your Haskell experience?
I say “you” because I think that answers grounded in someone’s real experience are a more useful source of requirements than answers based on a theoretical other person, so please answer based on yourself, your company, your open-source project, or your research group. And I’m specifically asking about use cases here because I want to avoid intermingling a design discussion with requirements gathering. That step will come.
Based on your feedback, I’ll put together a summary and overview for the various tool developers who will need to coordinate for nightly builds to become more convenient to use.
Thank you for your input! If you’d like to share it confidentially, please feel free to email me at david@haskell.foundation.