hackage-server
hackage-server copied to clipboard
PackageRank
This PR is for implementing #986 as an GSoC project. Mentored by @gbaz .
I will correct the error I made in the change.
@ysangkok
Thank you for the comments
In my last two commits I fixed all the partial functions in PackageRank.
The partial function in PackageList is in my opinion better left as is since it was that way even before my changes and on line 256 using NonEmpty would lead to Maybe PackageIndex. Which is not something that is wanted?
At this moment PackageRank should be structure-wise complete. Some parameters will need to be adjusted and there may be some bugs.
Caching some data (ex. freshness for dependencies would require parsing all their PkgInfo (not included)) is missing.
UI is a bit arbitrary so that might also change.

UI at the moment @ysangkok
What's blocking us from having this merged? Looks like a great feature to have.
The indirect dependencies feature was merged and it would be nice to use it here, adding a cache for the package values would be good and the parameters are somewhat arbitrary at the moment.
I plan to get this into mergeable state in June.