ndmitchell / hoogle

Haskell API search engine
http://hoogle.haskell.org/
Other
738 stars 134 forks source link

some hackage packages missing from hoogle.haskell.org #243

Open simonmichael opened 6 years ago

simonmichael commented 6 years ago

I usually find the package I want at hoogle.haskell.org, but eg propellor is missing.

ndmitchell commented 6 years ago

The package name itself is in there, but the internals of it are not searched since propellor isn't in Stackage. You can see that if you go to http://hoogle.haskell.org/?hoogle=propellor.

The reason for excluding packages not in Stackage is 95% of all packages anyone uses are in Stackage and it improves the quality of the results by having fewer packages in the set.

theGhostJW commented 5 years ago

Would it be possible to default to set:stackage but have an option of set:hackageAll?

There are useful packages like propeller that are not on Stackage.

ndmitchell commented 5 years ago

If people have one example of a useful package not on Stackage, I suggest that is more easily solved by adding propellor to stackage 😉 . It isn't hard, and it means your package is checked that it compiles in lots of useful ways every day. Lots of companies (at least 3 I have worked at) use Stackage by default, so it's definitely worth the while for useful packages.

The reason I don't want to add all packages is because the cost to build Hoogle databases is proportional to the number of packages. It currently takes about 10 minutes to do so, which is quite a bit more than I'd like. It also uses about all the memory the slave doing it has, so I don't have much headroom. Stackage is a very good low pass filter on useful packages.