{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreib3mwjoi6cr663v27vpzhouyqwh4gzdtaq4hbqccpatqjcamqipcm",
    "uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3moimszqeylq2"
  },
  "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"
}