{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiaclkfcvzjzvx62lxx25w6ojrqmnxtwj5erlirturqluhvr6lw6ku",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mmeefdext4m2"
},
"path": "/t/pre-hftp-modernising-hackage-server-community-project-proposal/14142#post_1",
"publishedAt": "2026-05-21T09:50:17.000Z",
"site": "https://discourse.haskell.org",
"tags": [
"Migrating away from acid-state · Issue #1486 · haskell/hackage-server · GitHub",
"Propose modernising hackage-server project by qnikst · Pull Request #67 · haskellfoundation/tech-proposals · GitHub",
"tech-proposals/proposals/0000-modernising-hackage-server.md at tweag/proposal-modernising-hackage-server · tweag/tech-proposals · GitHub"
],
"textContent": "Over the last month at Tweag, we have been working on modernizing `hackage-server` in particular moving from the acid-state use to the relational database, see Migrating away from acid-state · Issue #1486 · haskell/hackage-server · GitHub .\n\nAs we dug deeper into the project, we realized that doing this properly requires significantly more effort than initially expected, and would involve a fairly large rewrite.\n\nAs a result of that research, we have prepared a community proposal for modernizing `hackage-server`. The proposal includes the rationale, the proposed architecture, and a migration plan that would allow an iterative, zero-downtime, controllable migration to the new architecture, without requiring disruptive changes to the existing codebase.\n\nWe would be very happy to hear feedback, concerns, and suggestions from the community.\n\nLink to a proposal: Propose modernising hackage-server project by qnikst · Pull Request #67 · haskellfoundation/tech-proposals · GitHub\nRendered version is available at tech-proposals/proposals/0000-modernising-hackage-server.md at tweag/proposal-modernising-hackage-server · tweag/tech-proposals · GitHub",
"title": "Pre-HFTP: Modernising hackage-server Community Project proposal"
}