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 format version.cabal-version: 2.2
Noteworthy new features enabled by
are:cabal-version: 2.2
Stanzas for reducing duplication in package specifications.common
- New
defaulting which infersbuild-type:
forbuild-type:
/Simple
automatically.Custom
- New
keyword.elif
- The
field now supports SPDX license identifiers.license:
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
field. Quoting the relevant section of the Hackage Upload Documentation:x-curation:
Package uploaders may choose to exclude individual package uploads from curation, by setting the
field of the package’sx-curation:
.cabal
file to. 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.uncurated
Two variants of the uncurated property are supported:
First,
, 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.).uncurated-no-trustee-contact
- Second,
, 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.uncurated-seeking-adoption
Other Improvements
Other noteworthy improvemnts in this deployment include:
Serving of the unfiltered package browse table was optimized resulting in a signficant speedup.
Improve discoverability of user’s own account management page.