{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreib3mwjoi6cr663v27vpzhouyqwh4gzdtaq4hbqccpatqjcamqipcm",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mojcqk3rvv42"
},
"path": "/t/ann-hpack-dhall-with-cabal-commands/14282#post_1",
"publishedAt": "2026-06-17T15:06:20.000Z",
"site": "https://discourse.haskell.org",
"tags": [
"hpack-dhall-0.6.0",
"Hpack⩓Dhall",
"external commands"
],
"textContent": "I’m made a new release of Hpack-Dhall, hpack-dhall-0.6.0. Hpack-Dhall is like Hpack but with the “functions + types + imports” of Dhall. There’s a new user guide at Hpack⩓Dhall and this release adds `cabal ypack` and `cabal dpack` Cabal external commands.\n\nStack has Hpack builtin. If any of a project’s `.cabal` files don’t exist or are out of date for any `package.yaml` file then Stack will arrange with Hpack to generate the package description in `.cabal` format before proceeding with the build or other command that requires a `.cabal` file for a package.\n\nA little more explicit but just as capable is `cabal ypack`. This will create `.cabal` files for any `package.yaml` files in the project tree. This is a low effort way to have Hpack in your Cabal project without needing Stack there too or something like a Makefile or Shake rule.\n\nMy favorite new command is `cabal dpack` that will create a `.cabal` file for any `package.dhall` file in the project tree.",
"title": "[ANN] Hpack-Dhall with Cabal commands"
}