hackage-server icon indicating copy to clipboard operation
hackage-server copied to clipboard

Doc builder does not pick up `build-tool-depends`

Open andreasabel opened this issue 6 months ago • 10 comments
trafficstars

https://hackage.haskell.org/package/toml-parser-2.0.1.2/reports/2

Error: cabal: The program 'alex' version >=3.2 is required but it could not be found.

https://hackage.haskell.org/package/toml-parser-2.0.1.2/toml-parser.cabal

build-tool-depends: alex:alex >= 3.2,

andreasabel avatar May 04 '25 13:05 andreasabel

I'm running into the same issue with the installation of config-value. See: https://hackage.haskell.org/package/copilot-language-4.4/reports/2

Funny enough, the package config-value built just fine here: https://hackage.haskell.org/package/config-value-0.8.3/reports/

ivanperez-keera avatar May 09 '25 02:05 ivanperez-keera

This is a pandemic: https://hackage.haskell.org/package/genvalidity-hspec-1.0.0.4/reports/2

Error: cabal: The program 'happy' is required but it could not be found.

@gbaz: Did anything go wrong with the latest deployment?

andreasabel avatar May 09 '25 18:05 andreasabel

Could it be a fallout from the Big Migration? https://discourse.haskell.org/t/haskell-infrastructure-migration-update/11989/4

ulysses4ever avatar May 09 '25 19:05 ulysses4ever

There are also failures like this:

Configuring network-3.2.7.0...
Error: cabal: The package has a './configure' script. If you are on Windows,
This requires a Unix compatibility toolchain such as MinGW+MSYS or Cygwin. If
you are not on Windows, ensure that an 'sh' command is discoverable in your
path.

Failed to install network-3.2.7.0

Bodigrim avatar May 09 '25 20:05 Bodigrim

Thanks for all the reports. Indeed this is all migration fallout. @bgamari moved the builder to a new, nixified box. We made sure some core system libs were available to link against, but didn't make sure to also provide basic build tools such as alex and happy, and perhaps some other elementary things that a configure type script would accept. Investigating...

gbaz avatar May 09 '25 22:05 gbaz

@gbaz Could you also perhaps make bnfc available?

ivanperez-keera avatar May 09 '25 23:05 ivanperez-keera

@bgamari moved the builder to a new, nixified box.

That sounds like deployment could be a more automated process... Is the configuration that affects the doc builder hosted somewhere publicly? Maybe it could be part of this repo. Then more eyes could check that relevant tools and libraries are present, or folks could even submit PRs...

andreasabel avatar May 10 '25 07:05 andreasabel

@andreasabel, @ivanperez-keera: my recent work was precisely intended to make the deployment more reproducible; it can be found in https://github.com/haskell-infra/hackage-doc-builder-config. Feel free to open MRs.

bgamari avatar May 12 '25 17:05 bgamari

The doc builder's ignoring of build-tool-depends will be fixed by https://github.com/haskell/hackage-server/issues/1393.

bgamari avatar May 12 '25 17:05 bgamari

@ivanperez-keera wrote:

@gbaz Could you also perhaps make bnfc available?

  • https://github.com/haskell-infra/hackage-doc-builder-config/pull/14

andreasabel avatar May 13 '25 07:05 andreasabel