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
Roadmap for GHC 9.6 LTS / GHC 9.8 nightly ? #7186
Comments
Personally, I'm torn about it. From my perspective
To summarize:
But that's just my perspective. Mainly thought from a user standpoint - what would be an improvement for our projects using stack. |
FWIW I feel like the ecosystem often has a bit of a catch-22 with updating nightly to a new version of the compiler. While there are some people updating packages as soon as bindists are released, I get the impression that most of the community waits for nightly to come out either because it signals stability of the compiler, because it alerts them to their package not building with the new compiler, or because they use stack and they need a resolver to test with. At the same time, quite understandably, stackage waits for the ecosystem to catch up a bit before updating nightly. I think the two of these interact to unnecessarily delay adoption of new compilers. |
This is exactly how I work. I have a nightly build of my own packages that checks them against the latest nightly snapshot. When any of these builds fail, I get a notification and I fix the broken package. I can't be the only one who checks their packages against the nightly snapshot. |
Indeed, moving |
For the last three LTS'es, the release happened at least 100 days after the next GHC:
GHC 9.8.1 was released on Oct 9. To continue the pattern Oct 9 + 100 days would be January 14, 2024. |
The old (written) policy was to make LTSs starting with .2 of the latest GHC (allowing it to stabilize a bit). The new unwritten policy seems to be make LTSs for the next-to-latest GHC. Maybe we need a new snapshot series, |
Okay, I think we have some different understanding/expectation what stackage snapshots should provide. Since I fear that the discussion here might be biased towards the needs/wishes of package maintainers, I would like to add some (maybe controversial) points:
The conclusions I draw from that can already be found in my previous #7186 (comment). Also: I'm not sure if Stackage should server as a trigger for a dependency update. While understanding that some package maintainers work (or prefer) this way, I also fear that this workflow could lead to some cascading changes and therefore lot of churn (e.g. I couldn't update my packages since dependencies aren't GHC 9.8 ready, so my packages get disabled and I have now no control or a good notification system when I could/should update) - and I think in summary this causes lot of work for people maintaining packages with large dependency lists (since their packages will likely get dropped on every new LTS) and the maintainers of the package-set - filling out a lot of issues, getting lot of PR's, etc. - so I think "readiness" of the ecosystem is crucial before switching to a new GHC-version with nightly (you see that we've lost lot of packages from 9.2 to 9.4 even after months). I also know that this need to happen at some point in time - and the complete ecosystem is never fully prepared, but it should be in a reasonable proportion. Maybe also a chance to advertise https://github.com/nomeata/haskell-bounds-bump-action. And please don't get me wrong, I'm sure we all have the best intentions but look at things from different perspectives 👀. |
I agree it is a balance, I would say we could/should probably release lts-22 by January at least. (Wearing my Fedora hat I might really wish for a release this month since that would allow shipping ghc-9.6 in Fedora 40.) |
We now have a LTS-22 |
Thanks to @bergmark we also have the initial new nightly-style workflow now for lts-haskell |
What would be the timeline to bump LTS to GHC 9.6 and nightly to GHC 9.8?
Do you want to await GHC 9.8.2? (But it does not have release plans yet, afaik.)
Currently, the GHC 9.4 LTS has still fewer packages than the 9.2 one, should that be addressed before closing 9.4?
(In this case, maybe maintainers should be alerted that the window for keeping their packages in LTS is closing...)
The text was updated successfully, but these errors were encountered: