haskell / hackage-server

Hackage-Server: A Haskell Package Repository
http://hackage.haskell.org
Other
414 stars 198 forks source link

Request thread for libs on Hackage Docbuilder #730

Open chrisdone opened 6 years ago

chrisdone commented 6 years ago

I have a build error

screenshot 2018-03-24 10 04 16

for haddock docs on a package. That links to here:

screenshot 2018-03-24 10 04 53

I know how to fix the build (install freetds-dev on Linux), but on the web site, it doesn't say how if ever that will be rectified, who to contact, if anyone, etc. The homepage has a reporting problems section:

screenshot 2018-03-24 10 06 09

But it's not clear to me whether I should report it to GitHub or send an email or do nothing.

In the meantime, I can upload my own docs, which I know because I've learned that from being around the community, and at the bottom of "Uploads" there's a sample bash script:

screenshot 2018-03-24 10 12 28

There is a Stack script here too.

I feel like this whole process could be a bit smoother. I can open a PR for "what to do next" if someone can tell me what the flow should be. 👍

gbaz commented 6 years ago

This is the relevant ticket that captures that we don't have a good process for adding libs to the docbuilder box: https://github.com/haskell/hackage-server/issues/595

An issue is we obviously can't install all libs someone would need to link against. So we need some criteria. Perhaps "can be installed with a single apt-get on ubuntu"?

Maybe a rolling issue on the tracker that the frontpage linked to would be appropriate? Or from the build-reports page itself, which would be less noisy. (We could also link to manual doc upload instructions there I guess?).

(in the meantime, I added freetds-dev to the box, but since the docs were already uploaded, the package won't build again until the next release).

stevana commented 5 years ago

I got a similar problem and I found the info in this ticket useful, so I'll include my details here rather than opening a new ticket (hope that's ok).

When trying to build the docs for quickcheck-state-machine the logs on Hackage say:

Failed to install pretty-show-1.9.5
Build log ( /home/builder/.cabal/logs/ghc-8.6.3/pretty-show-1.9.5-4s9IVBWSe01IF3L4DDRCg8.log ):
cabal: Entering directory '/tmp/cabal-tmp-26645/pretty-show-1.9.5'
Configuring pretty-show-1.9.5...
cabal: The program 'happy' is required but it could not be found.

I guess apt-get installing happy on the docbuilder box would solve this?

hvr commented 5 years ago

@stevana that might be indeed a reasonable short-term workaround; but the actual problem is that the doc-builder currently still uses v1-build which isn't capable of auto-install build-tool dependencies such as happy (unlike matrix.hackage.haskell.org which uses v2-build and doesn't suffer from this issue).

Oh btw, please take a look at https://matrix.hackage.haskell.org/package/quickcheck-state-machine as it appears like quickcheck-state-machine has inaccurate version bounds which would benefit alot from being made more accurate via metadata revisions.

stevana commented 5 years ago

@hvr So the solution here is to manually upload the docs and wait for doc-builder to use v2-build?

gbaz commented 5 years ago

For now I've added happy and alex to the new buildbox. This thread reminds me that there are probably other libs we added to the old buildbox that are no longer available either.

stevana commented 5 years ago

@gbaz Thanks! How can I rerun the build though? I tried to queue a build via matrix.hackage using my Hackage credentials but it didn't work.

gbaz commented 5 years ago

I cleared it from the failed queue so it should try to run again. We'll see how it goes.

stevana commented 5 years ago

Thank you, that worked!

svenpanne commented 5 years ago

I am not sure if this ticket is the right place, neither Hackage's home page nor #595 gives me a hint where to put this request: A few of my packages need additional libraries installed, otherwise doc building fails, see e.g. http://hackage.haskell.org/package/OpenGLRaw. Note that this used to work, but somehow it doesn't nowadays (uninstalled libraries? cabal changes?). What's missing:

gbaz commented 5 years ago

@svenpanne We deployed a new docbuilder box so it doesn't have all the system libs it used to. Just installed the requested libs and cleared the failed status for that package, so it should rebuild.

(also changed the title of the thread so it can be a running request thread for libs for now)

bgamari commented 4 years ago

For what it's worth I have tried to refine the procedure for requesting native libraries on the documentation builder. See https://github.com/haskell-infra/hackage-doc-builder-config for details. We should try to link to this repository from Hackage somewhere.

gbaz commented 3 years ago

Adding an enhancement/help-wanted for linking to that config repo somewhere useful by making a pr to the central-server (deployed/production) branch.