New Hackage Server Features

Updating to announce a whole bunch of new features in the latest redeploy, with a few yet to come. This release includes a bunch of work from GSoC students, as well as a few other big-ticket items, and some various small fixes.

The biggest highlight is reverse-dependencies, which are finally here after years of attempts. Janus Troelsen re-thought the problem space to make an order-of-magnitude improvement in memory footprint, which means that we can finally provide this much requested feature.

A fun and noticeable change is that hackage now has a “night mode” color scheme enabled when your browser is set to request it. Thanks to Peter Becich for that!

Also included is a ton of GSoC work from Alias Qli and Ondřej Kubánek (though the latter’s work on a “hackage-rank” feature has not yet been merged). Notably, hackage now has an improved user account management page (reach it from User accounts | Hackage). You can now self-update your name and email address, and even more excitingly, opt into notification emails. You can now request notification when a maintainer is added to a package you maintain, a metadata revision is performed, a tag is proposed to be added, or when a docbuilder run finishes. For now, you’ll need to opt-in explicitly, since its not clear if existing hackage users will want to start getting a bunch of new emails all of a sudden.

Along with smaller bugfixes, and the usual dependency bumps and CI fixes (thanks Andreas Abel and Peter for all your help on that!) here are some other changes of note:

  • improvements to the sitemap to help guide google search (and searchbox metadata)
  • improvements to rendering of markdown
  • allows syntax from cabal 3.8
  • maintainers can disable tests being run by the docbuilder
  • display logs for docbuilder-run tests
  • Updates to accepted licenses (allowed both from osi and fsf lists)
  • better warnings on deprecated versions
  • maintainers listed on package pages
  • captcha for user registration (should reduce spam registrations we get hammered with)
  • remove filtering 00-index for cabal version < 2.0 hack (not a big deal, but makes some weird corner cases less weird)
  • Add lastVersion in browse listings
  • quickjump now works on candidate pages
  • paging enabled for recent uploads and revision pages

Other various contributors to this release are Hécate Moonlight, Matthew Pickering, bodigrim, Gautier Di Folco, and Levi Butcher

37 Likes