[Haskell-cafe] Re: Reverse dependencies in Hackage

Roel van Dijk vandijk.roel at gmail.com
Wed Oct 14 09:59:32 EDT 2009

On Wed, Oct 14, 2009 at 3:24 PM, haskell at kudling.de <haskell at kudling.de> wrote:
> Nice, thank you for the great work.
> Browsing the reverse dependencies of popular packages like "bytestring"
> http://bifunctor.homelinux.net/~roel/cgi-bin/hackage-scripts/revdeps/bytestring-
> can be improved a bit.
You should try "base" ;-)

> 1) Can you please sort the reverse dependent package names? That makes it
> easier to find packages with certain names.
> 2) I found the columns "Direct" and "Indirect" confusing until i found out
> that they show the number of reverse dependencies for those packages
> themselves and are not related to direct/indirect dependencies of the
> current package. I don't think it is necessary to provide those data here
> and i would be in favor of reducing the information overload by leaving
> those data to each package detail page.

I'll respond to 1 and 2 since they are related. Right now the packages
are sorted by their "total" reverse-dependency count. The idea is that
this gives an idea of the relative "importance" of a package (in the
closed system of the hackage packet database). However, sorting by
name makes just as much sense.

Sorting by reverse-dependency count is useful if you want to know
which are the most important reverse dependencies.
Sorting by name is useful if you want to find out if a specific
package is a reverse dependency.

Ideally I would like to support both. Maybe a bit of JavaScript could
be used to sort the table client-side.
Something like this: http://www.kryogenix.org/code/browser/sorttable/

> 3) Can you try to print the reverse packages horizontally instead of
> vertically in tables? Browsing two long tables of direct/indirect reverse
> dpependencies like for "bytestring" makes it tedious to get an overview.

That would make sense if I wouldn't also show the reverse-dependencies
of the reverse-dependencies. But I still think that information is

Another option would be to have the two tables side-by-side. But that
might be a bit to much for a modestly sized monitor. Again, I wonder
what could be achieved with a little JavaScript in this area.

Thank you for the constructive criticism,

More information about the Haskell-Cafe mailing list