Latest Hackage Deployment

Posted on March 20, 2018 by Herbert Valerio Riedel

Hackage Redesign

As many of you may have noticed, there was a change in Hackage’s appearance on Monday.

This is a first result of the design work being done by Nuno Alexandre which is intended to give Haskell a consistent, friendly and welcoming look as he explains in his Redesigning Haskell docs blogpost. Note that this is still ongoing work so the current state is not final (most notably, the new Haddock stylesheets haven’t been deployed yet); and we require your feedback and suggestions to guide further evolution!

If you want to provide feedback and suggestions, you can do so in Hackage’s issue tracker.

Upgrade to Cabal 2.2

This deployment adds support Cabal 2.2 which means that effective immediately it’s finally possible to upload packages conforming to the cabal-version: 2.2 cabal format version.

Noteworthy new features enabled by cabal-version: 2.2 are:

See Cabal’s changelog for a full list of changes.

Uncurated Hackage Layer

This deployment also implements the first and second phases of the Uncurated Hackage Layer proposal by adding support for the new x-curation: field. Quoting the relevant section of the Hackage Upload Documentation:

Package uploaders may choose to exclude individual package uploads from curation, by setting the x-curation: field of the package’s .cabal file to uncurated. Packages which are uncurated have no expectations on them regarding versioning policy. Trustees or maintainers may adopt uncurated packages into the curated layer through metadata revisions. Metadata revisions must not set the value of the x-curation field to any variant of uncurated.

Two variants of the uncurated property are supported:

  • First, uncurated-no-trustee-contact, which indicates that maintainers do not wish to be contacted by trustees regarding any metadata issues with the package. (Contact may still occur over issues that are not related to curation, such as licensing, etc.).

  • Second, uncurated-seeking-adoption, which indicates that maintainers would like their package to be adopted in the curated layer, but currently some issue prevents this, which they would like assistance with.

Other Improvements

Other noteworthy improvemnts in this deployment include: