Hackage shows non-public, internal libraries
This is wrong, please don't.
- https://hackage.haskell.org/package/puresat
- https://hackage.haskell.org/package/haskell-ci
- https://hackage.haskell.org/package/attoparsec
I second that and want to expand. There seems to be two problems currently.
-
If the
visibilitysetting is not specified for an internal library, the docs for it are rendered as if it's public. However the Cabal docs state that internal libraries areprivateby default. See "attoparsec" for example. -
If
visibilityis explicitly set toprivatethe docs don't get rendered, but the contents of the internal library still get listed at the landing page of the package. See "hasql" for example.
I believe that in both cases Hackage should just ignore the internal packages and neither list or generate docs for them.
This feature was introduced by @414owen in https://github.com/haskell/hackage-server/pull/1279 -- maybe they'd be open to a followup PR? Patches from others also welcome.
@gbaz Please see the PR with a fix: https://github.com/haskell/hackage-server/pull/1437
Fixed in #1437. Note that it hasn't been deployed to the public Hackage yet.