{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidlhkprmv2azl4wfly4swdsv6aiv7ig5gydm4q3mr5nwdxkrl7nna",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3miixzifdera2"
},
"path": "/t/ghc-9-12-4-is-now-available/13852#post_18",
"publishedAt": "2026-04-02T04:55:06.000Z",
"site": "https://discourse.haskell.org",
"tags": [
"https://www.haskell.org/ghcup/guide/#maintaining-a-3rd-party-channel"
],
"textContent": "andreasabel:\n\n> My request was to the GHC team to wait with the big announcement until GHCup ships it\n\nI’m not interested to be involved in a 0-day delay and then have to answer to the GHC release manager why I’m not available for an entire week.\n\nGHC developers are free to host their own metadata, but my hunch is that it’s going to be a disaster:\n\n * my estimate over the last years was that roughly 20% of the PRs to the metadata could be merged as-is, the rest needed intervention\n * the format is underspecified and the differences between the formats even less so\n * there are intricacies to the whole thing that go beyond the format itself, some of which are documented here: https://www.haskell.org/ghcup/guide/#maintaining-a-3rd-party-channel (confusing GHCup with incorrect tags, download cache collisions, etc.)\n\n\n\nThe fact that contributing is hard has many reasons and yes, you could say it’s partly my fault too.\n\nSure, I can invest more time into creating a yaml spec, versioning it, documenting the differences, ensuring I never break format backwards compatibility (which is the case), maybe add support for the more expressive Dhall config language, implement revisions, etc.\n\nBut in the end you also have to understand what you’re doing. Distribution and packaging is boring work, where small mistakes can be unrecoverable to the point that you have to reinstall the whole shebang. You can’t always treat it as “fix as you go” as I’ve read on multiple occasions now. It requires a careful attitude.\n\nGiven that I’m currently rewriting large parts of GHCup to be able to ship _arbitrary_ bindists/binaries, I’ll have to invest more time into making the format more robust anyway, add bubblewrap support for untrusted Makefiles and document how to maintain a channel properly.\n\nSo maybe this is the way to go. Users who can’t wait a single day will have to use upstream metadata.",
"title": "GHC 9.12.4 is now available"
}