Skip to content

A community-driven collection of documentation for Haskell error messages and warnings

Notifications You must be signed in to change notification settings

haskellfoundation/error-message-index

Repository files navigation

The Haskell Message Index

.github/workflows/deploy.yml

View the site → https://errors.haskell.org/

Haskell tooling emits a variety of errors, warnings, and other messages. In recent versions, some of these tools emit a unique code for each message that allows it to be identified. This site allows these codes to be looked up, providing examples, context, and further information that can make them easier to understand.

Supported Tools

Today, the Haskell Message Index supports three tools. Any user-facing Haskell-related programming tools are welcome to join the effort!

Tool Earliest supported version Namespace Link to subpage
GHC 9.6.1 GHC- /ghc
Stack 2.9.3 S- /stack
GHCup 0.1.19.0 GHCup- /ghcup
Cabal 3.12 Cabal- /cabal

Setup

This site is built with Haskell using the static-site generator Hakyll.

'Normal' Install

To run the site locally, you need to 0. install Haskell & Cabal:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
  1. Clone the Repo
git clone https://github.com/haskellfoundation/error-message-index.git
  1. Run it
cd error-message-index    # yes, 
cd message-index          # both of those are needed
cabal update
cabal run -- site watch   # Starts a web server on http://localhost:8000

with Nix

To run the site with Nix, you need to have Nix installed. You can install it via the Determinate Systems installer:

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
  1. Clone the Repo
git clone https://github.com/haskellfoundation/error-message-index.git
  1. Run it
cd error-message-index    # yes, 
cd message-index          # both of those are needed
nix develop
cabal run -- site watch   # Starts a web server on http://localhost:8000

For more on the Nix flake, have a look here.

And now, since you're up and running, you can start contributing! :)

Contributing to the Message Index

Contributions may come in the form of changes to the code base, as well as opening or commenting on issues and pull requests. You are warmly invited to participate!

Please see CONTRIBUTING.md for instructions on improving the site. Thanks!

If you're a Haskell tool developer who would like to integrate your project with the site, please refer to tool-developers.md for recommendations regarding the error codes themselves.

Maintenance

The Message Index is a project of the Haskell Foundation, maintained on a volunteer basis by David Binder (@BinderDavid). Please get in touch if you have ideas, requests, or any other feedback!