{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreibgnpn4lczby3tm27jpylzafzins2gty7wynbu3jcd375zc3wz3my",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mnubttbu5hn2"
},
"path": "/t/2026-06-09-informal-ghc-release-status-update-of-a-sort/14250#post_1",
"publishedAt": "2026-06-09T11:32:27.000Z",
"site": "https://discourse.haskell.org",
"tags": [
"“blackholing”",
"long standing bug",
"!14734",
"!14963 -\nrts: fix eager black holes: record mutated closure and fix assertion",
"!15640 - Fixes for black holes (#26936, #26922)",
"process",
"doesn’t segfault",
"reach out"
],
"textContent": "Hello Community!\n\nAt ZuriHac I was encouraged to reach out more about what is going with GHC Releases.\nSo this is a short and somewhat informal update about the status of various releases.\n\n# Branches, branches everywhere\n\nCurrently we have five active branches which are far too many for the number of maintainers available. These branches are: master, 10.0, 9.14, 9.12, 9.10\n\nFor this reason the upcoming 9.12/9.10 release are planned to be the last ones in order to trim the number of active branches to something more manageable.\n\n# Support windows and you\n\nAs we have previously announced the 9.14 branch is an LTS branch and we are commited to maintaining it for a good while.\nThe plan is to support 9.14 at least until early 2028, but hopefully much longer depending on resources available!\n\n10.0 - We don’t expect to maintain the 10.0 branch for very long as 9.14 is intended to service users primarily looking for stability.\nWe plan to fix any big issues found after release as usual, but currently plan to drop 10.0 for 10.2 “relatively” quickly.\nIn concrete terms I expect a support window of at most a year for 10.0.\n\n# Upcoming releases\n\nCurrently 9.14.2, 9.12.5, 10.0.1 and 9.10.4 are in the works, yes in parallel.\n\nOut of these 10.0.1, 9.14.2 and 9.12.5 are all blocked on the same issue. Which brings me to:\n\n## Release blockers\n\nYou might have seen me say things like “The 9.14.2 release candidate should be out soon” or “we expect to announce the rc for 10.0.1 soon” and were wondering “well where is it?”.\n\nThe reason for the lack of progress there is primarily two major issues that surfaced during the release processes that seemed worth holding back releases for. After all every release requires a lot of work from distributors which we do not want to squander for a bad release if we can avoid it. Those blockers were\n\n### RTS Black hole bugs\n\nThe GHC Runtime allows multiple threads to try and evaluate a shared expression at the same time. This will either result in work duplication in the worst case, and in the best case the runtime will detect this through a feature called “blackholing” which will pause all but one thread until evaluation of the expression completes.\n\nAs one might expect this is highly parallel highly complex code touching on many parts of the RTS. And recently a long standing bug with eager black holing was found.\n\nThe road to fixing this started with !14734 which fixed a (rare) very long standing bug that could result in threads blocked on another threads evaluation never being woken up when eager blackholing was used.\nSadly this work surfaced/introduced other issues. Leading to: !14963 -\nrts: fix eager black holes: record mutated closure and fix assertion. Which sadly was not the end of the story yet. Finally in !15640 - Fixes for black holes (#26936, #26922) we are fairly confident that this chain of bugs was put to rest for good.\n\nThese bugs are not trivial to trigger, generally requiring contention on evaluation of shared thunks. So most users will not hit those. However once the new wave of point releases come out these fixes alone should be reason to upgrade. For unmaintained branches if you are using eager blackholing and suspect you might hit this bug you can try disabling eager blackholing or using more explicit concurrenccy control (STM, MVars) to avoid contention on thunk evaluation. If in doubt open a ticket!\n\nThe fix(es) have concluded only recently and we considered these a blocker for releases. Thanks to luite and everyone else who helped for putting a lot of effort into working through all this!\n\n### process\n\nColleagues of mine at Well-Typed recently discovered issues in process neccesitating changes to the library to ensure it doesn’t segfault in certain circumstances.\n\nThis is close to being fully sorted and I want to express thanks to Tom Ellis for being highly responsive during the work on this! He also expressed a desire for help with maintaining `process` so perhaps if you are interested in helping there reach out.\n\n* * *\n\nThis is of course not all that is going on, focusing just on the most impactful issues related to release status. But it might be helpful for people to see where the hold ups are and explain some of the mystery of “why has nothing happened yet”.",
"title": "2026-06-09: Informal GHC Release Status Update of a Sort"
}